<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
2an                 @   s.   d dl Z e jdZdddZG dd dZdS )	    Nz[ \(\)<>@,;:\\"/\[\]\?=]   c             C   sX   |d k	rPt |dkrP|s"tj|rB|jddjdd}d| |f S d| |f S n| S d S )Nr   \z\\"z\"z%s="%s"z%s=%s)len	tspecialssearchreplace)ZparamvalueZquote r
   ,/opt/alt/python36/lib64/python3.6/headers.py_formatparam   s    r   c               @   s   e Zd Zd$ddZdd Zdd Zdd	 Zd
d Zdd Zdd Z	dd Z
d%ddZdd Zdd Zdd Zdd Zdd Zdd Zd d! Zd"d# ZdS )&HeadersNc             C   s.   |d k	r|ng }t |tk	r$td|| _d S )Nz+Headers must be a list of name/value tuples)typelist	TypeError_headers)selfZheadersr
   r
   r   __init__   s
    zHeaders.__init__c             C   s&   t |tkr|S tdjt|d S )Nz1Header names/values must be of type str (got {0}))r   strAssertionErrorformatrepr)r   r	   r
   r
   r   _convert_string_type)   s    zHeaders._convert_string_typec             C   s
   t | jS )N)r   r   )r   r
   r
   r   __len__0   s    zHeaders.__len__c             C   s&   | |= | j j| j|| j|f d S )N)r   appendr   )r   namevalr
   r
   r   __setitem__4   s    zHeaders.__setitem__c                s0   | j  j   fdd| jD | jd d < d S )Nc                s    g | ]}|d  j   kr|qS )r   )lower).0kv)r   r
   r   
<listcomp>@   s    z'Headers.__delitem__.<locals>.<listcomp>)r   r   r   )r   r   r
   )r   r   __delitem__:   s    zHeaders.__delitem__c             C   s
   | j |S )N)get)r   r   r
   r
   r   __getitem__B   s    	zHeaders.__getitem__c             C   s   | j |d k	S )N)r#   )r   r   r
   r
   r   __contains__M   s    zHeaders.__contains__c                s"   | j  j   fdd| jD S )Nc                s$   g | ]}|d  j   kr|d qS )r   r   )r   )r   r    )r   r
   r   r!   [   s    z#Headers.get_all.<locals>.<listcomp>)r   r   r   )r   r   r
   )r   r   get_allR   s    zHeaders.get_allc             C   s6   | j |j }x"| jD ]\}}|j |kr|S qW |S )N)r   r   r   )r   r   defaultkvr
   r
   r   r#   ^   s
    zHeaders.getc             C   s   dd | j D S )Nc             S   s   g | ]\}}|qS r
   r
   )r   r(   r)   r
   r
   r   r!   o   s    z Headers.keys.<locals>.<listcomp>)r   )r   r
   r
   r   keysg   s    zHeaders.keysc             C   s   dd | j D S )Nc             S   s   g | ]\}}|qS r
   r
   )r   r(   r)   r
   r
   r   r!   y   s    z"Headers.values.<locals>.<listcomp>)r   )r   r
   r
   r   valuesq   s    zHeaders.valuesc             C   s   | j d d  S )N)r   )r   r
   r
   r   items{   s    zHeaders.itemsc             C   s   d| j j| jf S )Nz%s(%r))	__class____name__r   )r   r
   r
   r   __repr__   s    zHeaders.__repr__c             C   s   dj dd | jD ddg S )Nz
c             S   s   g | ]}d | qS )z%s: %sr
   )r   r    r
   r
   r   r!      s    z#Headers.__str__.<locals>.<listcomp> )joinr   )r   r
   r
   r   __str__   s    zHeaders.__str__c             C   s   t | jdS )Nz
iso-8859-1)r   encode)r   r
   r
   r   	__bytes__   s    zHeaders.__bytes__c             C   s:   | j |}|d kr2| jj| j|| j|f |S |S d S )N)r#   r   r   r   )r   r   r	   resultr
   r
   r   
setdefault   s    
zHeaders.setdefaultc             K   s   g }|d k	r | j |}|j| x\|j D ]P\}}| j |}|d krX|j|jdd q*| j |}|jt|jdd| q*W | jj| j |dj|f d S )N_-z; )r   r   r,   r   r   r   r1   )r   _nameZ_valueZ_paramspartsr(   r)   r
   r
   r   
add_header   s    



zHeaders.add_header)N)N)r.   
__module____qualname__r   r   r   r   r"   r$   r%   r&   r#   r*   r+   r,   r/   r2   r4   r6   r;   r
   r
   r
   r   r      s"   


	


r   )Nr   )recompiler   r   r   r
   r
   r
   r   <module>
   s   

