public function reset()
    {
        // reset structure
        parent::reset();

        // reset errors
        $this->clearErrors();

        // reset behaviors
        $this->clearBehaviors();

        // init delegates
        $this->initDelegates();

        return $this;
    }