public function get($key = null, $default = null)
    {
        if (!isset($this->env['yee.request.query_hash'])) {
            $output = array();
            if (function_exists('mb_parse_str') && !isset($this->env['yee.tests.ignore_multibyte'])) {
                mb_parse_str($this->env['QUERY_STRING'], $output);
            } else {
                parse_str($this->env['QUERY_STRING'], $output);
            }
            $this->env['yee.request.query_hash'] = Util::stripSlashesIfMagicQuotes($output);
        }
        if ($key) {
            if (isset($this->env['yee.request.query_hash'][$key])) {
                return $this->env['yee.request.query_hash'][$key];
            } else {
                return $default;
            }
        } else {
            return $this->env['yee.request.query_hash'];
        }
    }