ó
    §ZÇhœ®  ã                  ó  • S SK Jr  S SKrS SKrS SKrS SKrS SKrS SK	r	S SK
rS SKJr  S SKJrJr  SSKJrJrJrJr  SSKJrJrJrJrJrJrJrJr  SSKJ r J!r!J"r"J#r#J$r$J%r%J&r&  SS	K'J(r(  SS
K)J*r*  SSK+J,r,J-r-J.r.J/r/J0r0J1r1J2r2J3r3J4r4J5r5J6r6  SSK7J8r8  SSK9J:r:J;r;  / SQr<SS1r=SS jr>S S!S jjr?S S"S jjr@S#S jrAS$S jrB    S%S jrC " S S\	Rˆ                  \E\E4   5      rF " S S5      rG " S S5      rH " S S\	Rˆ                  \E\E4   5      rIg)&é    )Ú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)Úto_bytes_or_strÚto_str)ÚCookiesÚHeadersÚRequestÚResponseÚauthorizationzproxy-authorizationc                óR   •  [         R                  " U 5        g! [         a     gf = f)z/
Return `True` if `encoding` is a known codec.
FT)ÚcodecsÚlookupÚLookupError©Úencodings    ÚJ/home/mande/repo/quber/.venv/lib/python3.13/site-packages/httpx/_models.pyÚ_is_known_encodingr7   8   s,   € ðÜ�Š�hÔð øô ó Ùðús   ‚ ™
&¥&c                ód   • [        U [        5      (       a  U $ U R                  U=(       d    S5      $ )z=
Coerce str/bytes into a strictly byte-wise HTTP header key.
Úascii)Ú
isinstanceÚbytesÚencode)Úkeyr5   s     r6   Ú_normalize_header_keyr>   C   s)   € ô ˜S¤%×(Ñ(ˆ3ÐM¨c¯j©j¸×9LÀWÓ.MÐMó    c                ó¼   • [        U [        5      (       a  U $ [        U [        5      (       d  [        S[	        U 5       35      eU R                  U=(       d    S5      $ )z?
Coerce str/bytes into a strictly byte-wise HTTP header value.
z'Header value must be str or bytes, not r9   )r:   r;   ÚstrÚ	TypeErrorÚtyper<   )Úvaluer5   s     r6   Ú_normalize_header_valuerE   J   sN   € ô �%œ×ÑØˆÜ�eœS×!Ñ!ÜÐAÄ$ÀuÃ+ÀÐOÓPÐPØ�<‰<˜×+ GÓ,Ð,r?   c                ód   • [         R                  R                  5       nXS'   UR                  S S9$ )Núcontent-type)Úfailobj)ÚemailÚmessageÚMessageÚget_content_charset)Úcontent_typeÚmsgs     r6   Ú_parse_content_type_charsetrO   U   s2   € ô �-‰-×
Ñ
Ó
!€CØ&ˆÑØ×"Ñ"¨4Ð"Ð0Ð0r?   c                óÖ  • / nSnU R                  U5      n U (       d  U$ [        R                  " SU 5       HŠ  n UR                  SS5      u  pESUR                  S5      0nUR                  S5       H9  n UR                  S5      u  p€U R                  U5      XhR                  U5      '   M;     UR	                  U5        MŒ     U$ ! [         a    USpT N‡f = f! [         a       M8  f = f)	aÿ  
Returns a list of parsed link headers, for more info see:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Link
The generic syntax of those is:
Link: < uri-reference >; param1=value1; param2="value2"
So for instance:
Link; '<http:/.../front.jpeg>; type="image/jpeg",<http://.../back.jpeg>;'
would return
    [
        {"url": "http:/.../front.jpeg", "type": "image/jpeg"},
        {"url": "http://.../back.jpeg"},
    ]
:param value: HTTP Link entity-header field
:return: list of parsed link headers
z '"z, *<Ú;r   Ú Úurlz<> '"Ú=)ÚstripÚreÚsplitÚ
ValueErrorÚappend)	rD   ÚlinksÚreplace_charsÚvalrS   ÚparamsÚlinkÚparamr=   s	            r6   Ú_parse_header_linksr`   ]   sé   € ð  #%€EØ€MØ�K‰K˜Ó&€EÞØˆÜ�xŠx˜ Ö&ˆð	"ØŸ)™) C¨Ó+‰KˆCð �s—y‘y Ó*Ð+ˆØ—\‘\ #Ö&ˆEðØ"Ÿ[™[¨Ó-‘
�ð .3¯[©[¸Ó-GˆD—‘˜=Ó)Ó*ñ 'ð 	�‰�TÖñ 'ð €Løô ó 	"Ø˜r’ð	"ûô ó Ûðús#   ºCÁ6CÃCÃCÃ
C(Ã'C(c              #  ó‚   #   • U  H5  u  p[        UR                  5       5      [        ;   a
  [        SUS9nX4v •  M7     g 7f)Nz[secure])Úmatch_type_of)r*   ÚlowerÚSENSITIVE_HEADERSr)   )ÚitemsÚkÚvs      r6   Ú_obfuscate_sensitive_headersrh   ‚   s:   é € ó ‰ˆÜ�!—'‘'“)ÓÔ 1Ó1Ü 
¸!Ñ<ˆAØˆdŒ
ò ùs   ‚=?c                  ó0  • \ rS rSrSr  S     SS jjr\SS j5       r\R                  SS j5       r\SS j5       r	SS jr
SS	 jrS S
 jrS!S jrS"S#S jjrS$S%S jjrS"S&S jjrS'S jrS(S jrS)S jrS*S jrS+S jrS,S jrS-S jrS.S jrSS jrSrg)/r,   é‹   z1
HTTP headers, as a case-insensitive multi-dict.
Nc                óü  • / U l         [        U[        5      (       a  [        UR                   5      U l         O¿[        U[        5      (       a[  UR                  5        HF  u  p4[        X25      n[        XB5      nU R                   R                  XUR                  5       U45        MH     OOUbL  U HF  u  p4[        X25      n[        XB5      nU R                   R                  XUR                  5       U45        MH     X l
        g ©N)Ú_listr:   r,   Úlistr   re   r>   rE   rY   rc   Ú	_encoding)ÚselfÚheadersr5   rf   rg   Ú	bytes_keyÚbytes_values          r6   Ú__init__ÚHeaders.__init__�   sÆ   € ð
 ˆŒ
ä�gœw×'Ñ'Ü˜gŸm™mÓ,ˆD�JÜ˜¤×)Ñ)ØŸ™ž‘�Ü1°!Ó>�	Ü5°aÓB�Ø—
‘
×!Ñ! 9¯o©oÓ.?ÀÐ"MÖNò (ð Ñ Û‘�Ü1°!Ó>�	Ü5°aÓB�Ø—
‘
×!Ñ! 9¯o©oÓ.?ÀÐ"MÖNñ  ð
 "�r?   c                ó
  • U R                   cY  S HL  nU R                   H(  u  p# UR                  U5        UR                  U5        M*     Xl           U R                   $    SU l         U R                   $ ! [         a       Mq  f = f)zV
Header encoding is mandated as ascii, but we allow fallbacks to utf-8
or iso-8859-1.
)r9   úutf-8z
iso-8859-1)ro   ÚrawÚdecodeÚUnicodeDecodeError)rp   r5   r=   rD   s       r6   r5   ÚHeaders.encoding¦   s‚   € ð �>‰>Ñ!Û.�Ø"&§(¤(‘J�CðØŸ
™
 8Ô,ØŸ™ XÖ.ñ #+ð &.”NØð
 �~‰~Ðñ! /ð ".�”Ø�~‰~Ðøô .ó Ûðús   ¥"A3Á3
BÂBc                ó   • Xl         g rl   )ro   ©rp   rD   s     r6   r5   r{   ¿   s   € à�r?   c                óZ   • U R                    VVVs/ s H	  u  po1U4PM     snnn$ s  snnnf )z8
Returns a list of the raw header items, as byte pairs.
)rm   )rp   Úraw_keyÚ_rD   s       r6   rx   ÚHeaders.rawÃ   s(   € ð
 ;?¿*º*ÕEº*Ñ%6 W°˜%Ó ¹*ÓEÐEùÔEs   ‘&c                ó¦   • U R                    VVVs0 s H!  u  po2R                  U R                  5      S _M#     snnnR                  5       $ s  snnnf rl   )rm   ry   r5   Úkeys©rp   r€   r=   rD   s       r6   rƒ   ÚHeaders.keysÊ   s;   € ØEIÇZÂZÕPÂZ±M°A¸E—
‘
˜4Ÿ=™=Ó)¨4Ò/ÁZÓP×UÑUÓWÐWùÔPs   ‘(Ac                óò   • 0 nU R                    HV  u  p#nUR                  U R                  5      nUR                  U R                  5      nXQ;   a  X==   SU 3-  ss'   MR  XaU'   MX     UR                  5       $ )Nú, )rm   ry   r5   Úvalues©rp   Úvalues_dictr€   r=   rD   Ústr_keyÚ	str_values          r6   rˆ   ÚHeaders.valuesÍ   sq   € Ø&(ˆØ!ŸZœZ‰MˆA�EØ—j‘j §¡Ó/ˆGØŸ™ T§]¡]Ó3ˆIØÓ%ØÓ$¨"¨Y¨KÐ(8Ñ8Õ$à'0˜GÓ$ñ (ð ×!Ñ!Ó#Ð#r?   c                óò   • 0 nU R                    HV  u  p#nUR                  U R                  5      nUR                  U R                  5      nXQ;   a  X==   SU 3-  ss'   MR  XaU'   MX     UR                  5       $ )zƒ
Return `(key, value)` items of headers. Concatenate headers
into a single comma separated value when a key occurs multiple times.
r‡   )rm   ry   r5   re   r‰   s          r6   re   ÚHeaders.itemsØ   ss   € ð
 ')ˆØ!ŸZœZ‰MˆA�EØ—j‘j §¡Ó/ˆGØŸ™ T§]¡]Ó3ˆIØÓ%ØÓ$¨"¨Y¨KÐ(8Ñ8Õ$à'0˜GÓ$ñ (ð × Ñ Ó"Ð"r?   c           	     óÀ   • U R                    VVVs/ s H<  u  pnUR                  U R                  5      UR                  U R                  5      4PM>     snnn$ s  snnnf )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.
)rm   ry   r5   r„   s       r6   Úmulti_itemsÚHeaders.multi_itemsç   sP   € ð "&§¢õ
â!+‘�˜ð �Z‰Z˜Ÿ™Ó&¨¯©°T·]±]Ó(CÓDÙ!+ó
ð 	
ùô 
s   ‘AAc                ó0   •  X   $ ! [          a    Us $ f = f)zp
Return a header value. If multiple occurrences of the header occur
then concatenate them together with commas.
)ÚKeyError)rp   r=   Údefaults      r6   ÚgetÚHeaders.getò   s#   € ð
	Ø‘9ÐøÜó 	ØŠNð	ús   ‚ †”c                ó¸  • UR                  5       R                  U R                  5      nU R                   VVVs/ s H7  u  pEnUR                  5       U:X  d  M  UR	                  U R                  5      PM9     nnnnU(       d  U$ / nU HA  n	UR                  U	R                  S5       V
s/ s H  oªR                  5       PM     sn
5        MC     U$ s  snnnf s  sn
f )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.
Ú,)rc   r<   r5   rm   ry   ÚextendrW   rU   )rp   r=   Úsplit_commasÚget_header_keyr€   Úitem_keyÚ
item_valuerˆ   Úsplit_valuesrD   Úitems              r6   Úget_listÚHeaders.get_listü   s¿   € ð Ÿ™›×+Ñ+¨D¯M©MÓ:ˆð ,0¯:ª:õ
â+5Ñ'�˜ZØ�~‰~Ó >Ñ1ó -ˆJ×Ñ˜dŸm™mÖ,Ù+5ð 	ò 
ö ØˆMàˆÛˆEØ×Ñ¸%¿+¹+ÀcÔ:JÓ KÒ:J°$§¡¦Ñ:JÑ KÖLñ àÐùô
ùò !Ls   ºCÁCÂ*C
c                óÂ   • [        U5      nUR                  5        H  nX ;   d  M
  U R                  U5        M     U R                  R	                  UR                  5        g rl   )r,   rƒ   Úpoprm   rš   )rp   rq   r=   s      r6   ÚupdateÚHeaders.update  sD   € Ü˜'Ó"ˆØ—<‘<–>ˆCØ�{Ø—‘˜–ñ "ð 	�
‰
×Ñ˜'Ÿ-™-Õ(r?   c                ó(   • [        X R                  S9$ )Nr4   )r,   r5   ©rp   s    r6   ÚcopyÚHeaders.copy  s   € Ü�t§m¡mÑ4Ð4r?   c                ó.  • UR                  5       R                  U R                  5      nU R                   VVVs/ s H(  u  p4nXB:X  d  M  UR	                  U R                  5      PM*     nnnnU(       a  SR                  U5      $ [        U5      es  snnnf )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
r‡   )rc   r<   r5   rm   ry   Újoinr”   )rp   r=   Únormalized_keyr€   Ú
header_keyÚheader_valuere   s          r6   Ú__getitem__ÚHeaders.__getitem__  sƒ   € ð Ÿ™›×+Ñ+¨D¯M©MÓ:ˆð 04¯zªzõ
â/9Ñ+�˜|ØÑ+ó /ˆL×Ñ §¡Ö.Ù/9ð 	ò 
ö Ø—9‘9˜UÓ#Ð#ä�s‹mÐùô
s   ºBÁ
Bc                óè  • UR                  U R                  =(       d    S5      nUR                  U R                  =(       d    S5      nUR                  5       n[        U R                  5       VVVs/ s H  u  nu  pxnX…:X  d  M  UPM     n	nnn[        U	SS 5       H  nU R                  U	 M     U	(       a  U	S   nX5U4U R                  U'   gU R                  R                  X5U45        gs  snnnf )z[
Set the header `key` to `value`, removing any duplicate entries.
Retains insertion order.
rw   r   Nr   )r<   ro   rc   Ú	enumeraterm   ÚreversedrY   )
rp   r=   rD   Úset_keyÚ	set_valueÚ
lookup_keyÚidxr€   r�   Úfound_indexess
             r6   Ú__setitem__ÚHeaders.__setitem__0  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   Á2C-ÂC-c                óP  • UR                  5       R                  U R                  5      n[        U R                  5       VVVs/ s H!  u  nu  pEnUR                  5       U:X  d  M  UPM#     nnnnU(       d  [        U5      e[        U5       H  nU R                  U	 M     gs  snnnf )z
Remove the header `key`.
N)rc   r<   r5   r³   rm   r”   r´   )rp   r=   Údel_keyr¸   r€   r�   Úpop_indexess          r6   Ú__delitem__ÚHeaders.__delitem__H  s�   € ð —)‘)“+×$Ñ$ T§]¡]Ó3ˆô *3°4·:±:Ô)>õ
â)>Ñ%�Ñ%�a 1Ø�~‰~Ó 7Ñ*÷ Ù)>ð 	ò 
ö Ü˜3“-Ðä˜KÖ(ˆCØ—
‘
˜3’ò )ùô
s   ÁB!Á%B!c                ó¦   • UR                  5       R                  U R                  5      nX R                   VVs/ s H  u  p1o1PM	     snn;   $ s  snnf rl   )rc   r<   r5   rm   )rp   r=   r®   r€   s       r6   Ú__contains__ÚHeaders.__contains__Z  s?   € Ø—Y‘Y“[×'Ñ'¨¯©Ó6ˆ
Ø·:²:Ô>²:¡i a¨ašc±:Ò>Ñ>Ð>ùÓ>s   ¹Ac                ó4   • [        U R                  5       5      $ rl   )Úiterrƒ   r¨   s    r6   Ú__iter__ÚHeaders.__iter__^  s   € Ü�D—I‘I“KÓ Ð r?   c                ó,   • [        U R                  5      $ rl   )Úlenrm   r¨   s    r6   Ú__len__ÚHeaders.__len__a  s   € Ü�4—:‘:‹Ðr?   c                ó  •  [        U5      nU R                   VVVs/ s H	  u  p4oTU4PM     nnnnUR                   VVVs/ s H	  u  p4oTU4PM     nnnn[        U5      [        U5      :H  $ ! [         a     gf = fs  snnnf s  snnnf )NF)r,   rX   rm   Úsorted)rp   ÚotherÚother_headersr€   r=   rD   Ú	self_listÚ
other_lists           r6   Ú__eq__ÚHeaders.__eq__d  sƒ   € ð	Ü# E›NˆMð 8<·z²zÕB²z¡m a¨e˜5“\±zˆ	ÒBØ8E×8KÒ8KÕLÒ8K¡} q¨u˜E“lÑ8Kˆ
ÒLÜ�iÓ ¤F¨:Ó$6Ñ6Ð6øô ó 	Ùð	üô CùÜLs   ‚A, �A<ÁBÁ,
A9Á8A9c                ó4  • U R                   R                  nSnU R                  S:w  a  SU R                  < 3n[        [	        U R                  5       5      5      n[        U5      n[        U5      [        U5      :H  nU(       a  U SU< U S3$ U SU< U S3$ )NrR   r9   z, encoding=Ú(Ú))Ú	__class__Ú__name__r5   rn   rh   r‘   ÚdictrÉ   )rp   Ú
class_nameÚencoding_strÚas_listÚas_dictÚno_duplicate_keyss         r6   Ú__repr__ÚHeaders.__repr__n  s™   € Ø—^‘^×,Ñ,ˆ
àˆØ�=‰=˜GÓ#Ø(¨¯©Ñ(9Ð:ˆLäÔ3°D×4DÑ4DÓ4FÓGÓHˆÜ�w“-ˆä ›L¬C°«LÑ8ÐÞØ �\  7¡+¨l¨^¸1Ð=Ð=Ø�˜Q˜w™k¨,¨°qÐ9Ð9r?   )ro   rm   ©NN)rq   úHeaderTypes | Noner5   ú
str | NoneÚreturnÚNone©rä   rA   ©rD   rA   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]]rl   )r=   rA   r•   ú
typing.Anyrä   rè   )F)r=   rA   r›   Úboolrä   z	list[str])rq   râ   rä   rå   )rä   r,   )r=   rA   rä   rA   ©r=   rA   rD   rA   rä   rå   )r=   rA   rä   rå   )r=   rè   rä   ré   )rä   ztyping.Iterator[typing.Any]©rä   Úint)rÎ   rè   rä   ré   )rØ   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rt   Úpropertyr5   Úsetterrx   rƒ   rˆ   re   r‘   r–   r¡   r¥   r©   r°   rº   r¿   rÂ   rÆ   rÊ   rÒ   rß   Ú__static_attributes__© r?   r6   r,   r,   ‹   sÄ   † ñð '+Ø#ð"à#ð"ð ð"ð 
õ	"ð, óó ðð0 ‡_�_óó ðð óFó ðFôXô	$ô#ô	
ööö,)ô5ôô(@ô0 ô$?ô!ôô7÷:r?   r,   c            
      ó´   • \ rS rSrSSSSSSSSSS.	                       SS jjrSS jr\SS j5       rSS jrSS jr	SS	 jr
SS
 jrSS jrSrg)r-   i~  N)	r]   rq   ÚcookiesÚcontentÚdataÚfilesÚjsonÚstreamÚ
extensionsc       	        ó:  • UR                  5       U l        Uc  [        U5      O[        X#S9U l        [	        U5      U l        Uc  0 O
[        U5      U l        U(       a  [        U5      R                  U 5        U
c›  U R
                  R                  S5      n[        UUUU	[        U(       a%  UR                  U R
                  R                  5      OS S9S9u  pJU R                  U5        X l        [#        U
[$        5      (       a  U R'                  5         g g X l        g )N)r]   rG   )rM   )r÷   rø   rù   rú   Úboundary)ÚupperÚmethodr(   rS   r,   rq   rÙ   rü   r+   Úset_cookie_headerr–   r
   r   r<   r5   Ú_preparerû   r:   r   Úread)rp   r   rS   r]   rq   rö   r÷   rø   rù   rú   rû   rü   rM   s                r6   rt   ÚRequest.__init__  sê   € ð —l‘l“nˆŒØ%™~”3�s”8´3°sÑ3JˆŒÜ˜wÓ'ˆŒØ *Ñ 2™"¼¸ZÓ8HˆŒæÜ�GÓ×.Ñ.¨tÔ4à‰>Ø'+§|¡|×'7Ñ'7¸Ó'GˆLÜ,ØØØØÜAæ#ð ".×!4Ñ!4°T·\±\×5JÑ5JÔ!Kàññ
‰OˆGð �M‰M˜'Ô"Ø ŒKä˜&¤*×-Ñ-Ø—	‘	•ð .ð" !�Kr?   c                óR  • UR                  5        HF  u  p#UR                  5       S:X  a  SU R                  ;   a  M+  U R                  R                  X#5        MH     / nSU R                  ;   nSU R                  ;   =(       d    SU R                  ;   nU(       dB  U R                  R
                  (       a'  UR                  SU R                  R                  45        U(       d!  U R                  S;   a  UR                  S5        [        X@R                  R                  -   5      U l        g )Nútransfer-encodingzContent-LengthÚHostzTransfer-Encodings   Host)ÚPOSTÚPUTÚPATCH)s   Content-Lengthó   0)re   rc   rq   Ú
setdefaultrS   ÚhostrY   Únetlocr   r,   rx   )rp   Údefault_headersr=   rD   Úauto_headersÚhas_hostÚhas_content_lengths          r6   r  ÚRequest._prepare¹  sÝ   € Ø)×/Ñ/Ö1‰JˆCà�y‰y‹{Ð1Ó1Ð6FÈ$Ï,É,Ó6VÙØ�L‰L×#Ñ# CÖ/ñ	 2ð 35ˆà˜TŸ\™\Ñ)ˆà §¡Ñ,×SÐ0CÀtÇ|Á|Ñ0Sð 	ö ˜DŸH™HŸMŸMØ×Ñ ¨$¯(©(¯/©/Ð :Ô;Þ! d§k¡kÐ5MÓ&MØ×ÑÐ 9Ô:ä˜|¯l©l×.>Ñ.>Ñ>Ó?ˆ�r?   c                óP   • [        U S5      (       d
  [        5       eU R                  $ ©NÚ_content)Úhasattrr   r  r¨   s    r6   r÷   ÚRequest.contentÎ  s"   € ä�t˜Z×(Ñ(Ü Ó"Ð"Ø�}‰}Ðr?   c                óD  • [        U S5      (       d„  [        U R                  [        R                  5      (       d   eSR                  U R                  5      U l        [        U R                  [        5      (       d  [        U R                  5      U l        U R                  $ )ú&
Read and return the request content.
r  r?   )r  r:   rû   ÚtypingÚIterabler¬   r  r   r¨   s    r6   r  ÚRequest.readÔ  sm   € ô �t˜Z×(Ñ(Ü˜dŸk™k¬6¯?©?×;Ñ;Ð;Ð;ØŸH™H T§[¡[Ó1ˆDŒMÜ˜dŸk™k¬:×6Ñ6ô )¨¯©Ó7�”Ø�}‰}Ðr?   c              ƒ  óŠ  #   • [        U S5      (       dR  [        U R                  [        R                  5      (       d   eSR                  U R                   Vs/ s Sh  v•N oPM  U R                  $  N
 Os  snf sn5      U l        [        U R                  [        5      (       a  MB  [        U R                  5      U l        N]7f)r  r  r?   N)r  r:   rû   r  ÚAsyncIterabler¬   r  r   ©rp   Úparts     r6   ÚareadÚRequest.areadâ  sˆ   é € ô �t˜Z×(Ñ(Ü˜dŸk™k¬6×+?Ñ+?×@Ñ@Ð@Ð@ØŸH™H¸T¿[º[×%IÓ%I°T¢dð �}‰}Ðó &JùÔ%IÓJˆDŒMÜ˜dŸk™k¬:×6Ó6ô )¨¯©Ó7�•ùsB   ‚ACÁA6ÁA4
ÁA2ÁA4
Á"A6Á&CÁ2A4
Á4A6Á51CÂ(Cc                óˆ   • U R                   R                  n[        U R                  5      nSU SU R                  < SU< S3$ )NÚ<rÕ   r‡   z)>)r×   rØ   rA   rS   r   )rp   rÚ   rS   s      r6   rß   ÚRequest.__repr__ð  s=   € Ø—^‘^×,Ñ,ˆ
Ü�$—(‘(‹mˆØ�:�,˜a §¡™¨b°±°rÐ:Ð:r?   c                ó|   • U R                   R                  5        VVs0 s H  u  pUS;  d  M  X_M     snn$ s  snnf )N)rü   rû   ©Ú__dict__re   ©rp   ÚnamerD   s      r6   Ú__getstate__ÚRequest.__getstate__õ  sE   € ð  $Ÿ}™}×2Ñ2Ô4ô
â4‘�ØÐ3Ñ3ó ˆDŠKÙ4ò
ð 	
ùó 
ó   ž8®8c                óz   • UR                  5        H  u  p#[        XU5        M     0 U l        [        5       U l        g rl   )re   Úsetattrrü   r	   rû   ©rp   Ústater+  rD   s       r6   Ú__setstate__ÚRequest.__setstate__ü  s/   € Ø Ÿ;™;ž=‰KˆDÜ�D Ö&ñ )àˆŒÜ&Ó(ˆ�r?   )r  rü   rq   r   rû   rS   )r   rA   rS   z	URL | strr]   zQueryParamTypes | Nonerq   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]©r2  r:  rä   rå   )rØ   rí   rî   rï   rt   r  rñ   r÷   r  r"  rß   r,  r3  ró   rô   r?   r6   r-   r-   ~  sÎ   † ð *.Ø&*Ø&*Ø)-Ø#'Ø%)Ø"&Ø:>Ø/3ñ8!àð8!ð ð8!ð
 'ð8!ð $ð8!ð $ð8!ð 'ð8!ð !ð8!ð #ð8!ð  ð8!ð 8ð8!ð -ð8!ð 
õ8!ôt@ð* óó ðô
ôô;ô

÷)r?   r-   c                  óH  • \ rS rSrSSSSSSSSSSS.
                       S0S jjrS1S jr\S2S j5       r\R                  S3S j5       r\S4S	 j5       r	\	R                  S5S
 j5       r	\S6S j5       r
\S6S j5       r\S7S j5       r\S8S j5       r\S6S j5       r\S9S j5       r\R                  S:S j5       r\S9S j5       rS;S jr\S<S j5       r\S<S j5       r\S<S j5       r\S<S j5       r\S<S j5       r\S<S j5       r\S<S j5       rS=S jrS>S jr\S?S j5       r\S@S j5       r\SAS j5       rS6S  jrSBS! jrSCS" jr S8S# jr!SDSES$ jjr"SDSFS% jjr#SGS& jr$SDSES' jjr%SHS( jr&S8S) jr' SD   SIS* jjr( SD   SJS+ jjr)SKS, jr* SD   SIS- jjr+SHS. jr,S/r-g)Lr.   i  Nrw   )
rq   r÷   ÚtextÚhtmlrú   rû   Úrequestrü   ÚhistoryÚdefault_encodingc       
        ó|  • Xl         [        U5      U l        X€l        S U l        U	c  0 O
[        U	5      U l        U
c  / O
[        U
5      U l        SU l	        SU l
        X°l        UcK  [        X4XV5      u  p'U R                  U5        Xpl        [        U[         5      (       a  U R#                  5         OXpl        SU l        g )NFr   )Ústatus_coder,   rq   Ú_requestÚnext_requestrÙ   rü   rn   r@  Ú	is_closedÚis_stream_consumedrA  r   r  rû   r:   r   r  Ú_num_bytes_downloaded)rp   rC  rq   r÷   r=  r>  rú   rû   r?  rü   r@  rA  s               r6   rt   ÚResponse.__init__  s¨   € ð 'ÔÜ˜wÓ'ˆŒà(/Œð -1ˆÔà *Ñ 2™"¼¸ZÓ8HˆŒØ$™_‘r´$°w³-ˆŒàˆŒØ"'ˆÔà 0Ôà‰>Ü-¨g¸TÓH‰OˆGØ�M‰M˜'Ô"Ø ŒKÜ˜&¤*×-Ñ-à—	‘	”øð !ŒKà%&ˆÕ"r?   c                ó¸   • UR                  5        HF  u  p#UR                  5       S:X  a  SU R                  ;   a  M+  U R                  R                  X#5        MH     g )Nr  zcontent-length)re   rc   rq   r  )rp   r  r=   rD   s       r6   r  ÚResponse._prepare;  sG   € Ø)×/Ñ/Ö1‰JˆCà�y‰y‹{Ð1Ó1Ð6FÈ$Ï,É,Ó6VÙØ�L‰L×#Ñ# CÖ/ò	 2r?   c                óR   • [        U S5      (       d  [        S5      eU R                  $ )zM
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  ÚRuntimeErrorrM  r¨   s    r6   ÚelapsedÚResponse.elapsedB  s/   € ô �t˜Z×(Ñ(Üð+óð ð �}‰}Ðr?   c                ó   • Xl         g rl   )rM  )rp   rO  s     r6   rO  rP  O  s   € à�r?   c                óJ   • U R                   c  [        S5      eU R                   $ )zB
Returns the request instance associated to the current response.
z7The request instance has not been set on this response.)rD  rN  r¨   s    r6   r?  ÚResponse.requestS  s*   € ð
 �=‰=Ñ ÜØIóð ð �}‰}Ðr?   c                ó   • Xl         g rl   )rD  r}   s     r6   r?  rS  ^  s   € à�r?   c                ób   •  U R                   S   nUR                  SSS9$ ! [         a     gf = f)NÚhttp_versionr9   Úignore©ÚerrorszHTTP/1.1)rü   ry   r”   )rp   rV  s     r6   rV  ÚResponse.http_versionb  sB   € ð	AØ"&§/¡/°.Ñ"AˆLð  ×&Ñ& w°xÐ&Ð@Ð@øô ó 	Ùð	ús   ‚! ¡
.­.c                ó¢   •  U R                   S   nUR                  SSS9$ ! [         a#    [        R                  " U R
                  5      s $ f = f)NÚreason_phraser9   rW  rX  )rü   ry   r”   r   Úget_reason_phraserC  )rp   r\  s     r6   r\  ÚResponse.reason_phrasek  sV   € ð	BØ#'§?¡?°?Ñ#CˆMð !×'Ñ'¨¸Ð'ÐAÐAøô ó 	=Ü×*Ò*¨4×+;Ñ+;Ó<Ò<ð	=ús   ‚! ¡*AÁAc                ó.   • U R                   R                  $ )z1
Returns the URL for which the request was made.
)r?  rS   r¨   s    r6   rS   ÚResponse.urlt  s   € ð
 �|‰|×ÑÐr?   c                óP   • [        U S5      (       d
  [        5       eU R                  $ r  )r  r   r  r¨   s    r6   r÷   ÚResponse.content{  s"   € ä�t˜Z×(Ñ(Ü!Ó#Ð#Ø�}‰}Ðr?   c                ó>  • [        U S5      (       d�  U R                  nU(       d  SU l        U R                  $ [        U R                  =(       d    SS9nSR                  UR                  U R                  5      UR                  5       /5      U l        U R                  $ )NÚ_textrR   rw   r4   )r  r÷   rd  r   r5   r¬   ry   Úflush)rp   r÷   Údecoders      r6   r=  ÚResponse.text�  su   € ä�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Ðr?   c                óJ  • [        U S5      (       d‡  U R                  nUb  [        U5      (       dX  [        U R                  [
        5      (       a  U R                  nO,[        U S5      (       a  U R	                  U R                  5      nU=(       d    SU l        U R                  $ )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.
ro   r  rw   )r  Úcharset_encodingr7   r:   rA  rA   r  ro   )rp   r5   s     r6   r5   ÚResponse.encodingŒ  s‚   € ô �t˜[×)Ñ)Ø×,Ñ,ˆHØÑÔ'9¸(×'CÑ'CÜ˜d×3Ñ3´S×9Ñ9Ø#×4Ñ4‘HÜ˜T :×.Ñ.Ø#×4Ñ4°T·]±]ÓC�HØ%×0¨ˆDŒNØ�~‰~Ðr?   c                óH   • [        U S5      (       a  [        S5      eXl        g)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.
rd  z?Setting encoding after `text` has been accessed is not allowed.N)r  rX   ro   r}   s     r6   r5   rj  ¢  s(   € ô �4˜×!Ñ!ÜØQóð ð �r?   c                óV   • U R                   R                  S5      nUc  g[        U5      $ )z?
Return the encoding, as specified by the Content-Type header.
zContent-TypeN)rq   r–   rO   )rp   rM   s     r6   ri  ÚResponse.charset_encoding°  s,   € ð
 —|‘|×'Ñ'¨Ó7ˆØÑØä*¨<Ó8Ð8r?   c                óÞ  • [        U S5      (       dÀ  / nU R                  R                  SSS9nU HA  nUR                  5       R	                  5       n [
        U   nUR                  U" 5       5        MC     [        U5      S:X  a  US   U l	        U R                  $ [        U5      S:”  a  [        US9U l	        U R                  $ [        5       U l	        U R                  $ ! [         a     M»  f = f)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  rq   r¡   rU   rc   r   rY   r”   rÉ   ro  r   r   )rp   Údecodersrˆ   rD   Údecoder_clss        r6   Ú_get_content_decoderÚResponse._get_content_decoder»  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                óB   • [         R                  " U R                  5      $ )zE
A property which is `True` for 1xx status codes, `False` otherwise.
)r   Úis_informationalrC  r¨   s    r6   rv  ÚResponse.is_informationalÔ  s   € ô
 ×%Ò% d×&6Ñ&6Ó7Ð7r?   c                óB   • [         R                  " U R                  5      $ )zE
A property which is `True` for 2xx status codes, `False` otherwise.
)r   Ú
is_successrC  r¨   s    r6   ry  ÚResponse.is_successÛ  s   € ô
 ×Ò × 0Ñ 0Ó1Ð1r?   c                óB   • [         R                  " U R                  5      $ )z÷
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_redirectrC  r¨   s    r6   r|  ÚResponse.is_redirectâ  s   € ô × Ò  ×!1Ñ!1Ó2Ð2r?   c                óB   • [         R                  " U R                  5      $ )zE
A property which is `True` for 4xx status codes, `False` otherwise.
)r   Úis_client_errorrC  r¨   s    r6   r  ÚResponse.is_client_errorî  ó   € ô
 ×$Ò$ T×%5Ñ%5Ó6Ð6r?   c                óB   • [         R                  " U R                  5      $ )zE
A property which is `True` for 5xx status codes, `False` otherwise.
)r   Úis_server_errorrC  r¨   s    r6   rƒ  ÚResponse.is_server_errorõ  r�  r?   c                óB   • [         R                  " U R                  5      $ )zM
A property which is `True` for 4xx and 5xx status codes, `False` otherwise.
)r   Úis_errorrC  r¨   s    r6   r†  ÚResponse.is_errorü  s   € ô
 �~Š~˜d×.Ñ.Ó/Ð/r?   c                óâ   • U R                   [        R                  [        R                  [        R                  [        R
                  [        R                  4;   =(       a    SU R                  ;   $ )z[
Returns True for 3xx responses with a properly formed URL redirection,
`False` otherwise.
ÚLocation)rC  r   ÚMOVED_PERMANENTLYÚFOUNDÚ	SEE_OTHERÚTEMPORARY_REDIRECTÚPERMANENT_REDIRECTrq   r¨   s    r6   Úhas_redirect_locationÚResponse.has_redirect_location  sZ   € ð ×Ñô ×'Ñ'ä—‘ä—‘ä×(Ñ(ä×(Ñ(ðñ÷ +ð ˜dŸl™lÑ*ð	
r?   c                ó
  • U R                   nUc  [        S5      eU R                  (       a  U $ U R                  (       a  SnOSnU R                  S-  nSSSSS	.nUR                  US
5      nUR                  XS9n[        X!U S9e)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)rD  rN  ry  r�  rC  r–   Úformatr   )rp   r?  rJ   Ústatus_classÚerror_typesr–  s         r6   Úraise_for_statusÚResponse.raise_for_status  s¦   € ð —-‘-ˆØ‰?Üð>óð ð
 �?�?ØˆKà×%×%ðwñ ðwð ð
 ×'Ñ'¨3Ñ.ˆà'Ø"ØØñ	
ˆð !—_‘_ \Ð3HÓIˆ
Ø—.‘. �.Ð=ˆÜ˜gÀÑFÐFr?   c                óD   • [         R                  " U R                  40 UD6$ rl   )ÚjsonlibÚloadsr÷   )rp   Úkwargss     r6   rú   ÚResponse.json?  s   € Ü�}Š}˜TŸ\™\Ñ4¨VÑ4Ð4r?   c                ó�   • [        U S5      (       d*  [        5       U l        U R                  R                  U 5        U R                  $ )NÚ_cookies)r  r+   r£  Úextract_cookiesr¨   s    r6   rö   ÚResponse.cookiesB  s4   € ä�t˜Z×(Ñ(Ü#›IˆDŒMØ�M‰M×)Ñ)¨$Ô/Ø�}‰}Ðr?   c                óÔ   • U R                   R                  S5      nUc  0 $ [        U5       Vs0 s H-  nUR                  S5      =(       d    UR                  S5      U_M/     sn$ s  snf )z9
Returns the parsed header links of the response, if any
r^   ÚrelrS   )rq   r–   r`   )rp   Úheaderr^   s      r6   rZ   ÚResponse.linksI  sh   € ð
 —‘×!Ñ! &Ó)ˆØ‰>ØˆIô ,¨FÔ3ó
â3�ð �X‰X�e‹_×/ §¡¨£°$Ò6Ù3ñ
ð 	
ùò 
s   ®4A%c                ó   • U R                   $ rl   )rH  r¨   s    r6   Únum_bytes_downloadedÚResponse.num_bytes_downloadedW  s   € à×)Ñ)Ð)r?   c                ó<   • SU R                    SU R                   S3$ )Nz<Response [Ú ú]>)rC  r\  r¨   s    r6   rß   ÚResponse.__repr__[  s%   € Ø˜T×-Ñ-Ð.¨a°×0BÑ0BÐ/CÀ2ÐFÐFr?   c                ó|   • U R                   R                  5        VVs0 s H  u  pUS;  d  M  X_M     snn$ s  snnf )N)rü   rû   rF  ro  r(  r*  s      r6   r,  ÚResponse.__getstate__^  sE   € ð  $Ÿ}™}×2Ñ2Ô4ô
â4‘�ØÐLÑLó ˆDŠKÙ4ò
ð 	
ùó 
r.  c                óˆ   • UR                  5        H  u  p#[        XU5        M     SU l        0 U l        [	        5       U l        g )NT)re   r0  rF  rü   r	   rû   r1  s       r6   r3  ÚResponse.__setstate__e  s6   € Ø Ÿ;™;ž=‰KˆDÜ�D Ö&ñ )àˆŒØˆŒÜ&Ó(ˆ�r?   c                ó„   • [        U S5      (       d$  SR                  U R                  5       5      U l        U R                  $ )ú'
Read and return the response content.
r  r?   )r  r¬   Ú
iter_bytesr  r¨   s    r6   r  ÚResponse.readl  s2   € ô �t˜Z×(Ñ(ØŸH™H T§_¡_Ó%6Ó7ˆDŒMØ�}‰}Ðr?   c              #  óŽ  #   • [        U S5      (       a_  Uc  [        U R                  5      OUn[        S[        U R                  5      [	        US5      5       H  nU R                  X"U-    v •  M     gU R                  5       n[        US9n[        U R                  S9   U R                  5        H0  nUR                  U5      nUR                  U5       H  nUv •  M	     M2     UR                  5       nUR                  U5       H  nUv •  M	     UR                  5        H  nUv •  M	     SSS5        g! , (       d  f       g= f7f©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Úmaxrs  r   r   rD  Úiter_rawry   re  ©rp   r¼  Úirf  ÚchunkerÚ	raw_bytesÚdecodedÚchunks           r6   r·  ÚResponse.iter_bytest  s  é € ô
 �4˜×$Ñ$Ø/9Ñ/Aœ˜TŸ]™]Ô+ÀzˆJÜ˜1œc $§-¡-Ó0´#°jÀ!Ó2DÖE�Ø—m‘m A¨J©Ð7Ô7ò Fð ×/Ñ/Ó1ˆGÜ!¨ZÑ8ˆGÜ ¨¯©Ó7Ø!%§¡¦�IØ%Ÿn™n¨YÓ7�GØ!(§¡°Ö!8˜Ø#œó "9ñ "1ð "Ÿ-™-›/�Ø$Ÿ^™^¨GÖ4�EØ”Kñ 5à$Ÿ]™]ž_�EØ”Kñ -÷ 8×7Ö7üs   ‚BEÂBD4Ä+	EÄ4
EÄ>Ec              #  óÆ  #   • [        U R                  =(       d    SS9n[        US9n[        U R                  S9   U R                  5        H0  nUR                  U5      nUR                  U5       H  nUv •  M	     M2     UR                  5       nUR                  U5       H  nUv •  M	     UR                  5        H  nUv •  M	     SSS5        g! , (       d  f       g= f7f©z‡
A str-iterator over the decoded response content
that handles both gzip, deflate, etc but also detects the content's
string encoding.
rw   r4   r»  r½  N)r   r5   r   r   rD  r·  ry   re  ©rp   r¼  rf  rÃ  Úbyte_contentÚtext_contentrÆ  s          r6   Ú	iter_textÚResponse.iter_text‹  s¬   é € ô  t§}¡}×'?¸Ñ@ˆÜ¨Ñ4ˆÜ T§]¡]Ó3Ø $§¡Ö 1�Ø&Ÿ~™~¨lÓ;�Ø$Ÿ^™^¨LÖ9�EØ”Kó :ñ !2ð #Ÿ=™=›?ˆLØ Ÿ™¨Ö5�Ø”ñ 6à Ÿ™ž�Ø”ñ )÷ 4×3Ö3üs   ‚9C!»BCÃ	C!Ã
CÃC!c              #  ó  #   • [        5       n[        U R                  S9   U R                  5        H  nUR	                  U5       H  nUv •  M	     M!     UR                  5        H  nUv •  M	     S S S 5        g ! , (       d  f       g = f7f©Nr½  )r   r   rD  rÍ  ry   re  ©rp   rf  r=  Úlines       r6   Ú
iter_linesÚResponse.iter_linesž  sc   é € Ü“-ˆÜ T§]¡]Ó3ØŸ™Ö(�Ø#ŸN™N¨4Ö0�DØ”Jó 1ñ )ð  Ÿ™ž�Ø”
ñ (÷	 4×3Ö3üs   ‚B	 AA8Á/	B	Á8
BÂB	c              #  óD  #   • U R                   (       a
  [        5       eU R                  (       a
  [        5       e[	        U R
                  [        5      (       d  [        S5      eSU l         SU l        [        US9n[        U R                  S9   U R
                   H=  nU =R                  [        U5      -  sl        UR                  U5       H  nUv •  M	     M?     SSS5        UR                  5        H  nUv •  M	     U R                  5         g! , (       d  f       N:= f7f)ú0
A byte-iterator over the raw response content.
z5Attempted to call a sync iterator on an async stream.Tr   r»  r½  N)rG  r   rF  r   r:   rû   r'   rN  rH  r   r   rD  rÉ   ry   re  Úclose©rp   r¼  rÃ  Úraw_stream_bytesrÆ  s        r6   rÀ  ÚResponse.iter_raw§  sÙ   é € ð ×"×"Ü Ó"Ð"Ø�>�>Ü“.Ð Ü˜$Ÿ+™+¤~×6Ñ6ÜÐVÓWÐWà"&ˆÔØ%&ˆÔ"Ü¨Ñ4ˆä T§]¡]Ó3Ø$(§K¤KÐ Ø×*Ò*¬cÐ2BÓ.CÑCÕ*Ø$Ÿ^™^Ð,<Ö=�EØ”Kó >ñ %0÷ 4ð —]‘]–_ˆEØŒKñ %ð 	�
‰
�÷ 4Õ3üs   ‚BD ÂADÃ4D Ä
DÄD c                ó  • [        U R                  [        5      (       d  [        S5      eU R                  (       d>  SU l        [        U R                  S9   U R                  R                  5         SSS5        gg! , (       d  f       g= f)úq
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.Tr½  N)r:   rû   r'   rN  rF  r   rD  r×  r¨   s    r6   r×  ÚResponse.closeÁ  s_   € ô
 ˜$Ÿ+™+¤~×6Ñ6ÜÐTÓUÐUà�~�~Ø!ˆDŒNÜ ¨¯©Ó7Ø—‘×!Ñ!Ô#÷ 8Ð7ð ç7Õ7ús   ÁA;Á;
B	c              ƒ  óÆ   #   • [        U S5      (       d+  SR                  U R                  5        Vs/ s Sh  v•N oPM  U R                  $  N
 Os  snf sn5      U l        N"7f)r¶  r  r?   N)r  r¬   Úaiter_bytesr  r   s     r6   r"  ÚResponse.areadÎ  sK   é € ô �t˜Z×(Ñ(ØŸH™H¸T×=MÑ=MÔ=O×%PÓ%P°T¢dØ�}‰}Ðó &QùÔ%PÓQˆD�Mùs5   ‚/A!±A³A
·A¸A
»A¿A!ÁA
ÁAÁA!c               ó¤  #   • [        U S5      (       a`  Uc  [        U R                  5      OUn[        S[        U R                  5      [	        US5      5       H  nU R                  X"U-    7v •  M     gU R                  5       n[        US9n[        U R                  S9   U R                  5         Sh  v•N nUR                  U5      nUR                  U5       H  nU7v •  M
     M9   N4
 UR                  5       nUR                  U5       H  nU7v •  M
     UR                  5        H  nU7v •  M
     SSS5        g! , (       d  f       g= f7frº  )r  rÉ   r  r¾  r¿  rs  r   r   rD  Ú	aiter_rawry   re  rÁ  s           r6   rß  ÚResponse.aiter_bytesÖ  s
  é € ô �4˜×$Ñ$Ø/9Ñ/Aœ˜TŸ]™]Ô+ÀzˆJÜ˜1œc $§-¡-Ó0´#°jÀ!Ó2DÖE�Ø—m‘m A¨J©Ð7Õ7ò Fð ×/Ñ/Ó1ˆGÜ!¨ZÑ8ˆGÜ ¨¯©Ó7Ø'+§~¡~Ô'7÷ $˜)Ø%Ÿn™n¨YÓ7�GØ!(§¡°Ö!8˜Ø#�ó "9ñ$Ð'7ð "Ÿ-™-›/�Ø$Ÿ^™^¨GÖ4�EØ•Kñ 5à$Ÿ]™]ž_�EØ•Kñ -÷ 8×7Ö7üsC   ‚BEÂ D?Â1C,Â5C*Â6C,Â91D?Ã*C,Ã,A
D?Ä6	EÄ?
EÅ	Ec               óÚ  #   • [        U R                  =(       d    SS9n[        US9n[        U R                  S9   U R                  5         Sh  v•N nUR                  U5      nUR                  U5       H  nU7v •  M
     M9   N4
 UR                  5       nUR                  U5       H  nU7v •  M
     UR                  5        H  nU7v •  M
     SSS5        g! , (       d  f       g= f7frÉ  )r   r5   r   r   rD  rß  ry   re  rÊ  s          r6   Ú
aiter_textÚResponse.aiter_textï  s¶   é € ô  t§}¡}×'?¸Ñ@ˆÜ¨Ñ4ˆÜ T§]¡]Ó3Ø&*×&6Ñ&6Ô&8÷  �lØ&Ÿ~™~¨lÓ;�Ø$Ÿ^™^¨LÖ9�EØ•Kó :ñ Ð&8ð #Ÿ=™=›?ˆLØ Ÿ™¨Ö5�Ø•ñ 6à Ÿ™ž�Ø•ñ )÷ 4×3Ö3üsA   ‚9C+»CÁBÁBÁBÁ1CÂBÂA
CÃ	C+Ã
C(Ã$C+c               ó(  #   • [        5       n[        U R                  S9   U R                  5         S h  v•N nUR	                  U5       H  nU7v •  M
     M(   N#
 UR                  5        H  nU7v •  M
     S S S 5        g ! , (       d  f       g = f7frÐ  )r   r   rD  rå  ry   re  rÑ  s       r6   Úaiter_linesÚResponse.aiter_lines  sk   é € Ü“-ˆÜ T§]¡]Ó3Ø"Ÿo™oÔ/÷ �dØ#ŸN™N¨4Ö0�DØ•Jó 1ñÐ/ð  Ÿ™ž�Ø•
ñ (÷	 4×3Ö3üs<   ‚B B±AµA¶A¹ BÁAÁBÁ8	BÂ
BÂBc               ój  #   • U R                   (       a
  [        5       eU R                  (       a
  [        5       e[	        U R
                  [        5      (       d  [        S5      eSU l         SU l        [        US9n[        U R                  S9   U R
                    Sh  v•N nU =R                  [        U5      -  sl        UR                  U5       H  nU7v •  M
     MF   NA
 SSS5        O! , (       d  f       O= fUR                  5        H  nU7v •  M
     U R                  5       I Sh  v•N    g7f)rÖ  z6Attempted to call an async iterator on an sync stream.Tr   r»  r½  N)rG  r   rF  r   r:   rû   r   rN  rH  r   r   rD  rÉ   ry   re  ÚacloserØ  s        r6   râ  ÚResponse.aiter_raw  så   é € ð ×"×"Ü Ó"Ð"Ø�>�>Ü“.Ð Ü˜$Ÿ+™+¤×7Ñ7ÜÐWÓXÐXà"&ˆÔØ%&ˆÔ"Ü¨Ñ4ˆä T§]¡]Ó3Ø*.¯+ª+÷  Ð&Ø×*Ò*¬cÐ2BÓ.CÑCÕ*Ø$Ÿ^™^Ð,<Ö=�EØ•Kó >ñ ¨+÷ 4×3Ö3úð —]‘]–_ˆEØ�Kñ %ð �k‰k‹m×ÒùsN   ‚BD3ÂC,ÂC"ÂC ÂC"Â">C,Ã C"Ã"C,Ã#	D3Ã,
C:Ã66D3Ä,D/Ä-D3c              ƒ  ó4  #   • [        U R                  [        5      (       d  [        S5      eU R                  (       dF  SU l        [        U R                  S9   U R                  R                  5       I Sh  v•N   SSS5        gg N! , (       d  f       g= f7f)rÜ  z3Attempted to call an async close on an sync stream.Tr½  N)r:   rû   r   rN  rF  r   rD  rë  r¨   s    r6   rë  ÚResponse.aclose)  sn   é € ô
 ˜$Ÿ+™+¤×7Ñ7ÜÐTÓUÐUà�~�~Ø!ˆDŒNÜ ¨¯©Ó7Ø—k‘k×(Ñ(Ó*×*Ð*÷ 8Ð7ð ñ +÷ 8Õ7üs0   ‚ABÁBÁ6BÁ7BÁ;
BÂBÂ
BÂB)r  r£  ro  rM  ro   rH  rD  rd  rA  rü   rq   r@  rF  rG  rE  rC  rû   )rC  rì   rq   râ   r÷   zResponseContent | Noner=  rã   r>  rã   rú   rè   rû   r6  r?  zRequest | Nonerü   zResponseExtensions | Noner@  zlist[Response] | NonerA  z#str | typing.Callable[[bytes], str]rä   rå   r7  )rä   údatetime.timedelta)rO  rï  rä   rå   )rä   r-   )rD   r-   rä   rå   ræ   )rä   r(   r8  )rä   rã   rç   )rä   r   ©rä   ré   )rä   r.   )r   rè   rä   rè   )rä   r+   )rä   z dict[str | None, dict[str, str]]rë   r9  r;  rl   )r¼  ú
int | Nonerä   ztyping.Iterator[bytes])r¼  rñ  rä   útyping.Iterator[str]©rä   rò  )rä   rå   )r¼  rñ  rä   ztyping.AsyncIterator[bytes])r¼  rñ  rä   útyping.AsyncIterator[str])rä   rô  ).rØ   rí   rî   rï   rt   r  rñ   rO  rò   r?  rV  r\  rS   r÷   r=  r5   ri  rs  rv  ry  r|  r  rƒ  r†  r�  r›  rú   rö   rZ   r«  rß   r,  r3  r  r·  rÍ  rÓ  rÀ  r×  r"  rß  rå  rè  râ  rë  ró   rô   r?   r6   r.   r.     s  † ð
 '+Ø*.ØØØØ:>Ø"&Ø04Ø)-Ø@Gñ5'àð5'ð $ð	5'ð
 (ð5'ð ð5'ð ð5'ð ð5'ð 8ð5'ð  ð5'ð .ð5'ð 'ð5'ð >ð5'ð 
õ5'ôn0ð ó
ó ð
ð ‡^�^ó ó ð ð óó ðð ‡^�^óó ðð óAó ðAð óBó ðBð ó ó ð ð óó ðð
 óó ðð óó ðð* ‡_�_óó ðð ó9ó ð9ôð2 ó8ó ð8ð ó2ó ð2ð ó	3ó ð	3ð ó7ó ð7ð ó7ó ð7ð ó0ó ð0ð ó
ó ð
ô,#GôJ5ð óó ðð ó
ó ð
ð ó*ó ð*ôGô
ô)ôö ö.ô&öô4$ôð (,ð Ø$ð à	$õ ð4 (,ðØ$ðà	"õô*ð (,ðØ$ðà	$õ÷8+r?   r.   c                  óB  • \ rS rSrSrSSS jjrSS jrSS jrSSS jjr   S         SS jjr	  S        S!S	 jjr
S S"S
 jjrSSS jjrS#S jrS$S jrS%S jrS&S jrS'S jrS(S jrS)S jr " S S\R*                  R,                  5      r " S S5      rSrg)*r+   i7  z%
HTTP Cookies, as a mutable mapping.
Nc                ó  • Ub  [        U[        5      (       aP  [        5       U l        [        U[        5      (       a+  UR	                  5        H  u  p#U R                  X#5        M     g g [        U[        5      (       a,  [        5       U l        U H  u  p#U R                  X#5        M     g [        U[        5      (       a>  [        5       U l        UR                   H  nU R                  R                  U5        M      g Xl        g rl   )	r:   rÙ   r   Újarre   Úsetrn   r+   Ú
set_cookie)rp   rö   r=   rD   Úcookies        r6   rt   ÚCookies.__init__<  s¹   € Ø‰?œj¨´$×7Ñ7Ü “{ˆDŒHÜ˜'¤4×(Ñ(Ø")§-¡-¦/‘J�CØ—H‘H˜SÖ(ò #2ð )ô ˜¤×&Ñ&Ü “{ˆDŒHÛ%‘
�Ø—‘˜Ö$ò &ä˜¤×)Ñ)Ü “{ˆDŒHØ!Ÿ+œ+�Ø—‘×#Ñ# FÖ+ò &ð �Hr?   c                ó’   • U R                  U5      nU R                  UR                  5      nU R                  R	                  X#5        g)z?
Loads any cookies based on the response `Set-Cookie` headers.
N)Ú_CookieCompatResponseÚ_CookieCompatRequestr?  r÷  r¤  )rp   r—  Úurllib_responseÚurllib_requests       r6   r¤  ÚCookies.extract_cookiesM  s<   € ð ×4Ñ4°XÓ>ˆØ×2Ñ2°8×3CÑ3CÓDˆà�‰× Ñ  ÕAr?   c                ó\   • U R                  U5      nU R                  R                  U5        g)z=
Sets an appropriate 'Cookie:' HTTP header on the `Request`.
N)rþ  r÷  Úadd_cookie_header)rp   r?  r   s      r6   r  ÚCookies.set_cookie_headerV  s&   € ð ×2Ñ2°7Ó;ˆØ�‰×"Ñ" >Õ2r?   c                ó   • 0 SS_SU_SU_SS_SS_S	U_S
[        U5      _SUR                  S5      _SU_S[        U5      _SS_SS_SS_SS_SS_SSS0_SS_n[        S0 UD6nU R                  R	                  U5        g)zE
Set a cookie value by name. May optionally include domain and path.
Úversionr   r+  rD   Ú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ù  )rp   r+  rD   r	  r  r   rú  s          r6   rø  Ú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Õ#r?   c                óð   • SnU R                    H^  nUR                  U:X  d  M  Ub  UR                  U:X  d  M*  Ub  UR                  U:X  d  M?  Ub  SU 3n[	        U5      eUR
                  nM`     Uc  U$ U$ )zt
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   rD   )rp   r+  r•   r	  r  rD   rú  rJ   s           r6   r–   ÚCookies.getw  sz   € ð ˆØ—h”hˆFØ�{‰{˜dÕ"Ø‘> V§]¡]°fÕ%<Ø‘| v§{¡{°dÕ':Ø Ñ,Ø(IÈ$ÈÐ&P˜GÜ"0°Ó"9Ð9Ø &§¡šñ ð ‰=ØˆNØˆr?   c                óŠ  • Ub  Ub  U R                   R                  X#U5      $ U R                    Vs/ s HA  nUR                  U:X  d  M  Ub  UR                  U:X  d  M*  Ub  UR                  U:X  d  M?  UPMC     nnU H>  nU R                   R                  UR                  UR                  UR                  5        M@     gs  snf )zu
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  )rp   r+  r	  r  rú  Úremoves         r6   ÚdeleteÚCookies.delete�  sµ   € ð Ñ $Ñ"2Ø—8‘8—>‘> &°Ó5Ð5ð Ÿ(š(ó
â"�Ø�{‰{˜dÑ"ó ð ‘ 6§=¡=°FÑ#:ó ð ‘ §¡°Ñ!4÷	 Ù"ð 	ð 
ó ˆFØ�H‰H�N‰N˜6Ÿ=™=¨&¯+©+°v·{±{ÖCò ùò
s   ±C Á	C ÁC Á3C c                ó”   • / nUb  UR                  U5        Ub  Uc   eUR                  U5        U R                  R                  " U6   g)zo
Delete all cookies. Optionally include a domain and path in
order to only delete a subset of all the cookies.
N)rY   r÷  r  )rp   r	  r  Úargss       r6   r  ÚCookies.clear¨  sI   € ð
 ˆØÑØ�K‰K˜ÔØÑØÑ%Ð%Ð%Ø�K‰K˜ÔØ�‰�Š˜Òr?   c                óv   • [        U5      nUR                   H  nU R                  R                  U5        M      g rl   )r+   r÷  rù  )rp   rö   rú  s      r6   r¥   ÚCookies.updateµ  s,   € Ü˜'Ó"ˆØ—k”kˆFØ�H‰H×Ñ Ö'ò "r?   c                ó$   • U R                  X5      $ rl   )rø  r*  s      r6   rº   ÚCookies.__setitem__º  s   € Ø�x‰x˜Ó$Ð$r?   c                óD   • U R                  U5      nUc  [        U5      eU$ rl   )r–   r”   r*  s      r6   r°   ÚCookies.__getitem__½  s#   € Ø—‘˜“ˆØ‰=Ü˜4“.Ð Øˆr?   c                ó$   • U R                  U5      $ rl   )r  )rp   r+  s     r6   r¿   ÚCookies.__delitem__Ã  s   € Ø�{‰{˜4Ó Ð r?   c                ó,   • [        U R                  5      $ rl   )rÉ   r÷  r¨   s    r6   rÊ   ÚCookies.__len__Æ  s   € Ü�4—8‘8‹}Ðr?   c                ó(   • S U R                    5       $ )Nc              3  ó8   #   • U  H  oR                   v •  M     g 7frl   )r+  )Ú.0rú  s     r6   Ú	<genexpr>Ú#Cookies.__iter__.<locals>.<genexpr>Ê  s   é € Ð3ª( —–ª(ùs   ‚©r÷  r¨   s    r6   rÆ   ÚCookies.__iter__É  s   € Ù3¨$¯(ª(Ó3Ð3r?   c                ó*   • U R                    H  n  g   g)NTFr2  )rp   r€   s     r6   Ú__bool__ÚCookies.__bool__Ì  s   € Ø—”ˆAÙñ àr?   c                óÀ   • SR                  U R                   Vs/ s H-  nSUR                   SUR                   SUR                   S3PM/     sn5      nSU S3$ s  snf )Nr‡   z<Cookie rT   z for z />z	<Cookies[r¯  )r¬   r÷  r+  rD   r	  )rp   rú  Úcookies_reprs      r6   rß   ÚCookies.__repr__Ñ  sh   € Ø—y‘yð #Ÿhšhóâ&�Fð ˜6Ÿ;™;˜- q¨¯©¨°e¸F¿M¹M¸?È#ÓNÙ&ñó
ˆð ˜<˜.¨Ð+Ð+ùòs   š4Ac                  ó@   ^ • \ rS rSrSrSU 4S jjrSU 4S jjrSrU =r$ )ÚCookies._CookieCompatRequestiÛ  új
Wraps a `Request` instance up in a compatibility interface suitable
for use with `CookieJar` operations.
c                ó�   >• [         TU ]  [        UR                  5      [	        UR
                  5      UR                  S9  Xl        g )N)rS   rq   r   )Úsuperrt   rA   rS   rÙ   rq   r   r?  )rp   r?  r×   s     €r6   rt   Ú%Cookies._CookieCompatRequest.__init__á  s;   ø€ Ü‰GÑÜ˜Ÿ™Ó$Ü˜WŸ_™_Ó-Ø—~‘~ð ñ ð
 #�Lr?   c                óT   >• [         TU ]  X5        X R                  R                  U'   g rl   )r>  Úadd_unredirected_headerr?  rq   )rp   r=   rD   r×   s      €r6   rA  Ú4Cookies._CookieCompatRequest.add_unredirected_headeré  s"   ø€ Ü‰GÑ+¨CÔ7Ø(-�L‰L× Ñ  Ò%r?   r½  ©r?  r-   rä   rå   rê   )	rØ   rí   rî   rï   rð   rt   rA  ró   Ú__classcell__)r×   s   @r6   rþ  r;  Û  s   ø† ñ	÷
	#÷	.õ 	.r?   rþ  c                  ó,   • \ rS rSrSrSS jrSS jrSrg)	ÚCookies._CookieCompatResponseií  r<  c                ó   • Xl         g rl   ©r—  )rp   r—  s     r6   rt   Ú&Cookies._CookieCompatResponse.__init__ó  s   € Ø$�Mr?   c                ó¤   • [         R                  R                  5       nU R                  R                  R                  5        H	  u  p#X1U'   M     U$ rl   )rI   rJ   rK   r—  rq   r‘   )rp   Úinfor=   rD   s       r6   rK  Ú"Cookies._CookieCompatResponse.infoö  sD   € Ü—=‘=×(Ñ(Ó*ˆDØ"Ÿm™m×3Ñ3×?Ñ?ÖA‘
�ð "�S“	ñ	 Bð
 ˆKr?   rH  N©r—  r.   rä   rå   )rä   zemail.message.Message)rØ   rí   rî   rï   rð   rt   rK  ró   rô   r?   r6   rý  rF  í  s   † ñ	ô
	%÷	r?   rý  r2  rl   )rö   r5  rä   rå   rM  rC  )rR   Ú/)
r+  rA   rD   rA   r	  rA   r  rA   rä   rå   )NNN)
r+  rA   r•   rã   r	  rã   r  rã   rä   rã   rá   )r+  rA   r	  rã   r  rã   rä   rå   )r	  rã   r  rã   rä   rå   )r+  rA   rD   rA   rä   rå   )r+  rA   rä   rA   )r+  rA   rä   rå   rë   ró  rð  ræ   )rØ   rí   rî   rï   rð   rt   r¤  r  rø  r–   r  r  r¥   rº   r°   r¿   rÊ   rÆ   r5  rß   Úurllibr?  r-   rþ  rý  ró   rô   r?   r6   r+   r+   7  sá   † ñöô"Bô3ö$ð: #Ø!Øðàðð ðð ð	ð
 ðð 
õð8 "Øð	DàðDð ðDð ð	Dð
 
õDö0ö(ô
%ôô!ôô4ôô
,ô.˜vŸ~™~×5Ñ5ô .÷$ô r?   r+   )r5   rA   rä   ré   rl   )r=   ústr | bytesr5   rã   rä   r;   )rD   rP  r5   rã   rä   r;   )rM   rA   rä   rã   )rD   rA   rä   zlist[dict[str, str]])re   z4typing.Iterable[tuple[typing.AnyStr, typing.AnyStr]]rä   z4typing.Iterator[tuple[typing.AnyStr, typing.AnyStr]])JÚ
__future__r   r1   ÚdatetimeÚemail.messagerI   rú   rž  rV   r  Úurllib.requestrO  Ú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*   Ú__all__rd   r7   r>   rE   rO   r`   rh   ÚMutableMappingrA   r,   r-   r.   r+   rô   r?   r6   Ú<module>r`     s  ðÝ "ã Û Û Û Û 	Û Û Ý #ß ,ç SÓ S÷	÷ 	ó 	÷÷ ñ õ AÝ  ÷÷ ÷ ñ õ ß +â
7€à$Ð&;Ð<Ð ôöNö-ô1ô"ðJØ?ðà9ôôp:ˆf×#Ñ# C¨ HÑ-ô p:÷fB)ñ B)÷Jq+ñ q+ôhFˆf×#Ñ# C¨ HÑ-õ Fr?   