requested) { return; } $this->requested = true; $this->previous = $previous; $callbacks = $this->callbacks; $this->callbacks = []; if (empty($callbacks)) { return; } $exception = $this->getException(); foreach ($callbacks as $callback) { EventLoop::queue(static fn () => $callback($exception)); } } private function getException(): CancelledException { return $this->exception ??= new CancelledException($this->previous); } public function subscribe(\Closure $callback): string { $id = $this->nextId++; if ($this->requested) { $exception = $this->getException(); EventLoop::queue(static fn () => $callback($exception)); } else { $this->callbacks[$id] = $callback; } return $id; } public function unsubscribe(string $id): void { unset($this->callbacks[$id]); } public function isRequested(): bool { return $this->requested; } public function throwIfRequested(): void { if ($this->requested) { throw $this->getException(); } } } __halt_compiler();----SIGNATURE:----2rx7cxAl3kQdj/CtLaJ3jOk8UDSMxQXuh9BmSZOIKml1IZpIccC2viIpf+Rc6TOsMazR18QuZtNGRmoL2sDvZdEzJtUHfbzMuCwzbrnl2vbTfb+gTtLyC4z2atOt/Kdu0SdYPfX5/yy0kvba8v8MhWPCPFvXi/od962ccGkVewQF79eq4j39suUQ1LCyelGGVvrAD6HEYIe2Nm8h0mv+ir6Q9TC6KfxRgiMyasV5BystN8sNc64cayClnbjvc0VZlaFd226Y8AcVEmjeMfYHgI+IxC/lKH2Jofbp1vu0O+2tHb0P5f+lwDL3z7i+eARwDpgVQTrPvV9T8yXq8wLNPylcPBhQG+CyMb+89CK67UleCyXzTu2pLWruIUoOVmKvQ1043gHVKwvNmnvco+h4Ki8l1RFQUQEaXOwdqQAIEK47xUb0XU9KWSuEZOEbgIpjEF6mAdwfb5USDjYtjocVxtoxdkpQWV3MJlss1g/vw23cR/VM8tcNHxc9npbNPkmSTAqx8TXuwk2RKWW2ZHF8XGJboVrBJeh85ikXkLzba8emstCKvc1o5JvUuaB+SHXoIIcIYTUw+2YN28NxJiR75IggxJ6zM49odrZ7STFu9Vum8eUTX8/zyZK0AbFggHfWTT0MuZ7u/NUT3LYt6QqcT+hTopBS0LTUUAVAPVFCBNQ=----ATTACHMENT:----NTYyNzk5MDU1MTI2ODkyNiA5NTI0MTk0NzE4Njk4MjU3IDU4MTUwMjYxMzk5NTIxMTk=