Ë
    F·j„¥  ã                  óÈ  — d dl mZ d dlZd dlZd dlZd dlZd dlZ	d dl
mZ d dlmZmZ ddlmZmZmZmZ ddlmZmZmZmZmZmZmZmZ ddlmZmZm Z m!Z!m"Z"m#Z#m$Z$ dd	l%m&Z& dd
l'm(Z( ddl)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4 ddl5m6Z6 ddl7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z= g d¢Z> G d„ dej~                  e@e@f   «      ZA G d„ d«      ZB G d„ d«      ZC G d„ dej~                  e@e@f   «      ZDy)é    )ÚannotationsN)ÚMapping)ÚCookieÚ	CookieJaré   )Ú
ByteStreamÚUnattachedStreamÚencode_requestÚencode_response)ÚSUPPORTED_DECODERSÚByteChunkerÚContentDecoderÚIdentityDecoderÚLineDecoderÚMultiDecoderÚTextChunkerÚTextDecoder)ÚCookieConflictÚHTTPStatusErrorÚRequestNotReadÚResponseNotReadÚStreamClosedÚStreamConsumedÚrequest_context)Ú(get_multipart_boundary_from_content_type)Úcodes)ÚAsyncByteStreamÚCookieTypesÚHeaderTypesÚQueryParamTypesÚRequestContentÚRequestDataÚRequestExtensionsÚRequestFilesÚResponseContentÚResponseExtensionsÚSyncByteStream)ÚURL)Úis_known_encodingÚnormalize_header_keyÚnormalize_header_valueÚobfuscate_sensitive_headersÚparse_content_type_charsetÚparse_header_links)ÚCookiesÚHeadersÚRequestÚResponsec                  óø   — e Zd ZdZ	 	 d	 	 	 	 	 dd„Zedd„«       Zej                  dd„«       Zedd„«       Zdd„Z	dd„Z
dd	„Zdd
„Zd d!d„Zd"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d„Zy)-r0   z9
    HTTP headers, as a case-insensitive multi-dict.
    Nc           
     óø  — |€g | _         || _        y t        |t        «      r"t        |j                   «      | _         || _        y t        |t        «      rU|j                  «       D ��cg c],  \  }}t        |d|¬«      t        |d|¬«      t        ||«      f‘Œ. c}}| _         || _        y |D ��cg c],  \  }}t        |d|¬«      t        |d|¬«      t        ||«      f‘Œ. c}}| _         || _        y c c}}w c c}}w )NF)ÚlowerÚencodingT)	Ú_listÚ
isinstancer0   Úlistr   Úitemsr*   r+   Ú	_encoding)ÚselfÚheadersr6   ÚkÚvs        ú[/var/www/html/ai-video-generator/backend/venv/lib/python3.12/site-packages/httpx/_models.pyÚ__init__zHeaders.__init__@   sø   € ð
 ˆ?ØˆDŒJð, "ˆ�ô+ ˜¤Ô)Ü˜gŸm™mÓ,ˆDŒJð( "ˆ�ô' ˜¤Ô)ð $ŸM™M›O÷ñ �A�qô	 )¨°%À(ÔKÜ(¨°$ÀÔJÜ*¨1¨hÓ7òóˆDŒJð$ "ˆ�ð $÷ñ �A�qô	 )¨°%À(ÔKÜ(¨°$ÀÔJÜ*¨1¨hÓ7òóˆDŒJð "ˆ�ùó%ùós   Á'1C0Â.1C6c                ó  — | j                   €XdD ]L  }| j                  D ](  \  }}	 |j                  |«       |j                  |«       Œ* || _          | j                   S  d| _         | j                   S # t        $ r Y  Œnw xY w)zn
        Header encoding is mandated as ascii, but we allow fallbacks to utf-8
        or iso-8859-1.
        )Úasciiúutf-8z
iso-8859-1)r;   ÚrawÚdecodeÚUnicodeDecodeError)r<   r6   ÚkeyÚvalues       r@   r6   zHeaders.encoding^   s�   € ð �>‰>Ð!Ø.ò .�Ø"&§(¡(ò 
‘J�C˜ðØŸ
™
 8Ô,ØŸ™ XÕ.ð
ð &.�D”NØð
 �~‰~Ðð!.ð ".�”Ø�~‰~Ðøô .ò Úðús   ¥"A1Á1	A>Á=A>c                ó   — || _         y ©N)r;   ©r<   rI   s     r@   r6   zHeaders.encodingw   s	   € àˆ�ó    c                óX   — | j                   D ���cg c]
  \  }}}||f‘Œ c}}}S c c}}}w )zH
        Returns a list of the raw header items, as byte pairs.
        )r7   )r<   Úraw_keyÚ_rI   s       r@   rE   zHeaders.raw{   s+   € ð
 ;?¿*¹*×EÐEÑ%6 W¨a°�˜%Ò ÔEÐEùÔEs   ‘%c                ó¤   — | j                   D ���ci c]"  \  }}}|j                  | j                  «      d “Œ$ c}}}j                  «       S c c}}}w rK   )r7   rF   r6   Úkeys©r<   rP   rH   rI   s       r@   rR   zHeaders.keys‚   s>   € ØEIÇZÁZ×PÐP±M°A°s¸E�—
‘
˜4Ÿ=™=Ó)¨4Ñ/ÔP×UÑUÓWÐWùÔPs   ‘'Ac                óð   — i }| j                   D ]V  \  }}}|j                  | j                  «      }|j                  | j                  «      }||v r||xx   d|› �z  cc<   ŒR|||<   ŒX |j                  «       S )Nú, )r7   rF   r6   Úvalues©r<   Úvalues_dictrP   rH   rI   Ústr_keyÚ	str_values          r@   rV   zHeaders.values…   s~   € Ø&(ˆØ!ŸZ™Zò 	1‰MˆAˆs�EØ—j‘j §¡Ó/ˆGØŸ™ T§]¡]Ó3ˆIØ˜+Ñ%Ø˜GÓ$¨"¨Y¨KÐ(8Ñ8Ô$à'0�˜GÒ$ð	1ð ×!Ñ!Ó#Ð#rM   c                óð   — i }| j                   D ]V  \  }}}|j                  | j                  «      }|j                  | j                  «      }||v r||xx   d|› �z  cc<   ŒR|||<   ŒX |j                  «       S )z›
        Return `(key, value)` items of headers. Concatenate headers
        into a single comma separated value when a key occurs multiple times.
        rU   )r7   rF   r6   r:   rW   s          r@   r:   zHeaders.items�   s€   € ð
 ')ˆØ!ŸZ™Zò 	1‰MˆAˆs�EØ—j‘j §¡Ó/ˆGØŸ™ T§]¡]Ó3ˆIØ˜+Ñ%Ø˜GÓ$¨"¨Y¨KÐ(8Ñ8Ô$à'0�˜GÒ$ð	1ð × Ñ Ó"Ð"rM   c           	     ó¼   — | j                   D ���cg c]<  \  }}}|j                  | j                  «      |j                  | j                  «      f‘Œ> c}}}S c c}}}w )z¹
        Return a list of `(key, value)` pairs of headers. Allow multiple
        occurrences of the same key without concatenating into a single
        comma separated value.
        )r7   rF   r6   rS   s       r@   Úmulti_itemszHeaders.multi_itemsŸ   sR   € ð "&§¡÷
ð 
á��3˜ð �Z‰Z˜Ÿ™Ó&¨¯©°T·]±]Ó(CÒDô
ð 	
ùô 
s   ‘AAc                ó0   — 	 | |   S # t         $ r |cY S w xY w)zˆ
        Return a header value. If multiple occurrences of the header occur
        then concatenate them together with commas.
        )ÚKeyError)r<   rH   Údefaults      r@   ÚgetzHeaders.getª   s%   € ð
	Ø˜‘9ÐøÜò 	ØŠNð	ús   ‚ ‡”c                óœ  — |j                  «       j                  | j                  «      }| j                  D ���cg c]4  \  }}}|j                  «       |k(  r|j	                  | j                  «      ‘Œ6 }}}}|s|S g }|D ]>  }	|j                  |	j                  d«      D �
cg c]  }
|
j                  «       ‘Œ c}
«       Œ@ |S c c}}}w c c}
w )zÆ
        Return a list of all header values for a given key.
        If `split_commas=True` is passed, then any comma separated header
        values are split into multiple return strings.
        ú,)r5   Úencoder6   r7   rF   ÚextendÚsplitÚstrip)r<   rH   Úsplit_commasÚget_header_keyrP   Úitem_keyÚ
item_valuerV   Úsplit_valuesrI   Úitems              r@   Úget_listzHeaders.get_list´   sÃ   € ð Ÿ™›×+Ñ+¨D¯M©MÓ:ˆð ,0¯:©:÷
ð 
á'��8˜ZØ�~‰~Ó >Ò1ð ×Ñ˜dŸm™mÕ,ð
ˆò 
ñ ØˆMàˆØò 	MˆEØ×Ñ¸%¿+¹+ÀcÓ:JÖ K°$ §¡¥Ò KÕLð	MàÐùô
ùò !Ls   º9CÂ C	
c                óº   — t        |«      }|j                  «       D ]  }|| v sŒ| j                  |«       Œ | j                  j	                  |j                  «       y rK   )r0   rR   Úpopr7   re   )r<   r=   rH   s      r@   ÚupdatezHeaders.updateÊ   sK   € Ü˜'Ó"ˆØ—<‘<“>ò 	ˆCØ�dŠ{Ø—‘˜•ð	ð 	�
‰
×Ñ˜'Ÿ-™-Õ(rM   c                ó0   — t        | | j                  ¬«      S )N©r6   )r0   r6   ©r<   s    r@   ÚcopyzHeaders.copyÑ   s   € Ü�t d§m¡mÔ4Ð4rM   c                ó  — |j                  «       j                  | j                  «      }| j                  D ���cg c]&  \  }}}||k(  r|j	                  | j                  «      ‘Œ( }}}}|rdj                  |«      S t        |«      ‚c c}}}w )zÎ
        Return a single header value.

        If there are multiple headers with the same key, then we concatenate
        them with commas. See: https://tools.ietf.org/html/rfc7230#section-3.2.2
        rU   )r5   rd   r6   r7   rF   Újoinr_   )r<   rH   Únormalized_keyrP   Ú
header_keyÚheader_valuer:   s          r@   Ú__getitem__zHeaders.__getitem__Ô   s†   € ð Ÿ™›×+Ñ+¨D¯M©MÓ:ˆð 04¯z©z÷
ð 
á+��:˜|Ø˜^Ò+ð ×Ñ §¡Õ.ð
ˆò 
ñ Ø—9‘9˜UÓ#Ð#ä�s‹mÐùô
s   º+Bc                óÂ  — |j                  | j                  xs d«      }|j                  | j                  xs d«      }|j                  «       }t        | j                  «      D ���cg c]  \  }\  }}}||k(  r|‘Œ }	}}}t        |	dd «      D ]  }| j                  |= Œ |	r|	d   }|||f| j                  |<   y| j                  j                  |||f«       yc c}}}w )zs
        Set the header `key` to `value`, removing any duplicate entries.
        Retains insertion order.
        rD   r   Nr   )rd   r;   r5   Ú	enumerater7   ÚreversedÚappend)
r<   rH   rI   Úset_keyÚ	set_valueÚ
lookup_keyÚidxrP   rj   Úfound_indexess
             r@   Ú__setitem__zHeaders.__setitem__è   sæ   € ð
 —*‘*˜TŸ^™^Ò6¨wÓ7ˆØ—L‘L §¡Ò!:°7Ó;ˆ	Ø—]‘]“_ˆ
ô *3°4·:±:Ó)>÷
ð 
á%�Ñ%�a˜ 1Ø˜:Ò%ò ð
ˆò 
ô ˜M¨!¨"Ð-Ó.ò 	 ˆCØ—
‘
˜3‘ð	 ñ Ø Ñ"ˆCØ&¨
°IÐ>ˆD�J‰J�sŠOà�J‰J×Ñ˜w¨
°IÐ>Õ?ùô
s   Á(Cc                ó8  — |j                  «       j                  | j                  «      }t        | j                  «      D ���cg c]  \  }\  }}}|j                  «       |k(  r|‘Œ  }}}}|st        |«      ‚t        |«      D ]  }| j                  |= Œ yc c}}}w )z*
        Remove the header `key`.
        N)r5   rd   r6   r}   r7   r_   r~   )r<   rH   Údel_keyrƒ   rP   rj   Úpop_indexess          r@   Ú__delitem__zHeaders.__delitem__   s˜   € ð —)‘)“+×$Ñ$ T§]¡]Ó3ˆô *3°4·:±:Ó)>÷
ð 
á%�Ñ%�a˜ 1Ø�~‰~Ó 7Ò*ò ð
ˆò 
ñ Ü˜3“-Ðä˜KÓ(ò 	 ˆCØ—
‘
˜3‘ñ	 ùô
s   Á#Bc                ó¤   — |j                  «       j                  | j                  «      }|| j                  D ��cg c]  \  }}}|‘Œ
 c}}v S c c}}w rK   )r5   rd   r6   r7   )r<   rH   ry   rP   s       r@   Ú__contains__zHeaders.__contains__  s?   € Ø—Y‘Y“[×'Ñ'¨¯©Ó6ˆ
Ø°4·:±:×>¡i a¨¨ašcÓ>Ð>Ð>ùÓ>s   ºAc                ó4   — t        | j                  «       «      S rK   )ÚiterrR   rt   s    r@   Ú__iter__zHeaders.__iter__  s   € Ü�D—I‘I“KÓ Ð rM   c                ó,   — t        | j                  «      S rK   )Úlenr7   rt   s    r@   Ú__len__zHeaders.__len__  s   € Ü�4—:‘:‹ÐrM   c                ó  — 	 t        |«      }| j                  D ���cg c]
  \  }}}||f‘Œ }}}}|j                  D ���cg c]
  \  }}}||f‘Œ }}}}t        |«      t        |«      k(  S # t        $ r Y yw xY wc c}}}w c c}}}w )NF)r0   Ú
ValueErrorr7   Úsorted)r<   ÚotherÚother_headersrP   rH   rI   Ú	self_listÚ
other_lists           r@   Ú__eq__zHeaders.__eq__  s�   € ð	Ü# E›NˆMð 8<·z±z×BÐB¡m a¨¨e�c˜5’\ÐBˆ	ÒBØ8E×8KÑ8K×LÐL¡} q¨#¨u�s˜E’lÐLˆ
ÒLÜ�iÓ ¤F¨:Ó$6Ñ6Ð6øô ò 	Ùð	üô CùÜLs   ‚A* �A9Á B Á*	A6Á5A6c                ó"  — | j                   j                  }d}| j                  dk7  rd| j                  ›�}t        t	        | j                  «       «      «      }t        |«      }t        |«      t        |«      k(  }|r
|› d|›|› d�S |› d|›|› d�S )NÚ rC   z, encoding=ú(ú))Ú	__class__Ú__name__r6   r9   r,   r]   Údictr�   )r<   Ú
class_nameÚencoding_strÚas_listÚas_dictÚno_duplicate_keyss         r@   Ú__repr__zHeaders.__repr__&  s™   € Ø—^‘^×,Ñ,ˆ
àˆØ�=‰=˜GÒ#Ø(¨¯©Ð(9Ð:ˆLäÔ2°4×3CÑ3CÓ3EÓFÓGˆÜ�w“-ˆä ›L¬C°«LÑ8ÐÙØ �\  7 +¨l¨^¸1Ð=Ð=Ø�˜Q˜w˜k¨,¨°qÐ9Ð9rM   ©NN)r=   úHeaderTypes | Noner6   ú
str | NoneÚreturnÚNone©rª   Ústr©rI   r­   rª   r«   )rª   zlist[tuple[bytes, bytes]])rª   ztyping.KeysView[str])rª   ztyping.ValuesView[str])rª   ztyping.ItemsView[str, str])rª   zlist[tuple[str, str]]rK   )rH   r­   r`   ú
typing.Anyrª   r¯   )F)rH   r­   rh   Úboolrª   z	list[str])r=   r¨   rª   r«   )rª   r0   )rH   r­   rª   r­   ©rH   r­   rI   r­   rª   r«   )rH   r­   rª   r«   )rH   r¯   rª   r°   )rª   ztyping.Iterator[typing.Any]©rª   Úint)r•   r¯   rª   r°   )rŸ   Ú
__module__Ú__qualname__Ú__doc__rA   Úpropertyr6   ÚsetterrE   rR   rV   r:   r]   ra   rn   rq   ru   r{   r…   r‰   r‹   rŽ   r‘   r™   r¦   © rM   r@   r0   r0   ;   sÄ   „ ñð '+Ø#ð"à#ð"ð ð"ð 
ó	"ð< òó ðð0 ‡_�_òó ðð òFó ðFóXó	$ó#ó	
ôôô,)ó5óó(@ó0 ó$?ó!óó7ô:rM   r0   c            
      óš   — e Zd Zddddddddddœ		 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„Zdd„Zedd„«       Zdd„Zdd„Zdd„Z	dd	„Z
dd
„Zy)r1   N)	Úparamsr=   ÚcookiesÚcontentÚdataÚfilesÚjsonÚstreamÚ
extensionsc       	        ó¤  — t        |t        «      r|j                  d«      j                  «       n|j                  «       | _        t        |«      | _        |�!| j                  j                  |¬«      | _        t        |«      | _	        |€i n|| _
        |rt        |«      j                  | «       |
€™| j                  j                  d«      }t        ||||	t        |r%|j!                  | j                  j"                  «      nd ¬«      ¬«      \  }}
| j%                  |«       |
| _        t        |
t(        «      r| j+                  «        y y |
| _        y )NrC   )r»   zcontent-type)Úcontent_type)r½   r¾   r¿   rÀ   Úboundary)r8   ÚbytesrF   ÚupperÚmethodr(   ÚurlÚcopy_merge_paramsr0   r=   rÂ   r/   Úset_cookie_headerra   r
   r   rd   r6   Ú_preparerÁ   r   Úread)r<   rÈ   rÉ   r»   r=   r¼   r½   r¾   r¿   rÀ   rÁ   rÂ   rÄ   s                r@   rA   zRequest.__init__7  s"  € ô" ˜&¤%Ô(ð �M‰M˜'Ó"×(Ñ(Ô*à—‘“ð 	Œô
 �s“8ˆŒØÐØ—x‘x×1Ñ1¸Ð1Ó@ˆDŒHÜ˜wÓ'ˆŒØ *Ð 2™"¸
ˆŒáÜ�GÓ×.Ñ.¨tÔ4àˆ>Ø'+§|¡|×'7Ñ'7¸Ó'GˆLÜ,ØØØØÜAá#ð ".×!4Ñ!4°T·\±\×5JÑ5JÔ!Kàôô
‰OˆG�Vð �M‰M˜'Ô"Ø ˆDŒKä˜&¤*Ô-Ø—	‘	•ð .ð" !ˆD�KrM   c                ó  — |j                  «       D ]C  \  }}|j                  «       dk(  rd| j                  v rŒ(| j                  j                  ||«       ŒE g }d| j                  v }d| j                  v xs d| j                  v }|s=| j                  j
                  r'|j                  d| j                  j                  f«       |s| j                  dv r|j                  d«       t        || j                  j                  z   «      | _        y )Nútransfer-encodingzContent-LengthÚHostzTransfer-Encodings   Host)ÚPOSTÚPUTÚPATCH)s   Content-Lengthó   0)r:   r5   r=   Ú
setdefaultrÉ   Úhostr   ÚnetlocrÈ   r0   rE   )r<   Údefault_headersrH   rI   Úauto_headersÚhas_hostÚhas_content_lengths          r@   rÌ   zRequest._preparew  sè   € Ø)×/Ñ/Ó1ò 	0‰JˆC�à�y‰y‹{Ð1Ò1Ð6FÈ$Ï,É,Ñ6VØØ�L‰L×#Ñ# C¨Õ/ð		0ð 35ˆà˜TŸ\™\Ð)ˆà §¡Ð,ÒSÐ0CÀtÇ|Á|Ð0Sð 	ñ ˜DŸH™HŸMšMØ×Ñ ¨$¯(©(¯/©/Ð :Ô;Ù! d§k¡kÐ5MÑ&MØ×ÑÐ 9Ô:ä˜|¨d¯l©l×.>Ñ.>Ñ>Ó?ˆ�rM   c                óF   — t        | d«      s
t        «       ‚| j                  S ©NÚ_content)Úhasattrr   rÞ   rt   s    r@   r½   zRequest.contentŒ  s   € ä�t˜ZÔ(Ü Ó"Ð"Ø�}‰}ÐrM   c                ó&  — t        | d«      szt        | j                  t        j                  «      sJ ‚dj                  | j                  «      | _        t        | j                  t        «      st        | j                  «      | _        | j                  S )ú6
        Read and return the request content.
        rÞ   rM   )rß   r8   rÁ   ÚtypingÚIterablerw   rÞ   r   rt   s    r@   rÍ   zRequest.read’  sd   € ô �t˜ZÔ(Ü˜dŸk™k¬6¯?©?Ô;Ð;Ð;ØŸH™H T§[¡[Ó1ˆDŒMÜ˜dŸk™k¬:Ô6ô )¨¯©Ó7�”Ø�}‰}ÐrM   c              ƒ  ój  K  — t        | d«      sMt        | j                  t        j                  «      sJ ‚dj                  | j                  2 �cg c3 d{  –—† }|‘Œ| j                  S 7 Œ6 nc c}w c}«      | _        t        | j                  t        «      rŒ<t        | j                  «      | _        ŒW­w)rá   rÞ   rM   N)rß   r8   rÁ   râ   ÚAsyncIterablerw   rÞ   r   ©r<   Úparts     r@   ÚareadzRequest.aread   s„   è ø€ ô �t˜ZÔ(Ü˜dŸk™k¬6×+?Ñ+?Ô@Ð@Ð@ØŸH™H¸T¿[¹[×%IÔ%I°T¢dð �}‰}Ðð &JøÑ%IùÔ%IÓJˆDŒMÜ˜dŸk™k¬:Õ6ô )¨¯©Ó7�”úsB   ‚AB3ÁA,ÁA*
ÁA(ÁA*
ÁA,ÁB3Á(A*
Á*A,Á+,B3ÂB3c                ó„   — | j                   j                  }t        | j                  «      }d|› d| j                  ›d|›d�S )Nú<rœ   rU   z)>)rž   rŸ   r­   rÉ   rÈ   )r<   r¡   rÉ   s      r@   r¦   zRequest.__repr__®  s=   € Ø—^‘^×,Ñ,ˆ
Ü�$—(‘(‹mˆØ�:�,˜a §¡˜¨b°°°rÐ:Ð:rM   c                ór   — | j                   j                  «       D ��ci c]  \  }}|dvr||“Œ c}}S c c}}w )N)rÂ   rÁ   ©Ú__dict__r:   ©r<   ÚnamerI   s      r@   Ú__getstate__zRequest.__getstate__³  sB   € ð  $Ÿ}™}×2Ñ2Ó4÷
á��eØÐ3Ñ3ð �%‰Kó
ð 	
ùó 
ó   ž3c                óz   — |j                  «       D ]  \  }}t        | ||«       Œ i | _        t        «       | _        y rK   )r:   ÚsetattrrÂ   r	   rÁ   ©r<   Ústaterï   rI   s       r@   Ú__setstate__zRequest.__setstate__º  s8   € Ø Ÿ;™;›=ò 	'‰KˆD�%Ü�D˜$ Õ&ð	'àˆŒÜ&Ó(ˆ�rM   )rÈ   zstr | bytesrÉ   z	URL | strr»   zQueryParamTypes | Noner=   r¨   r¼   úCookieTypes | Noner½   zRequestContent | Noner¾   zRequestData | Noner¿   zRequestFiles | NonerÀ   ztyping.Any | NonerÁ   ú'SyncByteStream | AsyncByteStream | NonerÂ   zRequestExtensions | Nonerª   r«   ©rØ   zdict[str, str]rª   r«   ©rª   rÆ   r¬   ©rª   údict[str, typing.Any]©rõ   rü   rª   r«   )rŸ   r´   rµ   rA   rÌ   r·   r½   rÍ   rè   r¦   rð   rö   r¹   rM   r@   r1   r1   6  sÎ   „ ð *.Ø&*Ø&*Ø)-Ø#'Ø%)Ø"&Ø:>Ø/3ñ>!àð>!ð ð>!ð
 'ð>!ð $ð>!ð $ð>!ð 'ð>!ð !ð>!ð #ð>!ð  ð>!ð 8ð>!ð -ð>!ð 
ó>!ó@@ð* òó ðó
óó;ó

ô)rM   r1   c                  óÞ  — e Zd Zdddddddddddœ
	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d.d„Zd/d„Zed0d„«       Zej                  d1d„«       Zed2d„«       Zej                  d3d	„«       Zed4d
„«       Z	ed4d„«       Z
ed5d„«       Zed6d„«       Zed4d„«       Zed7d„«       Zej                  d8d„«       Zed7d„«       Zd9d„Zed:d„«       Zed:d„«       Zed:d„«       Zed:d„«       Zed:d„«       Zed:d„«       Zed:d„«       Zd;d„Zd<d„Zed=d„«       Zed>d„«       Zed?d„«       Zd4d„Zd@d „ZdAd!„Zd6d"„Z dBdCd#„Z!dBdDd$„Z"dEd%„Z#dBdCd&„Z$dFd'„Z%d6d(„Z&	 dB	 	 	 dGd)„Z'	 dB	 	 	 dHd*„Z(dId+„Z)	 dB	 	 	 dGd,„Z*dFd-„Z+y)Jr2   NrD   )
r=   r½   ÚtextÚhtmlrÀ   rÁ   ÚrequestrÂ   ÚhistoryÚdefault_encodingc       
        óx  — || _         t        |«      | _        || _        d | _        |	€i n|	| _        |
€g n
t        |
«      | _        d| _        d| _	        || _
        |€Qt        ||||«      \  }}| j                  |«       || _        t        |t        «      r| j!                  «        d| _        y || _        d| _        y )NFr   )Ústatus_coder0   r=   Ú_requestÚnext_requestrÂ   r9   r  Ú	is_closedÚis_stream_consumedr  r   rÌ   rÁ   r8   r   rÍ   Ú_num_bytes_downloaded)r<   r  r=   r½   rÿ   r   rÀ   rÁ   r  rÂ   r  r  s               r@   rA   zResponse.__init__Â  s¹   € ð 'ˆÔÜ˜wÓ'ˆŒà(/ˆŒð -1ˆÔà4>Ð4F©bÈJˆŒØ$˜_‘r´$°w³-ˆŒàˆŒØ"'ˆÔà 0ˆÔàˆ>Ü-¨g°t¸TÀ4ÓH‰OˆG�VØ�M‰M˜'Ô"Ø ˆDŒKÜ˜&¤*Ô-à—	‘	”ð &'ˆÕ"ð !ˆDŒKà%&ˆÕ"rM   c                ó°   — |j                  «       D ]C  \  }}|j                  «       dk(  rd| j                  v rŒ(| j                  j                  ||«       ŒE y )NrÏ   zcontent-length)r:   r5   r=   rÕ   )r<   rØ   rH   rI   s       r@   rÌ   zResponse._prepareù  sP   € Ø)×/Ñ/Ó1ò 	0‰JˆC�à�y‰y‹{Ð1Ò1Ð6FÈ$Ï,É,Ñ6VØØ�L‰L×#Ñ# C¨Õ/ñ		0rM   c                óH   — t        | d«      st        d«      ‚| j                  S )ze
        Returns the time taken for the complete request/response
        cycle to complete.
        Ú_elapsedzK'.elapsed' may only be accessed after the response has been read or closed.)rß   ÚRuntimeErrorr  rt   s    r@   ÚelapsedzResponse.elapsed   s,   € ô �t˜ZÔ(Üð+óð ð �}‰}ÐrM   c                ó   — || _         y rK   )r  )r<   r  s     r@   r  zResponse.elapsed  s	   € àˆ�rM   c                óH   — | j                   €t        d«      ‚| j                   S )zR
        Returns the request instance associated to the current response.
        z7The request instance has not been set on this response.)r  r  rt   s    r@   r  zResponse.request  s*   € ð
 �=‰=Ð ÜØIóð ð �}‰}ÐrM   c                ó   — || _         y rK   )r  rL   s     r@   r  zResponse.request  s	   € àˆ�rM   c                óf   — 	 | j                   d   }|j                  dd¬«      S # t        $ r Y yw xY w)NÚhttp_versionrC   Úignore©ÚerrorszHTTP/1.1)rÂ   rF   r_   )r<   r  s     r@   r  zResponse.http_version   sB   € ð	AØ"&§/¡/°.Ñ"AˆLð  ×&Ñ& w°xÐ&Ó@Ð@øô ò 	Ùð	ús   ‚$ ¤	0¯0c                ó¤   — 	 | j                   d   }|j                  dd¬«      S # t        $ r" t        j                  | j
                  «      cY S w xY w)NÚreason_phraserC   r  r  )rÂ   rF   r_   r   Úget_reason_phraser  )r<   r  s     r@   r  zResponse.reason_phrase)  sV   € ð	BØ#'§?¡?°?Ñ#CˆMð !×'Ñ'¨¸Ð'ÓAÐAøô ò 	=Ü×*Ñ*¨4×+;Ñ+;Ó<Ò<ð	=ús   ‚$ ¤(AÁAc                ó.   — | j                   j                  S )zA
        Returns the URL for which the request was made.
        )r  rÉ   rt   s    r@   rÉ   zResponse.url2  s   € ð
 �|‰|×ÑÐrM   c                óF   — t        | d«      s
t        «       ‚| j                  S rÝ   )rß   r   rÞ   rt   s    r@   r½   zResponse.content9  s   € ä�t˜ZÔ(Ü!Ó#Ð#Ø�}‰}ÐrM   c                ó&  — t        | d«      sz| j                  }|sd| _        | j                  S t        | j                  xs d¬«      }dj                  |j                  | j                  «      |j                  «       g«      | _        | j                  S )NÚ_textr›   rD   rs   )rß   r½   r  r   r6   rw   rF   Úflush)r<   r½   Údecoders      r@   rÿ   zResponse.text?  sr   € ä�t˜WÔ%Ø—l‘lˆGÙØ�”
ð �z‰zÐô &¨t¯}©}Ò/GÀÔH�ØŸW™W g§n¡n°T·\±\Ó&BÀGÇMÁMÃOÐ%TÓU�”
Ø�z‰zÐrM   c                ó  — t        | d«      sr| j                  }|�t        |«      sNt        | j                  t
        «      r| j                  }n't        | d«      r| j	                  | j                  «      }|xs d| _        | j                  S )aï  
        Return an encoding to use for decoding the byte content into text.
        The priority for determining this is given by...

        * `.encoding = <>` has been set explicitly.
        * The encoding as specified by the charset parameter in the Content-Type header.
        * The encoding as determined by `default_encoding`, which may either be
          a string like "utf-8" indicating the encoding to use, or may be a callable
          which enables charset autodetection.
        r;   rÞ   rD   )rß   Úcharset_encodingr)   r8   r  r­   rÞ   r;   )r<   r6   s     r@   r6   zResponse.encodingJ  sv   € ô �t˜[Ô)Ø×,Ñ,ˆHØÐÔ'8¸Ô'BÜ˜d×3Ñ3´SÔ9Ø#×4Ñ4‘HÜ˜T :Ô.Ø#×4Ñ4°T·]±]ÓC�HØ%Ò0¨ˆDŒNØ�~‰~ÐrM   c                ó@   — t        | d«      rt        d«      ‚|| _        y)zÆ
        Set the encoding to use for decoding the byte content into text.

        If the `text` attribute has been accessed, attempting to set the
        encoding will throw a ValueError.
        r  z?Setting encoding after `text` has been accessed is not allowed.N)rß   r“   r;   rL   s     r@   r6   zResponse.encoding`  s'   € ô �4˜Ô!ÜØQóð ð ˆ�rM   c                óT   — | j                   j                  d«      }|€yt        |«      S )zO
        Return the encoding, as specified by the Content-Type header.
        zContent-TypeN)r=   ra   r-   )r<   rÄ   s     r@   r"  zResponse.charset_encodingn  s,   € ð
 —|‘|×'Ñ'¨Ó7ˆØÐØä)¨,Ó7Ð7rM   c                óÔ  — t        | d«      sÂg }| j                  j                  dd¬«      }|D ]@  }|j                  «       j	                  «       }	 t
        |   }|j                   |«       «       ŒB t        |«      dk(  r|d   | _	        | j                  S t        |«      dkD  rt        |¬«      | _	        | j                  S t        «       | _	        | j                  S # t        $ r Y Œ¸w xY w)zž
        Returns a decoder instance which can be used to decode the raw byte
        content, depending on the Content-Encoding used in the response.
        Ú_decoderzcontent-encodingT)rh   r   r   )Úchildren)rß   r=   rn   rg   r5   r   r   r_   r�   r&  r   r   )r<   ÚdecodersrV   rI   Údecoder_clss        r@   Ú_get_content_decoderzResponse._get_content_decodery  sâ   € ô
 �t˜ZÔ(Ø-/ˆHØ—\‘\×*Ñ*Ð+=ÈDÐ*ÓQˆFØò �ØŸ™›×+Ñ+Ó-�ðÜ"4°UÑ";�KØ—O‘O¡K£MÕ2ð	ô �8‹} Ò!Ø (¨¡�”ð �}‰}Ðô �X“ Ò"Ü ,°hÔ ?�”ð �}‰}Ðô !0Ó 1�”à�}‰}Ðøô  ò Ùðús   ÁCÃ	C'Ã&C'c                ó@   — t        j                  | j                  «      S )zU
        A property which is `True` for 1xx status codes, `False` otherwise.
        )r   Úis_informationalr  rt   s    r@   r,  zResponse.is_informational’  s   € ô
 ×%Ñ% d×&6Ñ&6Ó7Ð7rM   c                ó@   — t        j                  | j                  «      S )zU
        A property which is `True` for 2xx status codes, `False` otherwise.
        )r   Ú
is_successr  rt   s    r@   r.  zResponse.is_success™  s   € ô
 ×Ñ × 0Ñ 0Ó1Ð1rM   c                ó@   — t        j                  | j                  «      S )a  
        A property which is `True` for 3xx status codes, `False` otherwise.

        Note that not all responses with a 3xx status code indicate a URL redirect.

        Use `response.has_redirect_location` to determine responses with a properly
        formed URL redirection.
        )r   Úis_redirectr  rt   s    r@   r0  zResponse.is_redirect   s   € ô × Ñ  ×!1Ñ!1Ó2Ð2rM   c                ó@   — t        j                  | j                  «      S )zU
        A property which is `True` for 4xx status codes, `False` otherwise.
        )r   Úis_client_errorr  rt   s    r@   r2  zResponse.is_client_error¬  ó   € ô
 ×$Ñ$ T×%5Ñ%5Ó6Ð6rM   c                ó@   — t        j                  | j                  «      S )zU
        A property which is `True` for 5xx status codes, `False` otherwise.
        )r   Úis_server_errorr  rt   s    r@   r5  zResponse.is_server_error³  r3  rM   c                ó@   — t        j                  | j                  «      S )z]
        A property which is `True` for 4xx and 5xx status codes, `False` otherwise.
        )r   Úis_errorr  rt   s    r@   r7  zResponse.is_errorº  s   € ô
 �~‰~˜d×.Ñ.Ó/Ð/rM   c                óÔ   — | j                   t        j                  t        j                  t        j                  t        j
                  t        j                  fv xr d| j                  v S )zs
        Returns True for 3xx responses with a properly formed URL redirection,
        `False` otherwise.
        ÚLocation)r  r   ÚMOVED_PERMANENTLYÚFOUNDÚ	SEE_OTHERÚTEMPORARY_REDIRECTÚPERMANENT_REDIRECTr=   rt   s    r@   Úhas_redirect_locationzResponse.has_redirect_locationÁ  sZ   € ð ×Ñô ×'Ñ'ä—‘ä—‘ä×(Ñ(ä×(Ñ(ððò +ð ˜dŸl™lÐ*ð	
rM   c                ó  — | j                   }|€t        d«      ‚| j                  r| S | j                  rd}nd}| j                  dz  }ddddd	œ}|j                  |d
«      }|j                  | |¬«      }t        ||| ¬«      ‚)z>
        Raise the `HTTPStatusError` if one occurred.
        zYCannot call `raise_for_status` as the request instance has not been set on this response.zÒ{error_type} '{0.status_code} {0.reason_phrase}' for url '{0.url}'
Redirect location: '{0.headers[location]}'
For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/{0.status_code}z§{error_type} '{0.status_code} {0.reason_phrase}' for url '{0.url}'
For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/{0.status_code}éd   zInformational responsezRedirect responsezClient errorzServer error)r   é   é   é   zInvalid status code)Ú
error_type)r  Úresponse)r  r  r.  r?  r  ra   Úformatr   )r<   r  ÚmessageÚstatus_classÚerror_typesrE  s         r@   Úraise_for_statuszResponse.raise_for_statusØ  sª   € ð —-‘-ˆØˆ?Üð>óð ð
 �?Š?ØˆKà×%Ò%ðwñ ðwð ð
 ×'Ñ'¨3Ñ.ˆà'Ø"ØØñ	
ˆð !—_‘_ \Ð3HÓIˆ
Ø—.‘. °*�.Ó=ˆÜ˜g¨wÀÔFÐFrM   c                óB   — t        j                  | j                  fi |¤ŽS rK   )ÚjsonlibÚloadsr½   )r<   Úkwargss     r@   rÀ   zResponse.jsoný  s   € Ü�}‰}˜TŸ\™\Ñ4¨VÑ4Ð4rM   c                ó†   — t        | d«      s*t        «       | _        | j                  j                  | «       | j                  S )NÚ_cookies)rß   r/   rQ  Úextract_cookiesrt   s    r@   r¼   zResponse.cookies   s1   € ä�t˜ZÔ(Ü#›IˆDŒMØ�M‰M×)Ñ)¨$Ô/Ø�}‰}ÐrM   c                óÂ   — | j                   j                  d«      }|€i S t        |«      D �ci c]'  }|j                  d«      xs |j                  d«      |“Œ) c}S c c}w )zI
        Returns the parsed header links of the response, if any
        ÚlinkÚrelrÉ   )r=   ra   r.   )r<   ÚheaderrT  s      r@   ÚlinkszResponse.links  sc   € ð
 —‘×!Ñ! &Ó)ˆØˆ>ØˆIô +¨6Ó2ö
àð �X‰X�e‹_Ò/ §¡¨£°$Ñ6ò
ð 	
ùò 
s   ­,Ac                ó   — | j                   S rK   )r
  rt   s    r@   Únum_bytes_downloadedzResponse.num_bytes_downloaded  s   € à×)Ñ)Ð)rM   c                ó<   — d| j                   › d| j                  › d�S )Nz<Response [ú ú]>)r  r  rt   s    r@   r¦   zResponse.__repr__  s%   € Ø˜T×-Ñ-Ð.¨a°×0BÑ0BÐ/CÀ2ÐFÐFrM   c                ór   — | j                   j                  «       D ��ci c]  \  }}|dvr||“Œ c}}S c c}}w )N)rÂ   rÁ   r  r&  rì   rî   s      r@   rð   zResponse.__getstate__  sB   € ð  $Ÿ}™}×2Ñ2Ó4÷
á��eØÐLÑLð �%‰Kó
ð 	
ùó 
rñ   c                óˆ   — |j                  «       D ]  \  }}t        | ||«       Œ d| _        i | _        t	        «       | _        y )NT)r:   ró   r  rÂ   r	   rÁ   rô   s       r@   rö   zResponse.__setstate__#  s?   € Ø Ÿ;™;›=ò 	'‰KˆD�%Ü�D˜$ Õ&ð	'àˆŒØˆŒÜ&Ó(ˆ�rM   c                óz   — t        | d«      s$dj                  | j                  «       «      | _        | j                  S )ú7
        Read and return the response content.
        rÞ   rM   )rß   rw   Ú
iter_bytesrÞ   rt   s    r@   rÍ   zResponse.read*  s/   € ô �t˜ZÔ(ØŸH™H T§_¡_Ó%6Ó7ˆDŒMØ�}‰}ÐrM   c              #  ót  K  — t        | d«      r]|€t        | j                  «      n|}t        dt        | j                  «      t	        |d«      «      D ]  }| j                  |||z    –— Œ y| j                  «       }t        |¬«      }t        | j                  ¬«      5  | j                  «       D ]-  }|j                  |«      }|j                  |«      D ]  }|–— Œ Œ/ |j                  «       }|j                  |«      D ]  }|–— Œ |j                  «       D ]  }|–— Œ 	 ddd«       y# 1 sw Y   yxY w­w©z˜
        A byte-iterator over the decoded response content.
        This allows us to handle gzip, deflate, brotli, and zstd encoded responses.
        rÞ   Nr   r   ©Ú
chunk_size©r  )rß   r�   rÞ   ÚrangeÚmaxr*  r   r   r  Úiter_rawrF   r  ©r<   re  Úir   ÚchunkerÚ	raw_bytesÚdecodedÚchunks           r@   ra  zResponse.iter_bytes2  s"  è ø€ ô
 �4˜Ô$Ø/9Ð/Aœ˜TŸ]™]Ô+ÀzˆJÜ˜1œc $§-¡-Ó0´#°jÀ!Ó2DÓEò 8�Ø—m‘m A¨¨J©Ð7Ó7ñ8ð ×/Ñ/Ó1ˆGÜ!¨ZÔ8ˆGÜ ¨¯©Ô7ñ 	 Ø!%§¡£ò $�IØ%Ÿn™n¨YÓ7�GØ!(§¡°Ó!8ò $˜Ø#›ñ$ð$ð "Ÿ-™-›/�Ø$Ÿ^™^¨GÓ4ò  �EØ“Kð à$Ÿ]™]›_ò  �EØ“Kñ ÷	 ÷ 	 ñ 	 üs   ‚BD8ÂBD,Ä#	D8Ä,D5Ä1D8c              #  ó¶  K  — t        | j                  xs d¬«      }t        |¬«      }t        | j                  ¬«      5  | j                  «       D ]-  }|j                  |«      }|j                  |«      D ]  }|–— Œ Œ/ |j                  «       }|j                  |«      D ]  }|–— Œ |j                  «       D ]  }|–— Œ 	 ddd«       y# 1 sw Y   yxY w­w©z§
        A str-iterator over the decoded response content
        that handles both gzip, deflate, etc but also detects the content's
        string encoding.
        rD   rs   rd  rf  N)r   r6   r   r   r  ra  rF   r  ©r<   re  r   rl  Úbyte_contentÚtext_contentro  s          r@   Ú	iter_textzResponse.iter_textI  sÊ   è ø€ ô  t§}¡}Ò'?¸Ô@ˆÜ¨Ô4ˆÜ T§]¡]Ô3ñ 		Ø $§¡Ó 1ò  �Ø&Ÿ~™~¨lÓ;�Ø$Ÿ^™^¨LÓ9ò  �EØ“Kñ ð ð #Ÿ=™=›?ˆLØ Ÿ™¨Ó5ò �Ø“ðà Ÿ™›ò �Ø“ñ÷		÷ 		ñ 		üs   ‚=C¿BCÃ	CÃCÃCc              #  ó  K  — t        «       }t        | j                  ¬«      5  | j                  «       D ]  }|j	                  |«      D ]  }|–— Œ Œ |j                  «       D ]  }|–— Œ 	 d d d «       y # 1 sw Y   y xY w­w©Nrf  )r   r   r  ru  rF   r  ©r<   r   rÿ   Úlines       r@   Ú
iter_lineszResponse.iter_lines\  s|   è ø€ Ü“-ˆÜ T§]¡]Ô3ñ 	ØŸ™Ó(ò �Ø#ŸN™N¨4Ó0ò �DØ“Jñðð  Ÿ™›ò �Ø“
ñ÷		÷ 	ñ 	üs   ‚!B£A	A6Á-	BÁ6A?Á;Bc              #  ó  K  — | j                   r
t        «       ‚| j                  r
t        «       ‚t	        | j
                  t        «      st        d«      ‚d| _         d| _        t        |¬«      }t        | j                  ¬«      5  | j
                  D ]:  }| xj                  t        |«      z  c_        |j                  |«      D ]  }|–— Œ Œ< 	 ddd«       |j                  «       D ]  }|–— Œ | j                  «        y# 1 sw Y   Œ3xY w­w)ú@
        A byte-iterator over the raw response content.
        z5Attempted to call a sync iterator on an async stream.Tr   rd  rf  N)r	  r   r  r   r8   rÁ   r'   r  r
  r   r   r  r�   rF   r  Úclose©r<   re  rl  Úraw_stream_bytesro  s        r@   ri  zResponse.iter_rawe  sí   è ø€ ð ×"Ò"Ü Ó"Ð"Ø�>Š>Ü“.Ð Ü˜$Ÿ+™+¤~Ô6ÜÐVÓWÐWà"&ˆÔØ%&ˆÔ"Ü¨Ô4ˆä T§]¡]Ô3ñ 	 Ø$(§K¡Kò  Ð Ø×*Ò*¬cÐ2BÓ.CÑCÕ*Ø$Ÿ^™^Ð,<Ó=ò  �EØ“Kñ ñ ÷	 ð —]‘]“_ò 	ˆEØ‹Kð	ð 	�
‰
�÷	 ð 	 üs   ‚BDÂA
DÃ2DÄD
ÄDc                ó   — t        | j                  t        «      st        d«      ‚| j                  sAd| _        t        | j                  ¬«      5  | j                  j                  «        ddd«       yy# 1 sw Y   yxY w)ú‰
        Close the response and release the connection.
        Automatically called if the response body is read to completion.
        z3Attempted to call an sync close on an async stream.Trf  N)r8   rÁ   r'   r  r  r   r  r}  rt   s    r@   r}  zResponse.close  sg   € ô
 ˜$Ÿ+™+¤~Ô6ÜÐTÓUÐUà�~Š~Ø!ˆDŒNÜ ¨¯©Ô7ñ $Ø—‘×!Ñ!Ô#÷$ð $ð ÷$ð $ús   ÁA4Á4A=c              ƒ  ó¼   K  — t        | d«      s+dj                  | j                  «       2 �cg c3 d{  –—† }|‘Œ| j                  S 7 Œ6 nc c}w c}«      | _        Œ"­w)r`  rÞ   rM   N)rß   rw   Úaiter_bytesrÞ   ræ   s     r@   rè   zResponse.areadŒ  sM   è ø€ ô �t˜ZÔ(ØŸH™H¸T×=MÑ=MÓ=O×%PÔ%P°T¢dØ�}‰}Ðð &QøÑ%PùÔ%PÓQˆDŒMús5   ‚*A¬A
®A
²A³A
¶A
ºAÁA
ÁA
Á	Ac               óŒ  K  — t        | d«      r^|€t        | j                  «      n|}t        dt        | j                  «      t	        |d«      «      D ]  }| j                  |||z    ­–— Œ y| j                  «       }t        |¬«      }t        | j                  ¬«      5  | j                  «       2 3 d{  –—† }|j                  |«      }|j                  |«      D ]  }|­–— Œ	 Œ67 Œ16 |j                  «       }|j                  |«      D ]  }|­–— Œ	 |j                  «       D ]  }|­–— Œ	 	 ddd«       y# 1 sw Y   yxY w­wrc  )rß   r�   rÞ   rg  rh  r*  r   r   r  Ú	aiter_rawrF   r  rj  s           r@   rƒ  zResponse.aiter_bytes”  s,  è ø€ ô �4˜Ô$Ø/9Ð/Aœ˜TŸ]™]Ô+ÀzˆJÜ˜1œc $§-¡-Ó0´#°jÀ!Ó2DÓEò 8�Ø—m‘m A¨¨J©Ð7Ô7ñ8ð ×/Ñ/Ó1ˆGÜ!¨ZÔ8ˆGÜ ¨¯©Ô7ñ 	 Ø'+§~¡~Ó'7÷ $ð $˜)Ø%Ÿn™n¨YÓ7�GØ!(§¡°Ó!8ò $˜Ø#œñ$ð$øÐ'7ð "Ÿ-™-›/�Ø$Ÿ^™^¨GÓ4ò  �EØ”Kð à$Ÿ]™]›_ò  �EØ”Kñ ÷	 ÷ 	 ñ 	 üsC   ‚BEÂD8Â0C(Â4C&Â5C(Â8.D8Ã&C(Ã(AD8Ä/	EÄ8EÄ=Ec               óÌ  K  — t        | j                  xs d¬«      }t        |¬«      }t        | j                  ¬«      5  | j                  «       2 3 d{  –—† }|j                  |«      }|j                  |«      D ]  }|­–— Œ	 Œ67 Œ16 |j                  «       }|j                  |«      D ]  }|­–— Œ	 |j                  «       D ]  }|­–— Œ	 	 ddd«       y# 1 sw Y   yxY w­wrq  )r   r6   r   r   r  rƒ  rF   r  rr  s          r@   Ú
aiter_textzResponse.aiter_text­  sÕ   è ø€ ô  t§}¡}Ò'?¸Ô@ˆÜ¨Ô4ˆÜ T§]¡]Ô3ñ 		Ø&*×&6Ñ&6Ó&8÷  ð  �lØ&Ÿ~™~¨lÓ;�Ø$Ÿ^™^¨LÓ9ò  �EØ”Kñ ð øÐ&8ð #Ÿ=™=›?ˆLØ Ÿ™¨Ó5ò �Ø”ðà Ÿ™›ò �Ø”ñ÷		÷ 		ñ 		üsA   ‚=C$¿CÁBÁBÁBÁ.CÂBÂACÃ	C$ÃC!ÃC$c               ó  K  — t        «       }t        | j                  ¬«      5  | j                  «       2 3 d {  –—† }|j	                  |«      D ]  }|­–— Œ	 Œ%7 Œ 6 |j                  «       D ]  }|­–— Œ	 	 d d d «       y # 1 sw Y   y xY w­wrw  )r   r   r  r‡  rF   r  rx  s       r@   Úaiter_lineszResponse.aiter_linesÂ  s…   è ø€ Ü“-ˆÜ T§]¡]Ô3ñ 	Ø"Ÿo™oÓ/÷ ð �dØ#ŸN™N¨4Ó0ò �DØ”JñðøÐ/ð  Ÿ™›ò �Ø”
ñ÷		÷ 	ñ 	üs<   ‚!B£B ´A¸A¹A¼B ÁAÁB Á7	BÂ B	ÂBc               óF  K  — | j                   r
t        «       ‚| j                  r
t        «       ‚t	        | j
                  t        «      st        d«      ‚d| _         d| _        t        |¬«      }t        | j                  ¬«      5  | j
                  2 3 d{  –—† }| xj                  t        |«      z  c_        |j                  |«      D ]  }|­–— Œ	 ŒC7 Œ>6 	 ddd«       n# 1 sw Y   nxY w|j                  «       D ]  }|­–— Œ	 | j                  «       ƒ d{  –—†7   y­w)r|  z6Attempted to call an async iterator on an sync stream.Tr   rd  rf  N)r	  r   r  r   r8   rÁ   r   r  r
  r   r   r  r�   rF   r  Úacloser~  s        r@   r…  zResponse.aiter_rawË  sü   è ø€ ð ×"Ò"Ü Ó"Ð"Ø�>Š>Ü“.Ð Ü˜$Ÿ+™+¤Ô7ÜÐWÓXÐXà"&ˆÔØ%&ˆÔ"Ü¨Ô4ˆä T§]¡]Ô3ñ 	 Ø*.¯+©+÷  ð  Ð&Ø×*Ò*¬cÐ2BÓ.CÑCÕ*Ø$Ÿ^™^Ð,<Ó=ò  �EØ”Kñ ð ø©+÷	 ÷ 	 ñ 	 úð —]‘]“_ò 	ˆEØŒKð	ð �k‰k‹m×ÒùsN   ‚BD!ÂC!ÂCÂCÂCÂ;C!ÃCÃC!Ã	D!Ã!C*Ã&4D!ÄDÄD!c              ƒ  ó  K  — t        | j                  t        «      st        d«      ‚| j                  sId| _        t        | j                  ¬«      5  | j                  j                  «       ƒ d{  –—†  ddd«       yy7 Œ# 1 sw Y   yxY w­w)r�  z3Attempted to call an async close on an sync stream.Trf  N)r8   rÁ   r   r  r  r   r  r‹  rt   s    r@   r‹  zResponse.acloseç  sv   è ø€ ô
 ˜$Ÿ+™+¤Ô7ÜÐTÓUÐUà�~Š~Ø!ˆDŒNÜ ¨¯©Ô7ñ +Ø—k‘k×(Ñ(Ó*×*Ð*÷+ð +ð ð +ø÷+ð +üs0   ‚ABÁB Á/A>Á0B Á4
BÁ>B Â B	ÂB)r  r³   r=   r¨   r½   zResponseContent | Nonerÿ   r©   r   r©   rÀ   r¯   rÁ   rø   r  zRequest | NonerÂ   zResponseExtensions | Noner  zlist[Response] | Noner  z#str | typing.Callable[[bytes], str]rª   r«   rù   )rª   údatetime.timedelta)r  r�  rª   r«   )rª   r1   )rI   r1   rª   r«   r¬   )rª   r(   rú   )rª   r©   r®   )rª   r   ©rª   r°   )rª   r2   )rO  r¯   rª   r¯   )rª   r/   )rª   z dict[str | None, dict[str, str]]r²   rû   rý   rK   )re  ú
int | Nonerª   ztyping.Iterator[bytes])re  r�  rª   útyping.Iterator[str]©rª   r�  )rª   r«   )re  r�  rª   ztyping.AsyncIterator[bytes])re  r�  rª   útyping.AsyncIterator[str])rª   r’  ),rŸ   r´   rµ   rA   rÌ   r·   r  r¸   r  r  r  rÉ   r½   rÿ   r6   r"  r*  r,  r.  r0  r2  r5  r7  r?  rK  rÀ   r¼   rW  rY  r¦   rð   rö   rÍ   ra  ru  rz  ri  r}  rè   rƒ  r‡  r‰  r…  r‹  r¹   rM   r@   r2   r2   Á  s  „ ð
 '+Ø*.ØØØØ:>Ø"&Ø04Ø)-Ø@Gñ5'àð5'ð $ð	5'ð
 (ð5'ð ð5'ð ð5'ð ð5'ð 8ð5'ð  ð5'ð .ð5'ð 'ð5'ð >ð5'ð 
ó5'ón0ð ò
ó ð
ð ‡^�^ò ó ð ð òó ðð ‡^�^òó ðð òAó ðAð òBó ðBð ò ó ð ð òó ðð
 òó ðð òó ðð* ‡_�_òó ðð ò8ó ð8óð2 ò8ó ð8ð ò2ó ð2ð ò	3ó ð	3ð ò7ó ð7ð ò7ó ð7ð ò0ó ð0ð ò
ó ð
ó,#GóJ5ð òó ðð ò
ó ð
ð ò*ó ð*óGó
ó)óô ô.ó&ôó4$óð (,ð Ø$ð à	$ó ð4 (,ðØ$ðà	"óó*ð (,ðØ$ðà	$óô8+rM   r2   c                  ó  — e Zd ZdZddd„Zdd„Zdd„Zddd„Z	 	 	 d	 	 	 	 	 	 	 	 	 dd„Z	 	 d	 	 	 	 	 	 	 dd„Z	d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 G d„ dej(                  j*                  «      Z G d„ d«      Zy)(r/   z-
    HTTP Cookies, as a mutable mapping.
    Nc                óÜ  — |�t        |t        «      rKt        «       | _        t        |t        «      r+|j	                  «       D ]  \  }}| j                  ||«       Œ y y t        |t        «      r,t        «       | _        |D ]  \  }}| j                  ||«       Œ y t        |t        «      r<t        «       | _        |j                  D ]  }| j                  j                  |«       Œ y || _        y rK   )	r8   r    r   Újarr:   Úsetr9   r/   Ú
set_cookie)r<   r¼   rH   rI   Úcookies        r@   rA   zCookies.__init__ú  sÆ   € Øˆ?œj¨´$Ô7Ü “{ˆDŒHÜ˜'¤4Ô(Ø")§-¡-£/ò )‘J�C˜Ø—H‘H˜S %Õ(ñ)ð )ô ˜¤Ô&Ü “{ˆDŒHØ%ò %‘
��UØ—‘˜˜eÕ$ñ%ä˜¤Ô)Ü “{ˆDŒHØ!Ÿ+™+ò ,�Ø—‘×#Ñ# FÕ+ñ,ð ˆD�HrM   c                ó”   — | j                  |«      }| j                  |j                  «      }| j                  j	                  ||«       y)zO
        Loads any cookies based on the response `Set-Cookie` headers.
        N)Ú_CookieCompatResponseÚ_CookieCompatRequestr  r•  rR  )r<   rF  Úurllib_responseÚurllib_requests       r@   rR  zCookies.extract_cookies  s>   € ð ×4Ñ4°XÓ>ˆØ×2Ñ2°8×3CÑ3CÓDˆà�‰× Ñ  °.ÕArM   c                ó\   — | j                  |«      }| j                  j                  |«       y)zM
        Sets an appropriate 'Cookie:' HTTP header on the `Request`.
        N)r›  r•  Úadd_cookie_header)r<   r  r�  s      r@   rË   zCookies.set_cookie_header  s&   € ð ×2Ñ2°7Ó;ˆØ�‰×"Ñ" >Õ2rM   c                ó   — i dd“d|“d|“dd“dd“d	|“d
t        |«      “d|j                  d«      “d|“dt        |«      “dd“dd“dd“dd“dd“dddi“dd“}t        di |¤Ž}| j                  j	                  |«       y)zU
        Set a cookie value by name. May optionally include domain and path.
        Úversionr   rï   rI   ÚportNÚport_specifiedFÚdomainÚdomain_specifiedÚdomain_initial_dotú.ÚpathÚpath_specifiedÚsecureÚexpiresÚdiscardTÚcommentÚcomment_urlÚrestÚHttpOnlyÚrfc2109r¹   )r°   Ú
startswithr   r•  r—  )r<   rï   rI   r¤  r¨  rO  r˜  s          r@   r–  zCookies.set  s
  € ð
Ø�qð
à�Dð
ð �Uð
ð �Dð	
ð
 ˜eð
ð �fð
ð ¤ V£ð
ð ! &×"3Ñ"3°CÓ"8ð
ð �Dð
ð œd 4›jð
ð �eð
ð �tð
ð �tð
ð �tð
ð ˜4ð
ð  �Z Ð&ð!
ð" �uð#
ˆô& Ñ!˜&Ñ!ˆØ�‰×Ñ˜FÕ#rM   c                óØ   — d}| j                   D ]T  }|j                  |k(  sŒ|�|j                  |k(  sŒ%|�|j                  |k(  sŒ7|�d|› �}t	        |«      ‚|j
                  }ŒV |€|S |S )zŒ
        Get a cookie by name. May optionally include domain and path
        in order to specify exactly which cookie to retrieve.
        Nz!Multiple cookies exist with name=)r•  rï   r¤  r¨  r   rI   )r<   rï   r`   r¤  r¨  rI   r˜  rH  s           r@   ra   zCookies.get5  s   € ð ˆØ—h‘hò 	-ˆFØ�{‰{˜dÓ"Ø�> V§]¡]°fÓ%<Ø�| v§{¡{°dÓ':Ø Ð,Ø(IÈ$ÈÐ&P˜GÜ"0°Ó"9Ð9Ø &§¡™ð	-ð ˆ=ØˆNØˆrM   c                óh  — |�|�| j                   j                  |||«      S | j                   D �cg c]5  }|j                  |k(  r$|�|j                  |k(  r|�|j                  |k(  r|‘Œ7 }}|D ]=  }| j                   j                  |j                  |j                  |j                  «       Œ? yc c}w )z�
        Delete a cookie by name. May optionally include domain and path
        in order to specify exactly which cookie to delete.
        N)r•  Úclearrï   r¤  r¨  )r<   rï   r¤  r¨  r˜  Úremoves         r@   ÚdeletezCookies.deleteN  s­   € ð Ð $Ð"2Ø—8‘8—>‘> &¨$°Ó5Ð5ð Ÿ(™(ö
àØ�{‰{˜dÒ"Ø� 6§=¡=°FÒ#:Ø� §¡°Ò!4ò	 ð
ˆð 
ð ò 	DˆFØ�H‰H�N‰N˜6Ÿ=™=¨&¯+©+°v·{±{ÕCñ	Dùò
s   °:B/c                óŽ   — g }|�|j                  |«       |�|€J ‚|j                  |«        | j                  j                  |Ž  y)z‡
        Delete all cookies. Optionally include a domain and path in
        order to only delete a subset of all the cookies.
        N)r   r•  rµ  )r<   r¤  r¨  Úargss       r@   rµ  zCookies.clearf  sK   € ð
 ˆØÐØ�K‰K˜ÔØÐØÐ%Ð%Ð%Ø�K‰K˜ÔØˆ�‰�‰˜ÒrM   c                ór   — t        |«      }|j                  D ]  }| j                  j                  |«       Œ y rK   )r/   r•  r—  )r<   r¼   r˜  s      r@   rq   zCookies.updates  s1   € Ü˜'Ó"ˆØ—k‘kò 	(ˆFØ�H‰H×Ñ Õ'ñ	(rM   c                ó&   — | j                  ||«      S rK   )r–  rî   s      r@   r…   zCookies.__setitem__x  s   € Ø�x‰x˜˜eÓ$Ð$rM   c                óB   — | j                  |«      }|€t        |«      ‚|S rK   )ra   r_   rî   s      r@   r{   zCookies.__getitem__{  s#   € Ø—‘˜“ˆØˆ=Ü˜4“.Ð ØˆrM   c                ó$   — | j                  |«      S rK   )r·  )r<   rï   s     r@   r‰   zCookies.__delitem__�  s   € Ø�{‰{˜4Ó Ð rM   c                ó,   — t        | j                  «      S rK   )r�   r•  rt   s    r@   r‘   zCookies.__len__„  s   € Ü�4—8‘8‹}ÐrM   c                ó(   — d„ | j                   D «       S )Nc              3  ó4   K  — | ]  }|j                   –— Œ y ­wrK   )rï   )Ú.0r˜  s     r@   ú	<genexpr>z#Cookies.__iter__.<locals>.<genexpr>ˆ  s   è ø€ Ò3 �—•Ñ3ùs   ‚©r•  rt   s    r@   rŽ   zCookies.__iter__‡  s   € Ù3¨$¯(©(Ô3Ð3rM   c                ó(   — | j                   D ]  } y y)NTFrÃ  )r<   rP   s     r@   Ú__bool__zCookies.__bool__Š  s   € Ø—‘ò 	ˆAÙð	àrM   c                óº   — dj                  | j                  D �cg c],  }d|j                  › d|j                  › d|j                  › d�‘Œ. c}«      }d|› d�S c c}w )NrU   z<Cookie ú=z for z />z	<Cookies[r\  )rw   r•  rï   rI   r¤  )r<   r˜  Úcookies_reprs      r@   r¦   zCookies.__repr__�  sc   € Ø—y‘yð #Ÿh™höàð ˜6Ÿ;™;˜- q¨¯©¨°e¸F¿M¹M¸?È#ÒNòó
ˆð ˜<˜.¨Ð+Ð+ùòs   š1Ac                  ó0   ‡ — e Zd ZdZdˆ fd„Zdˆ fd„Zˆ xZS )úCookies._CookieCompatRequestú‚
        Wraps a `Request` instance up in a compatibility interface suitable
        for use with `CookieJar` operations.
        c                ó˜   •— t         ‰| �  t        |j                  «      t	        |j
                  «      |j                  ¬«       || _        y )N)rÉ   r=   rÈ   )ÚsuperrA   r­   rÉ   r    r=   rÈ   r  )r<   r  rž   s     €r@   rA   z%Cookies._CookieCompatRequest.__init__Ÿ  s=   ø€ Ü‰GÑÜ˜Ÿ™Ó$Ü˜WŸ_™_Ó-Ø—~‘~ð ô ð
 #ˆD�LrM   c                óX   •— t         ‰| �  ||«       || j                  j                  |<   y rK   )rÍ  Úadd_unredirected_headerr  r=   )r<   rH   rI   rž   s      €r@   rÏ  z4Cookies._CookieCompatRequest.add_unredirected_header§  s&   ø€ Ü‰GÑ+¨C°Ô7Ø(-ˆD�L‰L× Ñ  Ò%rM   ©r  r1   rª   r«   r±   )rŸ   r´   rµ   r¶   rA   rÏ  Ú__classcell__)rž   s   @r@   r›  rÊ  ™  s   ø„ ñ	õ
	#÷	.ñ 	.rM   r›  c                  ó    — e Zd ZdZdd„Zdd„Zy)úCookies._CookieCompatResponserË  c                ó   — || _         y rK   )rF  )r<   rF  s     r@   rA   z&Cookies._CookieCompatResponse.__init__±  s	   € Ø$ˆD�MrM   c                ó¤   — t         j                  j                  «       }| j                  j                  j                  «       D ]
  \  }}|||<   Œ |S rK   )ÚemailrH  ÚMessagerF  r=   r]   )r<   ÚinforH   rI   s       r@   rØ  z"Cookies._CookieCompatResponse.info´  sL   € Ü—=‘=×(Ñ(Ó*ˆDØ"Ÿm™m×3Ñ3×?Ñ?ÓAò "‘
��Uð "��S’	ð	"ð
 ˆKrM   N©rF  r2   rª   r«   )rª   zemail.message.Message)rŸ   r´   rµ   r¶   rA   rØ  r¹   rM   r@   rš  rÓ  «  s   „ ñ	ó
	%ô	rM   rš  rK   )r¼   r÷   rª   r«   rÙ  rÐ  )r›   ú/)
rï   r­   rI   r­   r¤  r­   r¨  r­   rª   r«   )NNN)
rï   r­   r`   r©   r¤  r©   r¨  r©   rª   r©   r§   )rï   r­   r¤  r©   r¨  r©   rª   r«   )r¤  r©   r¨  r©   rª   r«   )rï   r­   rI   r­   rª   r«   )rï   r­   rª   r­   )rï   r­   rª   r«   r²   r‘  rŽ  r¬   )rŸ   r´   rµ   r¶   rA   rR  rË   r–  ra   r·  rµ  rq   r…   r{   r‰   r‘   rŽ   rÅ  r¦   Úurllibr  r1   r›  rš  r¹   rM   r@   r/   r/   õ  sá   „ ñôó"Bó3ô$ð: #Ø!Øðàðð ðð ð	ð
 ðð 
óð8 "Øð	DàðDð ðDð ð	Dð
 
óDô0ô(ó
%óó!óó4óó
,ô.˜vŸ~™~×5Ñ5ô .÷$ò rM   r/   )EÚ
__future__r   ÚdatetimeÚemail.messagerÖ  rÀ   rM  râ   Úurllib.requestrÛ  Úcollections.abcr   Úhttp.cookiejarr   r   rÞ   r   r	   r
   r   Ú	_decodersr   r   r   r   r   r   r   r   Ú_exceptionsr   r   r   r   r   r   r   Ú
_multipartr   Ú_status_codesr   Ú_typesr   r   r   r    r!   r"   r#   r$   r%   r&   r'   Ú_urlsr(   Ú_utilsr)   r*   r+   r,   r-   r.   Ú__all__ÚMutableMappingr­   r0   r1   r2   r/   r¹   rM   r@   ú<module>rë     sÉ   ðÝ "ã Û Û Û Û Ý #ß ,ç SÓ S÷	÷ 	ó 	÷÷ ñ õ AÝ  ÷÷ ÷ ñ õ ÷÷ ò 8€ôx:ˆf×#Ñ# C¨ HÑ-ô x:÷vH)ñ H)÷Vq+ñ q+ôhFˆf×#Ñ# C¨ HÑ-õ FrM   