public function validateRequest($throw = false)
    {
        // Ensure that the actual token is generated and stored
        $this->getTrueToken();

        if (!$this->isValidatedRequest()) {
            return true;
        }

        if (!$this->validateRequestToken()) {
            if ($throw) {
                throw new InvalidCSRFTokenException('Invalid CSRF token');
            }

            $this->killScript();
        }

        return true;
    }