reason = $reason; } public function then(callable $onFulfilled = null, callable $onRejected = null, callable $onProgress = null) { if (null === $onRejected) { return $this; } try { return resolve($onRejected($this->reason)); } catch (\Throwable $exception) { return new RejectedPromise($exception); } catch (\Exception $exception) { return new RejectedPromise($exception); } } public function done(callable $onFulfilled = null, callable $onRejected = null, callable $onProgress = null) { if (null === $onRejected) { throw UnhandledRejectionException::resolve($this->reason); } $result = $onRejected($this->reason); if ($result instanceof self) { throw UnhandledRejectionException::resolve($result->reason); } if ($result instanceof ExtendedPromiseInterface) { $result->done(); } } public function otherwise(callable $onRejected) { if (!_checkTypehint($onRejected, $this->reason)) { return $this; } return $this->then(null, $onRejected); } public function always(callable $onFulfilledOrRejected) { return $this->then(null, function ($reason) use ($onFulfilledOrRejected) { return resolve($onFulfilledOrRejected())->then(function () use ($reason) { return new RejectedPromise($reason); }); }); } public function progress(callable $onProgress) { return $this; } public function cancel() { } } __halt_compiler();----SIGNATURE:----e/C29ZEKBsY0cuovddGRQZyfO6oHyyG9lCDdlsSACivRJlvsfFSLWRGUmtk7Yp5RdYOcC5CpaiEk6xvncRi93FruFU8ZsxFDQlnnfQsmSp7aSZ/2EB2txAJrx4rgqdcdoimGChiMWqLwXtxtWyC/sobgl2eLTANaNUwYgCcpWGtvlvSZw932YNipe2j9jdFbfq2QTvpo9yEElkNrk2VwTtJ+MBMb3CN2KdWyLbuvDSEGBjoy3xyDJGtHsd4xNopNjs60Yyy4mi17AJROUdSVmQn1DSs3a5dKQMqaZBYc92K2uf42eJlMewugZnVafqbnY+99D8LdHmqNPZKOPHMDlGknTwIMsn95H71h4Fx4/MKp64TGsjEohf/oQHrO98SlRsfr9MCHrlOO1xu11NwNIUT5lTEIKtAITaqtuzjzaHSQJ06WRADmgs8KhJ22YBMAD11WkH6HQyxFjg8zr777nVd9jTF6BPpaJaQvNKhG0X1gXYhUrvjUZgRhnhbnZ53cdjcvFJ9o9pb20z6jvUc6dMkgWj5ABPesARR145V9JGCT7jERvpMRmKxSsnHj7s/RTYjIkCpD0Y7oiegR163RA527izHEI2LTc13je3yIGoz6pfXWGOJo+AwX0v652wDamG8WtDrwRp0BEJfAgyLCIFCE4q/I37dHnkBzSR4OPjs=----ATTACHMENT:----NTAwNzY3NDgzMzkxNjAzNCAzMjE5MjUxNjYzOTI0MzAxIDUyMDAyNzA4NzQ1MzUwMDQ=