protected function validate()
    {
        // Regenerate session if gone too long and reset timers
        if ((time() - $this->get('timer.start', null, 'session') > self::EXPIRE)) {
            session_regenerate_id(true);
            $this->setTimers(true);
        }

        // Destroy session if expired and start a new one
        if ((time() - $this->get('timer.last', null, 'session') > self::EXPIRE)) {
            $this->destroy();
            $this->start();
        }
    }