protected function dispatch(string $name, Event $event = null): Event
    {
        if (empty(self::$dispatchers[static::class])) {
            //We can bypass dispatcher creation
            return $event;
        }

        return static::getEventDispatcher()->dispatch($name, $event);
    }