public static function get(array $server): array
    {
        $params = [];
        if (isset($server['QUERY_STRING'])) {
            $query = ltrim($server['QUERY_STRING'], '?');
            foreach (explode('&', $query) as $pair) {
                if ($pair) {
                    list($name, $value) = self::normalize(
                        array_map('urldecode', explode('=', $pair, 2))
                    );
                    $params[$name][] = $value;
                }
            }
        }
        return $params ? array_map(function ($v) {
            return count($v) === 1 ? $v[0] : $v;
        }, $params) : $params;
    }