public static function parseStatus($status)
    {
        Assertion::startsWith(
            $status,
            'HTTP/',
            "Invalid HTTP status '$status', expected format like: 'HTTP/1.1 200 OK'."
        );

        $part = explode(' ', $status, 3);

        return array(
            'http_version' => substr(strrchr($part[0], '/'), 1),
            'code' => $part[1],
            'message' => isset($part[2]) ? $part[2] : ''
        );
    }