Ë
    ,Œ:j�§  ã                   ó´  — 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-m.Z.m/Z/m0Z0m1Z1m2Z2 ddl3m4Z4 ddl5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;  G d„ dejx                  e=e=f   «      Z> G d„ d«      Z? G d„ d«      Z@ G d„ dejx                  e=e=f   «      ZAy)é    N)Ú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_linksc                   ó  — e Zd ZdZ	 	 ddej
                  e   dej
                  e   ddfd„Ze	defd„«       Z
e
j                  deddfd	„«       Z
e	dej                  ej                  eef      fd
„«       Zdej                   e   fd„Zdej$                  e   fd„Zdej(                  eef   fd„Zdej                  ej                  eef      fd„Zd dedej.                  dej.                  fd„Zd!dededej                  e   fd„Zd dej
                  e   ddfd„Zd"d„Zdedefd„Zdededdfd„Zdeddfd„Zdej.                  defd„Z dejB                  ej.                     fd„Z"de#fd„Z$dej.                  defd„Z%defd„Z&y)#ÚHeadersz9
    HTTP headers, as a case-insensitive multi-dict.
    NÚheadersÚencodingÚreturnc           
      óø  — |€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)Úlowerr1   T)	Ú_listÚ
isinstancer/   Úlistr   Úitemsr)   r*   Ú	_encoding)Úselfr0   r1   ÚkÚvs        úO/var/www/html/tokenscope/api/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)r9   ÚrawÚdecodeÚUnicodeDecodeError)r:   r1   ÚkeyÚvalues       r=   r1   zHeaders.encodingZ   s�   € ð �>‰>Ð!Ø.ò .�Ø"&§(¡(ò 
‘J�C˜ðØŸ
™
 8Ô,ØŸ™ XÕ.ð
ð &.�D”NØð
 �~‰~Ðð!.ð ".�”Ø�~‰~Ðøô .ò Úðús   ¥"A1Á1	A>Á=A>rF   c                 ó   — || _         y ©N)r9   ©r:   rF   s     r=   r1   zHeaders.encodings   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.
        )r5   )r:   Úraw_keyÚ_rF   s       r=   rB   zHeaders.raww   s+   € ð
 ;?¿*¹*×EÐEÑ%6 W¨a°�˜%Ò ÔEÐEùÔEs   ‘%c                 ó¤   — | j                   D ���ci c]"  \  }}}|j                  | j                  «      d “Œ$ c}}}j                  «       S c c}}}w rH   )r5   rC   r1   Úkeys©r:   rM   rE   rF   s       r=   rO   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ú, )r5   rC   r1   Úvalues©r:   Úvalues_dictrM   rE   rF   Ústr_keyÚ	str_values          r=   rS   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ð ×!Ñ!Ó#Ð#rJ   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.
        rR   )r5   rC   r1   r8   rT   s          r=   r8   zHeaders.itemsŒ   s€   € ð
 .0ˆØ!ŸZ™Zò 	1‰MˆAˆs�EØ—j‘j §¡Ó/ˆGØŸ™ T§]¡]Ó3ˆIØ˜+Ñ%Ø˜GÓ$¨"¨Y¨KÐ(8Ñ8Ô$à'0�˜GÒ$ð	1ð × Ñ Ó"Ð"rJ   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.
        )r5   rC   r1   rP   s       r=   Úmulti_itemszHeaders.multi_items›   sR   € ð "&§¡÷
ð 
á��3˜ð �Z‰Z˜Ÿ™Ó&¨¯©°T·]±]Ó(CÒDô
ð 	
ùô 
s   ‘AArE   Údefaultc                 ó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:   rE   r[   s      r=   ÚgetzHeaders.get¦   s%   € ð
	Ø˜‘9ÐøÜò 	ØŠNð	ús   ‚ ‡”Úsplit_commasc                 óœ  — |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.
        ú,)r4   Úencoder1   r5   rC   ÚextendÚsplitÚstrip)r:   rE   r_   Úget_header_keyrM   Úitem_keyÚ
item_valuerS   Úsplit_valuesrF   Ú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 rH   )r/   rO   Úpopr5   rc   )r:   r0   rE   s      r=   ÚupdatezHeaders.updateÆ   sK   € Ü˜'Ó"ˆØ—<‘<“>ò 	ˆCØ�dŠ{Ø—‘˜•ð	ð 	�
‰
×Ñ˜'Ÿ-™-Õ(rJ   c                 ó0   — t        | | j                  ¬«      S )N©r1   )r/   r1   ©r:   s    r=   ÚcopyzHeaders.copyÍ   s   € Ü�t d§m¡mÔ4Ð4rJ   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
        rR   )r4   rb   r1   r5   rC   Újoinr]   )r:   rE   Únormalized_keyrM   Ú
header_keyÚheader_valuer8   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.
        rA   r   Nr   )rb   r9   r4   Ú	enumerater5   ÚreversedÚappend)
r:   rE   rF   Úset_keyÚ	set_valueÚ
lookup_keyÚidxrM   rg   Ú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)r4   rb   r1   rz   r5   r]   r{   )r:   rE   Údel_keyr€   rM   rg   Ú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 rH   )r4   rb   r1   r5   )r:   rE   rv   rM   s       r=   Ú__contains__zHeaders.__contains__  s?   € Ø—Y‘Y“[×'Ñ'¨¯©Ó6ˆ
Ø°4·:±:×>¡i a¨¨ašcÓ>Ð>Ð>ùÓ>s   ºAc                 ó4   — t        | j                  «       «      S rH   )ÚiterrO   rq   s    r=   Ú__iter__zHeaders.__iter__  s   € Ü�D—I‘I“KÓ Ð rJ   c                 ó,   — t        | j                  «      S rH   )Úlenr5   rq   s    r=   Ú__len__zHeaders.__len__  s   € Ü�4—:‘:‹ÐrJ   Úotherc                 ó  — 	 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)r/   Ú
ValueErrorr5   Úsorted)r:   r�   Úother_headersrM   rE   rF   Ú	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Ú r@   z, encoding=ú(ú))Ú	__class__Ú__name__r1   r7   r+   rZ   Ú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Ð9rJ   ©NNrH   )F)r2   r/   )'rœ   Ú
__module__Ú__qualname__Ú__doc__ÚtypingÚOptionalr   Ústrr>   Úpropertyr1   ÚsetterÚListÚTupleÚbytesrB   ÚKeysViewrO   Ú
ValuesViewrS   Ú	ItemsViewr8   rZ   ÚAnyr^   Úboolrk   rn   rr   rx   r‚   r†   rˆ   ÚIteratorr‹   ÚintrŽ   r–   r£   © rJ   r=   r/   r/   7   s+  „ ñð 15Ø)-ñ"à—‘ Ñ-ð"ð —/‘/ #Ñ&ð"ð 
ó	"ð< ð˜#ò ó ðð0 ‡_�_ð˜cð  dò ó ðð ðF�V—[‘[ §¡¨e°U¨lÑ!;Ñ<ò Fó ðFðX�f—o‘o cÑ*ó Xð	$˜×)Ñ)¨#Ñ.ó 	$ð#�v×'Ñ'¨¨S¨Ñ1ó #ð	
˜VŸ[™[¨¯©°c¸3°hÑ)?Ñ@ó 	
ñ�sð  V§Z¡Zð ¸6¿:¹:ó ñ˜Cð ¨tð ÀÇÁÈCÑ@Pó ñ,)˜fŸo™o¨kÑ:ð )Àdó )ó5ð˜sð  só ð(@˜sð @¨3ð @°4ó @ð0 ˜sð   tó  ð$? §
¡
ð ?¨tó ?ð!˜&Ÿ/™/¨&¯*©*Ñ5ó !ð˜ó ð7˜FŸJ™Jð 7¨4ó 7ð:˜#ô :rJ   r/   c                   ó~  — e Zd Zddddddddddœ	dej                  eef   dej                  def   dej                  e   dej                  e	   dej                  e
   d	ej                  e   d
ej                  e   dej                  e   dej                  ej                     dej                  eedf   dej                  e   fd„Zdej&                  eef   ddfd„Zedefd„«       Zdefd„Zdefd„Zdefd„Zdej&                  eej                  f   fd„Zdej&                  eej                  f   ddfd„Zy)ÚRequestN)	Úparamsr0   ÚcookiesÚcontentÚdataÚfilesÚjsonÚstreamÚ
extensionsÚmethodÚurlr'   rº   r0   r»   r¼   r½   r¾   r¿   rÀ   rÁ   c       	         ó¤  — 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 )Nr@   )rº   zcontent-type)Úcontent_type)r¼   r½   r¾   r¿   Úboundary)r6   r¯   rC   ÚupperrÂ   r'   rÃ   Úcopy_merge_paramsr/   r0   rÁ   ÚCookiesÚset_cookie_headerr^   r	   r   rb   r1   Ú_preparerÀ   r   Úread)r:   rÂ   rÃ   rº   r0   r»   r¼   r½   r¾   r¿   rÀ   rÁ   rÅ   s                r=   r>   zRequest.__init__3  s"  € ô" ˜&¤%Ô(ð �M‰M˜'Ó"×(Ñ(Ô*à—‘“ð 	Œô
 �s“8ˆŒØÐØ—x‘x×1Ñ1¸Ð1Ó@ˆDŒHÜ˜wÓ'ˆŒØ *Ð 2™"¸
ˆŒáÜ�GÓ×.Ñ.¨tÔ4àˆ>Ø15·±×1AÑ1AÀ.Ó1QˆLÜ,ØØØØÜAá#ð ".×!4Ñ!4°T·\±\×5JÑ5JÔ!Kàôô
‰OˆG�Vð �M‰M˜'Ô"Ø ˆDŒKä˜&¤*Ô-Ø—	‘	•ð .ð  !ˆD�KrJ   Údefault_headersr2   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)r8   r4   r0   Ú
setdefaultrÃ   Úhostr|   ÚnetlocrÂ   r/   rB   )r:   rÍ   rE   rF   Úauto_headersÚhas_hostÚhas_content_lengths          r=   rË   zRequest._preparer  sê   € Ø)×/Ñ/Ó1ò 	0‰JˆC�à�y‰y‹{Ð1Ò1Ð6FÈ$Ï,É,Ñ6VØØ�L‰L×#Ñ# C¨Õ/ð		0ð ACˆà˜TŸ\™\Ð)ˆà §¡Ð,ÒSÐ0CÀtÇ|Á|Ð0Sð 	ñ ˜DŸH™HŸMšMØ×Ñ ¨$¯(©(¯/©/Ð :Ô;Ù! d§k¡kÐ5MÑ&MØ×ÑÐ 9Ô:ä˜|¨d¯l©l×.>Ñ.>Ñ>Ó?ˆ�rJ   c                 óF   — t        | d«      s
t        «       ‚| j                  S ©NÚ_content)Úhasattrr   rÝ   rq   s    r=   r¼   zRequest.content‡  s   € ä�t˜ZÔ(Ü Ó"Ð"Ø�}‰}ÐrJ   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Ý   rJ   )rÞ   r6   rÀ   r¨   ÚIterablert   rÝ   r   rq   s    r=   rÌ   zRequest.read�  sd   € ô �t˜ZÔ(Ü˜dŸk™k¬6¯?©?Ô;Ð;Ð;ØŸH™H T§[¡[Ó1ˆDŒMÜ˜dŸk™k¬:Ô6ô )¨¯©Ó7�”Ø�}‰}ÐrJ   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Ý   rJ   N)rÞ   r6   rÀ   r¨   ÚAsyncIterablert   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™   rR   z)>)r›   rœ   rª   rÃ   rÂ   )r:   rž   rÃ   s      r=   r£   zRequest.__repr__©  s=   € Ø—^‘^×,Ñ,ˆ
Ü�$—(‘(‹mˆØ�:�,˜a §¡˜¨b°°°rÐ:Ð:rJ   c                 ór   — | j                   j                  «       D ��ci c]  \  }}|dvr||“Œ c}}S c c}}w )N)rÁ   rÀ   ©Ú__dict__r8   ©r:   ÚnamerF   s      r=   Ú__getstate__zRequest.__getstate__®  sB   € ð  $Ÿ}™}×2Ñ2Ó4÷
á��eØÐ3Ñ3ð �%‰Kó
ð 	
ùó 
ó   ž3Ústatec                 óz   — |j                  «       D ]  \  }}t        | ||«       Œ i | _        t        «       | _        y rH   )r8   ÚsetattrrÁ   r   rÀ   ©r:   rð   rí   rF   s       r=   Ú__setstate__zRequest.__setstate__µ  s8   € Ø Ÿ;™;›=ò 	'‰KˆD�%Ü�D˜$ Õ&ð	'àˆŒÜ&Ó(ˆ�rJ   )rœ   r¥   r¦   r¨   ÚUnionrª   r¯   r©   r   r   r   r    r!   r#   r³   r&   r   r"   r>   ÚDictrË   r«   r¼   rÌ   ræ   r£   rî   rô   r·   rJ   r=   r¹   r¹   2  s«  „ ð 48Ø04Ø04Ø37Ø-1Ø/3Ø,0ØFJØ9=ò=!à—‘˜S %˜ZÑ(ð=!ð �\‰\˜% ˜*Ñ%ð=!ð
 —‘ Ñ0ð=!ð —‘ Ñ-ð=!ð —‘ Ñ-ð=!ð —‘ Ñ0ð=!ð �o‰o˜kÑ*ð=!ð �‰˜|Ñ,ð=!ð �o‰o˜fŸj™jÑ)ð=!ð —‘˜^¨_¸dÐBÑCð=!ð —O‘OÐ$5Ñ6ó=!ð~@¨¯©°C¸°HÑ(=ð @À$ó @ð* ð˜ò ó ðð
�eó ð˜Uó ð;˜#ó ;ð

˜fŸk™k¨#¨v¯z©z¨/Ñ:ó 
ð) &§+¡+¨c°6·:±:¨oÑ">ð )À4ô )rJ   r¹   c                   óž  — e Zd Zdddddddddddœ
dedej
                  e   dej
                  e   dej
                  e   dej
                  e   d	ej                  d
ej                  eedf   dej
                  e   dej
                  e   dej
                  ej                  d       dej                  eej                   egef   f   fd„Zdej&                  eef   ddfd„Zedej.                  fd„«       Zej2                  dej.                  ddfd„«       Zedefd„«       Zej2                  deddfd„«       Zedefd„«       Zedefd„«       Zedefd„«       Zedefd„«       Zedefd„«       Z edej
                  e   fd„«       Z!e!j2                  deddfd„«       Z!edej
                  e   fd „«       Z"de#fd!„Z$ede%fd"„«       Z&ede%fd#„«       Z'ede%fd$„«       Z(ede%fd%„«       Z)ede%fd&„«       Z*ede%fd'„«       Z+ede%fd(„«       Z,d@d)„Z-d*ej                  dej                  fd+„Z.edAd,„«       Z/edej&                  ej
                  e   ej&                  eef   f   fd-„«       Z0edefd.„«       Z1defd/„Z2dej&                  eej                  f   fd0„Z3d1ej&                  eej                  f   ddfd2„Z4defd3„Z5	 dBd4ej
                  e   dejl                  e   fd5„Z7	 dBd4ej
                  e   dejl                  e   fd6„Z8dejl                  e   fd7„Z9	 dBd4ej
                  e   dejl                  e   fd8„Z:dCd9„Z;defd:„Z<	 dBd4ej
                  e   dejz                  e   fd;„Z>	 dBd4ej
                  e   dejz                  e   fd<„Z?dejz                  e   fd=„Z@	 dBd4ej
                  e   dejz                  e   fd>„ZAdCd?„ZBy)DÚResponseNrA   )
r0   r¼   ÚtextÚhtmlr¿   rÀ   ÚrequestrÁ   ÚhistoryÚdefault_encodingÚstatus_coder0   r¼   rù   rú   r¿   rÀ   rû   rÁ   rü   rý   c       
         óx  — || _         t        |«      | _        || _        d | _        |	€i n|	| _        |
€g n
t        |
«      | _        d| _        d| _	        || _
        |€Qt        ||||«      \  }}| j                  |«       || _        t        |t        «      r| j!                  «        d| _        y || _        d| _        y )NFr   )rþ   r/   r0   Ú_requestÚnext_requestrÁ   r7   rü   Ú	is_closedÚis_stream_consumedrý   r
   rË   rÀ   r6   r   rÌ   Ú_num_bytes_downloaded)r:   rþ   r0   r¼   rù   rú   r¿   rÀ   rû   rÁ   rü   rý   s               r=   r>   zResponse.__init__½  s¹   € ð 'ˆÔÜ˜wÓ'ˆŒà29ˆŒð 7;ˆÔà4>Ð4F©bÈJˆŒØ$˜_‘r´$°w³-ˆŒàˆŒØ"'ˆÔà 0ˆÔàˆ>Ü-¨g°t¸TÀ4ÓH‰OˆG�VØ�M‰M˜'Ô"Ø ˆDŒKÜ˜&¤*Ô-à—	‘	”ð &'ˆÕ"ð !ˆDŒKà%&ˆÕ"rJ   rÍ   r2   c                 ó°   — |j                  «       D ]C  \  }}|j                  «       dk(  rd| j                  v rŒ(| j                  j                  ||«       ŒE y )NrÏ   zcontent-length)r8   r4   r0   rÕ   )r:   rÍ   rE   rF   s       r=   rË   zResponse._prepareô  sP   € Ø)×/Ñ/Ó1ò 	0‰JˆC�à�y‰y‹{Ð1Ò1Ð6FÈ$Ï,É,Ñ6VØØ�L‰L×#Ñ# C¨Õ/ñ		0rJ   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  rq   s    r=   ÚelapsedzResponse.elapsedû  s,   € ô �t˜ZÔ(Üð+óð ð �}‰}ÐrJ   r	  c                 ó   — || _         y rH   )r  )r:   r	  s     r=   r	  zResponse.elapsed  s	   € àˆ�rJ   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  rq   s    r=   rû   zResponse.request  s*   € ð
 �=‰=Ð ÜØIóð ð �}‰}ÐrJ   rF   c                 ó   — || _         y rH   )r   rI   s     r=   rû   zResponse.request  s	   € àˆ�rJ   c                 óf   — 	 | j                   d   }|j                  dd¬«      S # t        $ r Y yw xY w)NÚhttp_versionr@   Úignore©ÚerrorszHTTP/1.1)rÁ   rC   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_phraser@   r  r  )rÁ   rC   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Ã   rq   s    r=   rÃ   zResponse.url-  s   € ð
 �|‰|×ÑÐrJ   c                 óF   — t        | d«      s
t        «       ‚| j                  S rÜ   )rÞ   r   rÝ   rq   s    r=   r¼   zResponse.content4  s   € ä�t˜ZÔ(Ü!Ó#Ð#Ø�}‰}ÐrJ   c                 ó&  — t        | d«      sz| j                  }|sd| _        | j                  S t        | j                  xs d¬«      }dj                  |j                  | j                  «      |j                  «       g«      | _        | j                  S )NÚ_textr˜   rA   rp   )rÞ   r¼   r  r   r1   rt   rC   Ú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ÐrJ   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.
        r9   rÝ   rA   )rÞ   Úcharset_encodingr(   r6   rý   rª   rÝ   r9   )r:   r1   s     r=   r1   zResponse.encodingE  sv   € ô �t˜[Ô)Ø×,Ñ,ˆHØÐÔ'8¸Ô'BÜ˜d×3Ñ3´SÔ9Ø#×4Ñ4‘HÜ˜T :Ô.Ø#×4Ñ4°T·]±]ÓC�HØ%Ò0¨ˆDŒNØ�~‰~ÐrJ   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‘   r9   rI   s     r=   r1   zResponse.encoding[  s'   € ô �4˜Ô!ÜØQóð ð ˆ�rJ   c                 óT   — | j                   j                  d«      }|€yt        |«      S )zO
        Return the encoding, as specified by the Content-Type header.
        zContent-TypeN)r0   r^   r,   )r:   rÅ   s     r=   r  zResponse.charset_encodingi  s,   € ð
 —|‘|×'Ñ'¨Ó7ˆØÐØä)¨,Ó7Ð7rJ   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)r_   r   r   )Úchildren)rÞ   r0   rk   re   r4   r   r|   r]   r�   r   r   r   )r:   ÚdecodersrS   rF   Údecoder_clss        r=   Ú_get_content_decoderzResponse._get_content_decodert  sâ   € ô
 �t˜ZÔ(Ø46ˆ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þ   rq   s    r=   r&  zResponse.is_informational�  s   € ô
 ×%Ñ% d×&6Ñ&6Ó7Ð7rJ   c                 ó@   — t        j                  | j                  «      S )zU
        A property which is `True` for 2xx status codes, `False` otherwise.
        )r   Ú
is_successrþ   rq   s    r=   r(  zResponse.is_success”  s   € ô
 ×Ñ × 0Ñ 0Ó1Ð1rJ   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þ   rq   s    r=   r*  zResponse.is_redirect›  s   € ô × Ñ  ×!1Ñ!1Ó2Ð2rJ   c                 ó@   — t        j                  | j                  «      S )zU
        A property which is `True` for 4xx status codes, `False` otherwise.
        )r   Úis_client_errorrþ   rq   s    r=   r,  zResponse.is_client_error§  ó   € ô
 ×$Ñ$ T×%5Ñ%5Ó6Ð6rJ   c                 ó@   — t        j                  | j                  «      S )zU
        A property which is `True` for 5xx status codes, `False` otherwise.
        )r   Úis_server_errorrþ   rq   s    r=   r/  zResponse.is_server_error®  r-  rJ   c                 ó@   — t        j                  | j                  «      S )z]
        A property which is `True` for 4xx and 5xx status codes, `False` otherwise.
        )r   Úis_errorrþ   rq   s    r=   r1  zResponse.is_errorµ  s   € ô
 �~‰~˜d×.Ñ.Ó/Ð/rJ   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_REDIRECTr0   rq   s    r=   Úhas_redirect_locationzResponse.has_redirect_location¼  sZ   € ð ×Ñô ×'Ñ'ä—‘ä—‘ä×(Ñ(ä×(Ñ(ððò +ð ˜dŸl™lÐ*ð	
rJ   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(  r9  rþ   r^   Úformatr   )r:   rû   ÚmessageÚstatus_classÚerror_typesr?  s         r=   Úraise_for_statuszResponse.raise_for_statusÓ  sª   € ð —-‘-ˆØˆ?Üð>óð ð
 �?Š?ØˆKà×%Ò%ðwñ ðwð ð
 ×'Ñ'¨3Ñ.ˆà'Ø"ØØñ	
ˆð !—_‘_ \Ð3HÓIˆ
Ø—.‘. °*�.Ó=ˆÜ˜g¨wÀÔFÐFrJ   Úkwargsc                 óB   — t        j                  | j                  fi |¤ŽS rH   )ÚjsonlibÚloadsr¼   )r:   rF  s     r=   r¿   zResponse.jsonø  s   € Ü�}‰}˜TŸ\™\Ñ4¨VÑ4Ð4rJ   c                 ó†   — t        | d«      s*t        «       | _        | j                  j                  | «       | j                  S )NÚ_cookies)rÞ   rÉ   rK  Úextract_cookiesrq   s    r=   r»   zResponse.cookiesû  s1   € ä�t˜ZÔ(Ü#›IˆDŒMØ�M‰M×)Ñ)¨$Ô/Ø�}‰}ÐrJ   c                 óº   — | j                   j                  d«      }i }|r;t        |«      }|D ]+  }|j                  d«      xs |j                  d«      }|||<   Œ- |S )zI
        Returns the parsed header links of the response, if any
        ÚlinkÚrelrÃ   )r0   r^   r-   )r:   ÚheaderÚldictÚlinksrN  rE   s         r=   rR  zResponse.links  sc   € ð
 —‘×!Ñ! &Ó)ˆØˆÙÜ& vÓ.ˆEØò "�Ø—h‘h˜u“oÒ8¨¯©°%«�Ø!��c’
ð"ð ˆrJ   c                 ó   — | j                   S rH   )r  rq   s    r=   Únum_bytes_downloadedzResponse.num_bytes_downloaded  s   € à×)Ñ)Ð)rJ   c                 ó<   — d| j                   › d| j                  › d�S )Nz<Response [ú ú]>)rþ   r  rq   s    r=   r£   zResponse.__repr__  s%   € Ø˜T×-Ñ-Ð.¨a°×0BÑ0BÐ/CÀ2ÐFÐFrJ   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ï   rð   c                 óˆ   — |j                  «       D ]  \  }}t        | ||«       Œ d| _        i | _        t	        «       | _        y )NT)r8   rò   r  rÁ   r   rÀ   ró   s       r=   rô   zResponse.__setstate__  s?   € Ø Ÿ;™;›=ò 	'‰KˆD�%Ü�D˜$ Õ&ð	'àˆŒØˆŒÜ&Ó(ˆ�rJ   c                 óz   — t        | d«      s$dj                  | j                  «       «      | _        | j                  S )ú7
        Read and return the response content.
        rÝ   rJ   )rÞ   rt   Ú
iter_bytesrÝ   rq   s    r=   rÌ   zResponse.read%  s/   € ô �t˜ZÔ(ØŸH™H T§_¡_Ó%6Ó7ˆDŒMØ�}‰}ÐrJ   Ú
chunk_sizec              #   ó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, and brotli encoded responses.
        rÝ   Nr   r   ©r]  ©rû   )rÞ   r�   rÝ   ÚrangeÚmaxr$  r   r   r   Úiter_rawrC   r  ©r:   r]  Úir  ÚchunkerÚ	raw_bytesÚdecodedÚchunks           r=   r\  zResponse.iter_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ñ 	 Ø!%§¡£ò $�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.
        rA   rp   r`  ra  N)r   r1   r   r   r   r\  rC   r  ©r:   r]  r  rg  Úbyte_contentÚtext_contentrj  s          r=   Ú	iter_textzResponse.iter_textF  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©Nra  )r   r   r   rp  rC   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   r`  ra  N)r  r   r  r   r6   rÀ   r&   r  r  r   r   r   r�   rC   r  Úclose©r:   r]  rg  Úraw_stream_bytesrj  s        r=   rd  zResponse.iter_rawd  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.Tra  N)r6   rÀ   r&   r  r  r   r   rx  rq   s    r=   rx  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Ý   rJ   N)rÞ   rt   Ú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r_  )rÞ   r�   rÝ   rb  rc  r$  r   r   r   Ú	aiter_rawrC   r  re  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rl  )r   r1   r   r   r   r~  rC   r  rm  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rr  )r   r   r   r‚  rC   r  rs  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)rw  z6Attempted to call an async iterator on an sync stream.Tr   r`  ra  N)r  r   r  r   r6   rÀ   r   r  r  r   r   r   r�   rC   r  Úaclosery  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.Tra  N)r6   rÀ   r   r  r  r   r   r†  rq   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)r2   rø   )r2   rÉ   rH   )r2   N)Crœ   r¥   r¦   r¶   r¨   r©   r   r$   rª   r³   rõ   r&   r   r¹   r%   r­   ÚCallabler¯   r>   rö   rË   r«   ÚdatetimeÚ	timedeltar	  r¬   rû   r  r  r'   rÃ   r¼   rù   r1   r  r   r$  r´   r&  r(  r*  r,  r/  r1  r9  rE  r¿   r»   rR  rT  r£   rî   rô   rÌ   rµ   r\  rp  ru  rd  rx  ræ   ÚAsyncIteratorr~  r‚  r„  r€  r†  r·   rJ   r=   rø   rø   ¼  s»  „ ð
 15Ø48Ø%)Ø%)ØØFJØ,0Ø:>Ø<@ØMTò5'àð5'ð —‘ Ñ-ð	5'ð
 —‘ Ñ1ð5'ð �o‰o˜cÑ"ð5'ð �o‰o˜cÑ"ð5'ð �j‰jð5'ð —‘˜^¨_¸dÐBÑCð5'ð —‘ Ñ)ð5'ð —O‘OÐ$6Ñ7ð5'ð —‘ §¡¨ZÑ!8Ñ9ð5'ð !Ÿ,™, s¨F¯O©O¸U¸GÀS¸LÑ,IÐ'IÑJó5'ðn0¨¯©°C¸°HÑ(=ð 0À$ó 0ð ð
˜×+Ñ+ò 
ó ð
ð ‡^�^ð ˜x×1Ñ1ð  °dò  ó ð ð ð˜ò ó ðð ‡^�^ð˜Wð ¨ò ó ðð ðA˜cò Aó ðAð ðB˜sò Bó ðBð ð �Sò  ó ð ð ð˜ò ó ðð
 ð�cò ó ðð ð˜&Ÿ/™/¨#Ñ.ò ó ðð* ‡_�_ð˜cð  dò ó ðð ð8 &§/¡/°#Ñ"6ò 8ó ð8ð nó ð2 ð8 $ò 8ó ð8ð ð2˜Dò 2ó ð2ð ð	3˜Tò 	3ó ð	3ð ð7 ò 7ó ð7ð ð7 ò 7ó ð7ð ð0˜$ò 0ó ð0ð ð
 tò 
ó ð
ó,#GðJ5˜VŸZ™Zð 5¨F¯J©Jó 5ð òó ðð ð�v—{‘{ 6§?¡?°3Ñ#7¸¿¹ÀSÈ#ÀXÑ9NÐ#NÑOò ó ðð ð* cò *ó ð*ðG˜#ó Gð
˜fŸk™k¨#¨v¯z©z¨/Ñ:ó 
ð) &§+¡+¨c°6·:±:¨oÑ">ð )À4ó )ð�eó ð 26ñ Ø Ÿ/™/¨#Ñ.ð à	�‰˜Ñ	ó ð4 26ñØ Ÿ/™/¨#Ñ.ðà	�‰˜Ñ	óð*˜FŸO™O¨CÑ0ó ð 26ñØ Ÿ/™/¨#Ñ.ðà	�‰˜Ñ	óó8$ð˜Uó ð 26ñ Ø Ÿ/™/¨#Ñ.ð à	×	Ñ	˜eÑ	$ó ð4 26ñØ Ÿ/™/¨#Ñ.ðà	×	Ñ	˜cÑ	"óð* 6×#7Ñ#7¸Ñ#<ó ð 26ñØ Ÿ/™/¨#Ñ.ðà	×	Ñ	˜eÑ	$óô8+rJ   rø   c                   ó   — e Zd ZdZddej
                  e   ddfd„Zdeddfd„Z	de
ddfd	„Zd d
ededededdf
d„Z	 	 	 d!d
edej
                  e   dej
                  e   dej
                  e   dej
                  e   f
d„Z	 	 d"d
edej
                  e   dej
                  e   ddfd„Z	 d"dej
                  e   dej
                  e   ddfd„Zddej
                  e   ddfd„Zd
ededdfd„Zd
edefd„Zd
eddfd„Zdefd„Zdej.                  e   fd„Zdefd„Zdefd„Z G d„ dej:                  j                  «      Z G d„ d«      Zy)#rÉ   z-
    HTTP Cookies, as a mutable mapping.
    Nr»   r2   c                 óÜ  — |�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 rH   )	r6   r�   r   Újarr8   Úsetr7   rÉ   Ú
set_cookie)r:   r»   rE   rF   Úcookies        r=   r>   zCookies.__init__û  sÆ   € Øˆ?œj¨´$Ô7Ü “{ˆDŒHÜ˜'¤4Ô(Ø")§-¡-£/ò )‘J�C˜Ø—H‘H˜S %Õ(ñ)ð )ô ˜¤Ô&Ü “{ˆDŒHØ%ò %‘
��UØ—‘˜˜eÕ$ñ%ä˜¤Ô)Ü “{ˆDŒHØ!Ÿ+™+ò ,�Ø—‘×#Ñ# FÕ+ñ,ð ˆD�HrJ   r@  c                 ó”   — | j                  |«      }| j                  |j                  «      }| j                  j	                  ||«       y)zO
        Loads any cookies based on the response `Set-Cookie` headers.
        N)Ú_CookieCompatResponseÚ_CookieCompatRequestrû   rŽ  rL  )r:   r@  Úurllib_responseÚurllib_requests       r=   rL  zCookies.extract_cookies  s>   € ð ×4Ñ4°XÓ>ˆØ×2Ñ2°8×3CÑ3CÓDˆà�‰× Ñ  °.ÕArJ   rû   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Ó;ˆØ�‰×"Ñ" >Õ2rJ   rí   rF   ÚdomainÚpathc                 ó   — 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í   rF   ÚportNÚport_specifiedFr™  Údomain_specifiedÚdomain_initial_dotú.rš  Úpath_specifiedÚsecureÚexpiresÚdiscardTÚcommentÚcomment_urlÚrestÚHttpOnlyÚrfc2109r·   )r´   Ú
startswithr   rŽ  r�  )r:   rí   rF   r™  rš  rF  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Õ#rJ   r[   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   rF   )r:   rí   r[   r™  rš  rF   r‘  rB  s           r=   r^   zCookies.get6  s   € ð ˆØ—h‘hò 	-ˆFØ�{‰{˜dÓ"Ø�> V§]¡]°fÓ%<Ø�| v§{¡{°dÓ':Ø Ð,Ø(IÈ$ÈÐ&P˜GÜ"0°Ó"9Ð9Ø &§¡™ð	-ð ˆ=ØˆNØˆrJ   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.deleteO  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.clearg  sK   € ð ˆØÐØ�K‰K˜ÔØÐØÐ%Ð%Ð%Ø�K‰K˜ÔØˆ�‰�‰˜ÒrJ   c                 ór   — t        |«      }|j                  D ]  }| j                  j                  |«       Œ y rH   )rÉ   rŽ  r�  )r:   r»   r‘  s      r=   rn   zCookies.updatev  s1   € Ü˜'Ó"ˆØ—k‘kò 	(ˆFØ�H‰H×Ñ Õ'ñ	(rJ   c                 ó&   — | j                  ||«      S rH   )r�  rì   s      r=   r‚   zCookies.__setitem__{  s   € Ø�x‰x˜˜eÓ$Ð$rJ   c                 óB   — | j                  |«      }|€t        |«      ‚|S rH   )r^   r]   rì   s      r=   rx   zCookies.__getitem__~  s#   € Ø—‘˜“ˆØˆ=Ü˜4“.Ð ØˆrJ   c                 ó$   — | j                  |«      S rH   )r°  )r:   rí   s     r=   r†   zCookies.__delitem__„  s   € Ø�{‰{˜4Ó Ð rJ   c                 ó,   — t        | j                  «      S rH   )r�   rŽ  rq   s    r=   rŽ   zCookies.__len__‡  s   € Ü�4—8‘8‹}ÐrJ   c                 ó(   — d„ | j                   D «       S )Nc              3   ó4   K  — | ]  }|j                   –— Œ y ­wrH   )rí   )Ú.0r‘  s     r=   ú	<genexpr>z#Cookies.__iter__.<locals>.<genexpr>‹  s   è ø€ Ò3 �—•Ñ3ùs   ‚©rŽ  rq   s    r=   r‹   zCookies.__iter__Š  s   € Ù3¨$¯(©(Ô3Ð3rJ   c                 ó(   — | j                   D ]  } y y)NTFr¼  )r:   rM   s     r=   Ú__bool__zCookies.__bool__�  s   € Ø—‘ò 	ˆAÙð	àrJ   c                 óº   — dj                  | j                  D �cg c],  }d|j                  › d|j                  › d|j                  › d�‘Œ. c}«      }d|› d�S c c}w )NrR   z<Cookie ú=z for z />z	<Cookies[rW  )rt   rŽ  rí   rF   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                   óD   ‡ — e Zd ZdZdeddfˆ fd„Zdededdfˆ fd„Zˆ xZS )	úCookies._CookieCompatRequestú‚
        Wraps a `Request` instance up in a compatibility interface suitable
        for use with `CookieJar` operations.
        rû   r2   Nc                 ó˜   •— t         ‰| �  t        |j                  «      t	        |j
                  «      |j                  ¬«       || _        y )N)rÃ   r0   rÂ   )Úsuperr>   rª   rÃ   r�   r0   rÂ   rû   )r:   rû   r›   s     €r=   r>   z%Cookies._CookieCompatRequest.__init__¢  s=   ø€ Ü‰GÑÜ˜Ÿ™Ó$Ü˜WŸ_™_Ó-Ø—~‘~ð ô ð
 #ˆD�LrJ   rE   rF   c                 óX   •— t         ‰| �  ||«       || j                  j                  |<   y rH   )rÆ  Úadd_unredirected_headerrû   r0   )r:   rE   rF   r›   s      €r=   rÈ  z4Cookies._CookieCompatRequest.add_unredirected_headerª  s&   ø€ Ü‰GÑ+¨C°Ô7Ø(-ˆD�L‰L× Ñ  Ò%rJ   )	rœ   r¥   r¦   r§   r¹   r>   rª   rÈ  Ú__classcell__)r›   s   @r=   r”  rÃ  œ  s:   ø„ ñ	ð
	# Gð 	#°õ 	#ð	.¨sð 	.¸3ð 	.À4÷ 	.ñ 	.rJ   r”  c                   óP   — e Zd ZdZdefd„Zdej                  j                  fd„Z	y)úCookies._CookieCompatResponserÄ  r@  c                 ó   — || _         y rH   )r@  )r:   r@  s     r=   r>   z&Cookies._CookieCompatResponse.__init__´  s	   € Ø$ˆD�MrJ   r2   c                 ó¤   — t         j                  j                  «       }| j                  j                  j                  «       D ]
  \  }}|||<   Œ |S rH   )ÚemailrB  ÚMessager@  r0   rZ   )r:   ÚinforE   rF   s       r=   rÐ  z"Cookies._CookieCompatResponse.info·  sL   € Ü—=‘=×(Ñ(Ó*ˆDØ"Ÿm™m×3Ñ3×?Ñ?ÓAò "‘
��Uð "��S’	ð	"ð
 ˆKrJ   N)
rœ   r¥   r¦   r§   rø   r>   rÎ  rB  rÏ  rÐ  r·   rJ   r=   r“  rË  ®  s)   „ ñ	ð
	% Xó 	%ð	˜%Ÿ-™-×/Ñ/ô 	rJ   r“  rH   )r˜   ú/)NNNr¤   ) rœ   r¥   r¦   r§   r¨   r©   r   r>   rø   rL  r¹   rÊ   rª   r�  r^   r°  r®  rn   r‚   rx   r†   r¶   rŽ   rµ   r‹   r´   r¾  r£   Úurllibrû   r”  r“  r·   rJ   r=   rÉ   rÉ   ö  s  „ ññ §¡°Ñ <ð Èó ð"B¨ð B°Tó Bð3¨ð 3°Tó 3ñ$˜ð $ Cð $°ð $Àð $Ètó $ð: )-Ø'+Ø%)ñàðð —‘ Ñ%ðð —‘ Ñ$ð	ð
 �o‰o˜cÑ"ðð 
�‰˜Ñ	óð8 (,Ø%)ñ	DàðDð —‘ Ñ$ðDð �o‰o˜cÑ"ð	Dð
 
óDð2 QUñØ—o‘o cÑ*ðØ9?¿¹ÈÑ9Mðà	óñ(˜fŸo™o¨kÑ:ð (Àdó (ð
% ð %¨Cð %°Dó %ð ð ¨ó ð! ð !¨ó !ð˜ó ð4˜&Ÿ/™/¨#Ñ.ó 4ð˜$ó ð
,˜#ó ,ô.˜vŸ~™~×5Ñ5ô .÷$ò rJ   rÉ   )Br‰  Úemail.messagerÎ  r¿   rH  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-   ÚMutableMappingrª   r/   r¹   rø   rÉ   r·   rJ   r=   ú<module>rß     s¿   ðÛ Û Û Û Û Ý #ß ,ç SÓ S÷	÷ 	ó 	÷÷ ñ õ AÝ  ÷÷ ÷ ñ õ ÷÷ ôx:ˆf×#Ñ# C¨ HÑ-ô x:÷vG)ñ G)÷Tw+ñ w+ôtHˆf×#Ñ# C¨ HÑ-õ HrJ   