public function unbindEvent($event = null)
    {
        // Multiple events
        if (is_array($event)) {
            foreach ($event as $_event) {
                $this->unbindEvent($_event);
            }

            return;
        }

        if ($event === null) {
            unset($this->emitterSingleEvents);
            unset($this->emitterEvents);
            unset($this->emitterEventSorted);

            return $this;
        }

        if (isset($this->emitterSingleEvents[$event]))
            unset($this->emitterSingleEvents[$event]);

        if (isset($this->emitterEvents[$event]))
            unset($this->emitterEvents[$event]);

        if (isset($this->emitterEventSorted[$event]))
            unset($this->emitterEventSorted[$event]);

        return $this;
    }