public function always(callable $onFulfilledOrRejected) { return $this->then(function ($value) use($onFulfilledOrRejected) { return Promise::doResolve($onFulfilledOrRejected())->then(function () use($value) { return $value; }); }); }