+
    Pj                       ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt	^ RI
Ht ^ RIHtHt ^RIHtHtHtHt ^RIHtHtHtHtHtHtHtHt ^RIHtHtH t H!t!H"t"H#t#H$t$ ^RI%H&t& ^R	I'H(t( ^R
I)H*t*H+t+H,t,H-t-H.t.H/t/H0t0H1t1H2t2H3t3H4t4 ^RI5H6t6 ^RI7H8t8H9t9H:t:H;t;H<t<H=t= . ROt> ! R R]P~                  ]@]@3,          4      tA ! R R4      tB ! R R4      tC ! R R]P~                  ]@]@3,          4      tDR# )    )annotationsN)Mapping)Cookie	CookieJar)
ByteStreamUnattachedStreamencode_requestencode_response)SUPPORTED_DECODERSByteChunkerContentDecoderIdentityDecoderLineDecoderMultiDecoderTextChunkerTextDecoder)CookieConflictHTTPStatusErrorRequestNotReadResponseNotReadStreamClosedStreamConsumedrequest_context)(get_multipart_boundary_from_content_type)codes)AsyncByteStreamCookieTypesHeaderTypesQueryParamTypesRequestContentRequestDataRequestExtensionsRequestFilesResponseContentResponseExtensionsSyncByteStream)URL)is_known_encodingnormalize_header_keynormalize_header_valueobfuscate_sensitive_headersparse_content_type_charsetparse_header_linksCookiesHeadersRequestResponsec                  L   ] tR t^;tRtR,R R llt]R R l4       t]P                  R R l4       t]R	 R
 l4       t	R R lt
R R ltR R ltR R ltR-R R lltR.R R lltR-R R lltR R ltR R ltR R ltR R  ltR! R" ltR# R$ ltR% R& ltR' R( ltR) R* ltR+tR# )/r/   z1
HTTP headers, as a case-insensitive multi-dict.
Nc               $    V ^8  d   QhRRRRRR/# )   headersHeaderTypes | Noneencoding
str | NonereturnNone )formats   "f/Users/ahmed/devFolder/Ultron/claude-voice/gateway/.venv/lib/python3.14/site-packages/httpx/_models.py__annotate__Headers.__annotate__@   s(     " "#" " 
	"    c                	   Vf	   . V n         M\        V\        4      '       d   \        VP                   4      V n         M\        V\        4      '       dO   VP                  4        UUu. uF+  w  r4\        VRVR7      \        VRVR7      \        WB4      3NK-  	  uppV n         M?V UUu. uF+  w  r4\        VRVR7      \        VRVR7      \        WB4      3NK-  	  uppV n         W n        R # u uppi u uppi )NF)lowerr7   T)	_list
isinstancer/   listr   itemsr)   r*   	_encoding)selfr5   r7   kvs   &&&  r=   __init__Headers.__init__@   s    
 ?DJ))gmm,DJ)) $MMO ,DA	 )%(K($J*17
 ,DJ $ $DA	 )%(K($J*17
 $DJ "%s   '1C)'1C/c                   V ^8  d   QhRR/# r4   r9   strr;   )r<   s   "r=   r>   r?   _   s      # r@   c                   V P                   fZ   R FL  pV P                   F(  w  r# VP                  V4       VP                  V4       K*  	  Wn          V P                   # 	  RV n         V P                   #   \         d      Kr  i ; i)zV
Header encoding is mandated as ascii, but we allow fallbacks to utf-8
or iso-8859-1.
z
iso-8859-1)asciiutf-8)rG   rawdecodeUnicodeDecodeError)rH   r7   keyvalues   &   r=   r7   Headers.encoding^   s     >>!."&((JC

8,X. #+ &.N
 ~~! / ".~~ . s   "A44BBc                    V ^8  d   QhRRRR/# r4   rW   rO   r9   r:   r;   )r<   s   "r=   r>   r?   x   s      c d r@   c                	    Wn         R # N)rG   rH   rW   s   &&r=   r7   rX   w   s    r@   c                   V ^8  d   QhRR/# )r4   r9   zlist[tuple[bytes, bytes]]r;   )r<   s   "r=   r>   r?   |   s     F F. Fr@   c                X    V P                    UUUu. uF	  w  rq1V3NK  	  uppp# u upppi )z8
Returns a list of the raw header items, as byte pairs.
)rC   )rH   raw_key_rW   s   &   r=   rS   Headers.raw{   s(    
 ;?**E*%6W% *EEEs   %c                   V ^8  d   QhRR/# )r4   r9   ztyping.KeysView[str]r;   )r<   s   "r=   r>   r?      s     X X* Xr@   c                	    V P                    UUUu/ uF!  w  rq2P                  V P                  4      R bK#  	  upppP                  4       # u upppi r\   )rC   rT   r7   keysrH   ra   rV   rW   s   &   r=   re   Headers.keys   s;    EIZZPZMAE

4==)4/ZPUUWWPs   'Ac                   V ^8  d   QhRR/# )r4   r9   ztyping.ValuesView[str]r;   )r<   s   "r=   r>   r?      s     	$ 	$. 	$r@   c                	   / pV P                    F_  w  r#pVP                  V P                  4      pVP                  V P                  4      pWQ9   d   W;;,          R V 2,          uu&   K[  WaV&   Ka  	  VP                  4       # ), )rC   rT   r7   valuesrH   values_dictra   rV   rW   str_key	str_values   &      r=   rk   Headers.values   sq    &(!ZZMAEjj/GT]]3I%$"YK(88$'0G$ ( !!##r@   c                   V ^8  d   QhRR/# )r4   r9   ztyping.ItemsView[str, str]r;   )r<   s   "r=   r>   r?      s     # #1 #r@   c                   / pV P                    F_  w  r#pVP                  V P                  4      pVP                  V P                  4      pWQ9   d   W;;,          RV 2,          uu&   K[  WaV&   Ka  	  VP                  4       # )z
Return `(key, value)` items of headers. Concatenate headers
into a single comma separated value when a key occurs multiple times.
rj   )rC   rT   r7   rF   rl   s   &      r=   rF   Headers.items   ss    
 ')!ZZMAEjj/GT]]3I%$"YK(88$'0G$ (   ""r@   c                   V ^8  d   QhRR/# )r4   r9   zlist[tuple[str, str]]r;   )r<   s   "r=   r>   r?      s     	
 	
2 	
r@   c           	         V P                    UUUu. uF<  w  rpVP                  V P                  4      VP                  V P                  4      3NK>  	  uppp# u upppi )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.
)rC   rT   r7   rf   s   &   r=   multi_itemsHeaders.multi_items   sP     "&
!+ ZZ&T]](CD!+
 	
 
s   AAc               $    V ^8  d   QhRRRRRR/# )r4   rV   rO   default
typing.Anyr9   r;   )r<   s   "r=   r>   r?      s!      s Z : r@   c                :     W,          #   \          d    Tu # i ; i)zp
Return a header value. If multiple occurrences of the header occur
then concatenate them together with commas.
)KeyError)rH   rV   ry   s   &&&r=   getHeaders.get   s#    
	9 	N	s   
 c               $    V ^8  d   QhRRRRRR/# )r4   rV   rO   split_commasboolr9   z	list[str]r;   )r<   s   "r=   r>   r?      s!      C t 	 r@   c                   VP                  4       P                  V P                  4      pV P                   UUUu. uF8  w  rEpVP                  4       V8X  g   K  VP	                  V P                  4      NK:  	  ppppV'       g   V# . pV F@  p	TP                  V	P                  R4       U
u. uF  qP                  4       NK  	  up
4       KB  	  V# u upppi u up
i )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.
,)rB   encoder7   rC   rT   extendsplitstrip)rH   rV   r   get_header_keyra   item_key
item_valuerk   split_valuesrW   items   &&&        r=   get_listHeaders.get_list   s     ++DMM: ,0::
+5'Z~~>1 -Jdmm,+5 	 
 ME%++c:J K:J$:J KL 
 !Ls   CC+C
c                    V ^8  d   QhRRRR/# )r4   r5   r6   r9   r:   r;   )r<   s   "r=   r>   r?      s     ) )0 )D )r@   c                	    \        V4      pVP                  4        F  pW 9   g   K  V P                  V4       K  	  V P                  P	                  VP                  4       R # r\   )r/   re   poprC   r   )rH   r5   rV   s   && r=   updateHeaders.update   sD    '"<<>C{ " 	

'--(r@   c                   V ^8  d   QhRR/# )r4   r9   r/   r;   )r<   s   "r=   r>   r?      s     5 5g 5r@   c                	.    \        W P                  R 7      # )r7   )r/   r7   rH   s   &r=   copyHeaders.copy   s    tmm44r@   c                    V ^8  d   QhRRRR/# )r4   rV   rO   r9   r;   )r<   s   "r=   r>   r?      s      s s r@   c                0   VP                  4       P                  V P                  4      pV P                   UUUu. uF)  w  r4pWB8X  g   K  VP	                  V P                  4      NK+  	  ppppV'       d   RP                  V4      # \        V4      hu upppi )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
rj   )rB   r   r7   rC   rT   joinr|   )rH   rV   normalized_keyra   
header_keyheader_valuerF   s   &&     r=   __getitem__Headers.__getitem__   s     ++DMM: 04zz
/9+|+ /L./9 	 
 99U##sm
s   B
Bc               $    V ^8  d   QhRRRRRR/# r4   rV   rO   rW   r9   r:   r;   )r<   s   "r=   r>   r?      s&     @ @s @3 @4 @r@   c                   TP                  V P                  ;'       g    R4      pTP                  V P                  ;'       g    R4      pVP                  4       p\        V P                  4       UUUu. uF  w  pw  rxpW8X  g   K  VNK  	  p	ppp\        V	R,          4       F  pV P                  V K  	  V	'       d   V	^ ,          pW5V3V P                  V&   R# V P                  P                  W5V34       R# u upppi )z[
Set the header `key` to `value`, removing any duplicate entries.
Retains insertion order.
rR   :   NNN)r   rG   rB   	enumeraterC   reversedappend)
rH   rV   rW   set_key	set_value
lookup_keyidxra   r   found_indexess
   &&&       r=   __setitem__Headers.__setitem__   s    
 **T^^66w7LL!:!:7;	]]_
 *34::)>
)>%%a1% C)> 	 
 M"-.C

3 / "C&I>DJJsOJJwI>?
s   4C:C:c                    V ^8  d   QhRRRR/# )r4   rV   rO   r9   r:   r;   )r<   s   "r=   r>   r?      s        s  t  r@   c                T   VP                  4       P                  V P                  4      p\        V P                  4       UUUu. uF"  w  pw  rEpVP                  4       V8X  g   K   VNK$  	  ppppV'       g   \        V4      h\        V4       F  pV P                  V K  	  R# u upppi )z
Remove the header `key`.
N)rB   r   r7   r   rC   r|   r   )rH   rV   del_keyr   ra   r   pop_indexess   &&     r=   __delitem__Headers.__delitem__   s     ))+$$T]]3 *34::)>
)>%%a1~~7* C)> 	 
 3-K(C

3 )
s   B#%B#c                    V ^8  d   QhRRRR/# )r4   rV   rz   r9   r   r;   )r<   s   "r=   r>   r?     s     ? ?
 ?t ?r@   c                	    VP                  4       P                  V P                  4      pY P                   UUu. uF  w  r1q1NK	  	  upp9   # u uppi r\   )rB   r   r7   rC   )rH   rV   r   ra   s   &&  r=   __contains__Headers.__contains__  s?    YY[''6
::>:iaac:>>>>s   Ac                   V ^8  d   QhRR/# )r4   r9   ztyping.Iterator[typing.Any]r;   )r<   s   "r=   r>   r?     s     ! !5 !r@   c                	4    \        V P                  4       4      # r\   )iterre   r   s   &r=   __iter__Headers.__iter__  s    DIIK  r@   c                   V ^8  d   QhRR/# r4   r9   intr;   )r<   s   "r=   r>   r?     s       r@   c                	,    \        V P                  4      # r\   )lenrC   r   s   &r=   __len__Headers.__len__  s    4::r@   c                    V ^8  d   QhRRRR/# )r4   otherrz   r9   r   r;   )r<   s   "r=   r>   r?     s     7 7J 74 7r@   c                	    \        V4      pT P                   UUUu. uF	  w  r4qTT3NK  	  ppppTP                   UUUu. uF	  w  r4qTT3NK  	  pppp\        T4      \        T4      8H  #   \         d     R # i ; iu upppi u upppi F)r/   
ValueErrorrC   sorted)rH   r   other_headersra   rV   rW   	self_list
other_lists   &&      r=   __eq__Headers.__eq__  s    	#ENM 8<zzBzmae5\z	B8E8K8KL8K}quEl8K
Li F:$666  		 CLs   A* A< B*A98A9c                   V ^8  d   QhRR/# rN   r;   )r<   s   "r=   r>   r?   &  s     : :# :r@   c                	8   V P                   P                  pR pV P                  R8w  d   RV P                  : 2p\        \	        V P                  4       4      4      p\        V4      p\        V4      \        V4      8H  pV'       d   V RV: V R2# V RV: V R2# ) rQ   z, encoding=())	__class____name__r7   rE   r+   rv   dictr   )rH   
class_nameencoding_stras_listas_dictno_duplicate_keyss   &     r=   __repr__Headers.__repr__&  s    ^^,,
==G#((9:L243C3C3EFGw-LCL8 \7+l^1==Qwk,q99r@   )rG   rC   NNr\   r   )r   
__module____qualname____firstlineno____doc__rK   propertyr7   setterrS   re   rk   rF   rv   r}   r   r   r   r   r   r   r   r   r   r   r   __static_attributes__r;   r@   r=   r/   r/   ;   s    "<  0 __  F FX	$#	
,)5(@0 $?!7: :r@   c                      ] tR tRtRRRRRRRRRRRRR	RR
RRR/	R R lltR R lt]R R l4       tR R ltR R lt	R R lt
R R ltR R ltRtR# )r0   i6  paramsNr5   cookiescontentdatafilesjsonstream
extensionsc               H    V ^8  d   QhRRRRRRRRR	R
RRRRRRRRRRRRRR/# )r4   methodzstr | bytesurlz	URL | strr   zQueryParamTypes | Noner5   r6   r   CookieTypes | Noner   zRequestContent | Noner   zRequestData | Noner   zRequestFiles | Noner   ztyping.Any | Noner   'SyncByteStream | AsyncByteStream | Noner   zRequestExtensions | Noner9   r:   r;   )r<   s   "r=   r>   Request.__annotate__7  s     >! >!>! >!
 '>! $>! $>! '>! !>! #>!  >! 8>! ->! 
>!r@   c       	        	   \        V\        4      '       d    VP                  R 4      P                  4       MVP                  4       V n        \        V4      V n        Ve"   V P                  P                  VR7      V n        \        V4      V n	        Vf   / MTV n
        V'       d   \        V4      P                  V 4       V
f   V P                  P                  R4      p\        TTTT	\        V'       d&   VP!                  V P                  P"                  4      MRR7      R7      w  rJV P%                  V4       Wn        \        V
\(        4      '       d   V P+                  4        R# R# Wn        R# )rQ   N)r   zcontent-type)content_type)r   r   r   r   boundary)rD   bytesrT   upperr   r'   r   copy_merge_paramsr/   r5   r   r.   set_cookie_headerr}   r	   r   r   r7   _preparer   r   read)rH   r   r   r   r5   r   r   r   r   r   r   r   r   s   &&&$$$$$$$$$ r=   rK   Request.__init__7  s"   " &%(( MM'"((* 	
 s8xx111@DHw' * 2"
G..t4>'+||'7'7'GL,A# ".!4!4T\\5J5J!K
OG MM'" K&*--		 ." !Kr@   c                    V ^8  d   QhRRRR/# r4   default_headerszdict[str, str]r9   r:   r;   )r<   s   "r=   r>   r   w  s     @ @ @4 @r@   c                	j   VP                  4        FH  w  r#VP                  4       R 8X  d   RV P                  9   d   K-  V P                  P                  W#4       KJ  	  . pRV P                  9   pRV P                  9   ;'       g    RV P                  9   pV'       gD   V P                  P
                  '       d(   VP                  RV P                  P                  34       V'       g#   V P                  R9   d   VP                  R4       \        W@P                  P                  ,           4      V n        R# )transfer-encodingzContent-LengthHostzTransfer-Encodings   HostN)POSTPUTPATCH)s   Content-Length   0)rF   rB   r5   
setdefaultr   hostr   netlocr   r/   rS   )rH   r  rV   rW   auto_headershas_hosthas_content_lengths   &&     r=   r   Request._preparew  s    )//1JCyy{116F$,,6VLL##C/	 2 35T\\),SS0Ct||0S 	 DHHMMM$((// :;!dkk5M&M 9:|ll.>.>>?r@   c                   V ^8  d   QhRR/# r4   r9   r   r;   )r<   s   "r=   r>   r            r@   c                	R    \        V R 4      '       g   \        4       hV P                  # _content)hasattrr   r  r   s   &r=   r   Request.content  s"    tZ(( ""}}r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   r     s      e r@   c                J   \        V R4      '       g   \        V P                  \        P                  4      '       g   Q hRP                  V P                  4      V n        \        V P                  \        4      '       g   \        V P                  4      V n        V P                  # )&
Read and return the request content.
r  r@   )r  rD   r   typingIterabler   r  r   r   s   &r=   r   Request.read  sm     tZ((dkk6??;;;;HHT[[1DMdkk:66 )7}}r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   r     s      U r@   c                  "   \        V R4      '       gT   \        V P                  \        P                  4      '       g   Q hRP                  V P                   Uu. u Rj  xL
 qNK  V P                  #  LDMu upi up4      T n        \        T P                  \        4      '       d   KC  \        T P                  4      T n        L^5i)r  r  r@   N)r  rD   r   r  AsyncIterabler   r  r   rH   parts   & r=   areadRequest.aread  s      tZ((dkk6+?+?@@@@HHT[[%I%ITd }} &J%IJDMdkk:66 )7sB   ACA8A6
 A4!A6
$A8(C4A6
6A871C+Cc                   V ^8  d   QhRR/# rN   r;   )r<   s   "r=   r>   r     s     ; ;# ;r@   c                	    V P                   P                  p\        V P                  4      pR V RV P                  : RV: R2# )<r   rj   z)>)r   r   rO   r   r   )rH   r   r   s   &  r=   r   Request.__repr__  s=    ^^,,
$((m:,abr::r@   c                   V ^8  d   QhRR/# r4   r9   dict[str, typing.Any]r;   )r<   s   "r=   r>   r          
 
3 
r@   c                	|    V P                   P                  4        UUu/ uF  w  rVR9  g   K  WbK  	  upp# u uppi )r   )r   r   __dict__rF   rH   namerW   s   &  r=   __getstate__Request.__getstate__  sE      $}}224
433 DK4
 	
 
   88c                    V ^8  d   QhRRRR/# r4   stater-  r9   r:   r;   )r<   s   "r=   r>   r     s     ) )"7 )D )r@   c                	|    VP                  4        F  w  r#\        WV4       K  	  / V n        \        4       V n        R # r\   )rF   setattrr   r   r   rH   r9  r3  rW   s   &&  r=   __setstate__Request.__setstate__  s/     ;;=KDD& )&(r@   )r  r   r5   r   r   r   )r   r   r   r   rK   r   r   r   r   r%  r   r4  r=  r   r;   r@   r=   r0   r0   6  s    >!
 *.>! '+>! '+>! *.>! $(>! &*>! #'>! ;?>! 04>!@@*  
;

) )r@   c                  j   ] tR tRtRRRRRRRRRRRRR	RR
RRRRR/
R R lltR R lt]R R l4       t]P                  R R l4       t]R R l4       t	]	P                  R R l4       t	]R R l4       t
]R R l4       t]R R l4       t]R  R! l4       t]R" R# l4       t]R$ R% l4       t]P                  R& R' l4       t]R( R) l4       tR* R+ lt]R, R- l4       t]R. R/ l4       t]R0 R1 l4       t]R2 R3 l4       t]R4 R5 l4       t]R6 R7 l4       t]R8 R9 l4       tR: R; ltR< R= lt]R> R? l4       t]R@ RA l4       t]RB RC l4       tRD RE ltRF RG ltRH RI lt RJ RK lt!RcRL RM llt"RcRN RO llt#RP RQ lt$RcRR RS llt%RT RU lt&RV RW lt'RcRX RY llt(RcRZ R[ llt)R\ R] lt*RcR^ R_ llt+R` Ra lt,Rbt-R# )dr1   i  r5   Nr   texthtmlr   r   requestr   historydefault_encodingrR   c               H    V ^8  d   QhRRRRRRRRR	RR
RRRRRRRRRRRRR/# )r4   status_coder   r5   r6   r   zResponseContent | Noner@  r8   rA  r   rz   r   r   rB  zRequest | Noner   zResponseExtensions | NonerC  zlist[Response] | NonerD  z#str | typing.Callable[[bytes], str]r9   r:   r;   )r<   s   "r=   r>   Response.__annotate__  s     5' 5'5' $	5'
 (5' 5' 5' 5' 85'  5' .5' '5' >5' 
5'r@   c       
        	t   Wn         \        V4      V n        Wn        R V n        V	f   / MT	V n        V
f   . M
\        V
4      V n        RV n        RV n	        Wn
        VfM   \        W4WV4      w  r'V P                  V4       Wpn        \        V\        4      '       d   V P!                  4        MWpn        ^ V n        R # )NF)rF  r/   r5   _requestnext_requestr   rE   rC  	is_closedis_stream_consumedrD  r
   r   r   rD   r   r   _num_bytes_downloaded)rH   rF  r5   r   r@  rA  r   r   rB  r   rC  rD  s   &&$$$$$$$$$$r=   rK   Response.__init__  s     'w'(/ -14>4FbJ$_r$w-"' 0>-gTHOGMM'" K&*--		 !K%&"r@   c                    V ^8  d   QhRRRR/# r  r;   )r<   s   "r=   r>   rG    s     0 0 04 0r@   c                	    VP                  4        FH  w  r#VP                  4       R 8X  d   RV P                  9   d   K-  V P                  P                  W#4       KJ  	  R# )r  zcontent-lengthN)rF   rB   r5   r  )rH   r  rV   rW   s   &&  r=   r   Response._prepare  sG    )//1JCyy{116F$,,6VLL##C/	 2r@   c                   V ^8  d   QhRR/# )r4   r9   datetime.timedeltar;   )r<   s   "r=   r>   rG    s     
 
+ 
r@   c                T    \        V R4      '       g   \        R4      hV P                  # )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  RuntimeErrorrU  r   s   &r=   elapsedResponse.elapsed   s/     tZ((+  }}r@   c                    V ^8  d   QhRRRR/# )r4   rW  rS  r9   r:   r;   )r<   s   "r=   r>   rG    s        1  d  r@   c                	    Wn         R # r\   )rU  )rH   rW  s   &&r=   rW  rX    s    r@   c                   V ^8  d   QhRR/# )r4   r9   r0   r;   )r<   s   "r=   r>   rG    s       r@   c                L    V P                   f   \        R4      hV P                   # )zB
Returns the request instance associated to the current response.
z7The request instance has not been set on this response.)rI  rV  r   s   &r=   rB  Response.request  s*    
 == I  }}r@   c                    V ^8  d   QhRRRR/# )r4   rW   r0   r9   r:   r;   )r<   s   "r=   r>   rG    s      W  r@   c                	    Wn         R # r\   )rI  r]   s   &&r=   rB  r]    s    r@   c                   V ^8  d   QhRR/# rN   r;   )r<   s   "r=   r>   rG  !  s     A Ac Ar@   c                	t     V P                   R ,          pVP                  RRR7      #   \         d     R# i ; i)http_versionrQ   ignoreerrorszHTTP/1.1)r   rT   r|   )rH   rb  s   & r=   rb  Response.http_version   sB    	A"&//."AL  &&wx&@@  		s   ( 77c                   V ^8  d   QhRR/# rN   r;   )r<   s   "r=   r>   rG  *  s     B Bs Br@   c                	     V P                   R ,          pVP                  RRR7      #   \         d$    \        P                  ! T P
                  4      u # i ; i)reason_phraserQ   rc  rd  )r   rT   r|   r   get_reason_phraserF  )rH   ri  s   & r=   ri  Response.reason_phrase)  sV    	B#'???#CM !'''AA  	=**4+;+;<<	=s   ( +AAc                   V ^8  d   QhRR/# )r4   r9   r'   r;   )r<   s   "r=   r>   rG  3  s        S  r@   c                .    V P                   P                  # )z1
Returns the URL for which the request was made.
)rB  r   r   s   &r=   r   Response.url2  s    
 ||r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   rG  :  r  r@   c                	R    \        V R 4      '       g   \        4       hV P                  # r  )r  r   r  r   s   &r=   r   Response.content9  s"    tZ((!##}}r@   c                   V ^8  d   QhRR/# rN   r;   )r<   s   "r=   r>   rG  @  s      c r@   c                	J   \        V R 4      '       g   V P                  pV'       g   RV n        V P                  # \        V P                  ;'       g    RR7      pRP                  VP                  V P                  4      VP                  4       .4      V n        V P                  # )_textr   rR   r   )r  r   rt  r   r7   r   rT   flush)rH   r   decoders   &  r=   r@  Response.text?  sx    tW%%llG
 zz &t}}/G/GHWWgnnT\\&BGMMO%TU
zzr@   c                   V ^8  d   QhRR/# r4   r9   r8   r;   )r<   s   "r=   r>   rG  K  s      * r@   c                V   \        V R4      '       g   V P                  pVe   \        V4      '       g[   \        V P                  \
        4      '       d   V P                  pM-\        V R4      '       d   V P	                  V P                  4      pT;'       g    RV n        V P                  # )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.
rG   r  rR   )r  charset_encodingr(   rD   rD  rO   r  rG   )rH   r7   s   & r=   r7   Response.encodingJ  s     t[)),,H'8'B'Bd33S99#44HT:..#44T]]CH%00DN~~r@   c                    V ^8  d   QhRRRR/# rZ   r;   )r<   s   "r=   r>   rG  a  s      c d r@   c                L    \        V R4      '       d   \        R4      hWn        R# )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.
rt  z?Setting encoding after `text` has been accessed is not allowed.N)r  r   rG   r]   s   &&r=   r7   r|  `  s(     4!!Q  r@   c                   V ^8  d   QhRR/# ry  r;   )r<   s   "r=   r>   rG  o  s     8 8* 8r@   c                Z    V P                   P                  R4      pVf   R# \        V4      # )z?
Return the encoding, as specified by the Content-Type header.
zContent-TypeN)r5   r}   r,   )rH   r   s   & r=   r{  Response.charset_encodingn  s,    
 ||''7),77r@   c                   V ^8  d   QhRR/# )r4   r9   r   r;   )r<   s   "r=   r>   rG  y  s      n r@   c                   \        V R4      '       g   . pV P                  P                  RRR7      pV FE  pVP                  4       P	                  4       p \
        V,          pVP                  V! 4       4       KG  	  \        V4      ^8X  d   V^ ,          V n	        V P                  # \        V4      ^8  d   \        VR7      V n	        V P                  # \        4       V n	        V P                  #   \         d     K  i ; i)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   )children)r  r5   r   r   rB   r   r   r|   r   r  r   r   )rH   decodersrk   rW   decoder_clss   &    r=   _get_content_decoderResponse._get_content_decodery  s    
 tZ((-/H\\**+=D*QF++-"4U";KOOKM2	   8}! ( }} X" ,h ? }} !0 1}}   s   #C//C>=C>c                   V ^8  d   QhRR/# r4   r9   r   r;   )r<   s   "r=   r>   rG    s     8 8$ 8r@   c                B    \         P                  ! V P                  4      # )zE
A property which is `True` for 1xx status codes, `False` otherwise.
)r   is_informationalrF  r   s   &r=   r  Response.is_informational  s    
 %%d&6&677r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   rG    s     2 2D 2r@   c                B    \         P                  ! V P                  4      # )zE
A property which is `True` for 2xx status codes, `False` otherwise.
)r   
is_successrF  r   s   &r=   r  Response.is_success  s    
  0 011r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   rG    s     	3 	3T 	3r@   c                B    \         P                  ! V P                  4      # )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_redirectrF  r   s   &r=   r  Response.is_redirect  s       !1!122r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   rG         7 7 7r@   c                B    \         P                  ! V P                  4      # )zE
A property which is `True` for 4xx status codes, `False` otherwise.
)r   is_client_errorrF  r   s   &r=   r  Response.is_client_error      
 $$T%5%566r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   rG    r  r@   c                B    \         P                  ! V P                  4      # )zE
A property which is `True` for 5xx status codes, `False` otherwise.
)r   is_server_errorrF  r   s   &r=   r  Response.is_server_error  r  r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   rG    s     0 0$ 0r@   c                B    \         P                  ! V P                  4      # )zM
A property which is `True` for 4xx and 5xx status codes, `False` otherwise.
)r   is_errorrF  r   s   &r=   r  Response.is_error  s    
 ~~d..//r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   rG    s     
 
t 
r@   c                    V P                   \        P                  \        P                  \        P                  \        P
                  \        P                  39   ;'       d    RV P                  9   # )z[
Returns True for 3xx responses with a properly formed URL redirection,
`False` otherwise.
Location)rF  r   MOVED_PERMANENTLYFOUND	SEE_OTHERTEMPORARY_REDIRECTPERMANENT_REDIRECTr5   r   s   &r=   has_redirect_locationResponse.has_redirect_location  s_      ''(((( + + dll*	
r@   c                   V ^8  d   QhRR/# )r4   r9   r1   r;   )r<   s   "r=   r>   rG    s     #G #G( #Gr@   c                *   V P                   pVf   \        R4      hV P                  '       d   V # V P                  '       d   RpMRpV P                  ^d,          p^R^R^R^R/pVP                  VR4      pVP                  WR	7      p\        W!V R
7      h)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}zInformational responsezRedirect responsezClient errorzServer errorzInvalid status code)
error_type)rB  response)rI  rV  r  r  rF  r}   r<   r   )rH   rB  messagestatus_classerror_typesr  s   &     r=   raise_for_statusResponse.raise_for_status  s     --?> 
 ???K%%%w w 
 ''3.'"~~	
 !__\3HI
...=gFFr@   c                    V ^8  d   QhRRRR/# )r4   kwargsrz   r9   r;   )r<   s   "r=   r>   rG    s     5 5Z 5J 5r@   c                	D    \         P                  ! V P                  3/ VB # r\   )jsonlibloadsr   )rH   r  s   &,r=   r   Response.json  s    }}T\\4V44r@   c                   V ^8  d   QhRR/# )r4   r9   r.   r;   )r<   s   "r=   r>   rG    s       r@   c                	    \        V R 4      '       g+   \        4       V n        V P                  P                  V 4       V P                  # )_cookies)r  r.   r  extract_cookiesr   s   &r=   r   Response.cookies   s4    tZ((#IDMMM))$/}}r@   c                   V ^8  d   QhRR/# )r4   r9   z dict[str | None, dict[str, str]]r;   )r<   s   "r=   r>   rG    s     
 
7 
r@   c                    V P                   P                  R4      pVf   / # \        V4       Uu/ uF.  pVP                  R4      ;'       g    VP                  R4      VbK0  	  up# u upi )z9
Returns the parsed header links of the response, if any
linkrelr   )r5   r}   r-   )rH   headerr  s   &  r=   linksResponse.links  sk    
 !!&)>I +62
2 XXe_//$62
 	
 
s   A&A&c                   V ^8  d   QhRR/# r   r;   )r<   s   "r=   r>   rG    s     * *c *r@   c                	    V P                   # r\   )rM  r   s   &r=   num_bytes_downloadedResponse.num_bytes_downloaded  s    )))r@   c                   V ^8  d   QhRR/# rN   r;   )r<   s   "r=   r>   rG    s     G G# Gr@   c                	<    R V P                    RV P                   R2# )z<Response [ ]>)rF  ri  r   s   &r=   r   Response.__repr__  s%    T--.a0B0B/C2FFr@   c                   V ^8  d   QhRR/# r,  r;   )r<   s   "r=   r>   rG    r.  r@   c                	|    V P                   P                  4        UUu/ uF  w  rVR9  g   K  WbK  	  upp# u uppi )r   )r   r   rK  r  r0  r2  s   &  r=   r4  Response.__getstate__  sE      $}}224
4LL DK4
 	
 
r6  c                    V ^8  d   QhRRRR/# r8  r;   )r<   s   "r=   r>   rG  #  s     ) )"7 )D )r@   c                	    VP                  4        F  w  r#\        WV4       K  	  R V n        / V n        \	        4       V n        R# )TN)rF   r;  rK  r   r   r   r<  s   &&  r=   r=  Response.__setstate__#  s6     ;;=KDD& )&(r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   rG  *  s      e r@   c                    \        V R4      '       g%   RP                  V P                  4       4      V n        V P                  # )'
Read and return the response content.
r  r@   )r  r   
iter_bytesr  r   s   &r=   r   Response.read*  s2     tZ((HHT__%67DM}}r@   c                    V ^8  d   QhRRRR/# r4   
chunk_size
int | Noner9   ztyping.Iterator[bytes]r;   )r<   s   "r=   r>   rG  2  s        Z  ;Q  r@   c              #    "   \        V R4      '       df   Vf   \        V P                  4      MTp\        ^ \        V P                  4      \	        V^4      4       F  pV P                  W"V,            x  K  	  R# V P                  4       p\        VR7      p\        V P                  R7      ;_uu_ 4        V P                  4        F0  pVP                  V4      pVP                  V4       F  pVx  K	  	  K2  	  VP                  4       pVP                  V4       F  pVx  K	  	  VP                  4        F  pVx  K	  	  RRR4       R#   + '       g   i     R# ; i5iz
A byte-iterator over the decoded response content.
This allows us to handle gzip, deflate, brotli, and zstd encoded responses.
r  Nr  rB  )r  r   r  rangemaxr  r   r   rI  iter_rawrT   ru  rH   r  irv  chunker	raw_bytesdecodedchunks   &&      r=   r  Response.iter_bytes2  s    
 4$$/9/AT]]+zJ1c$--0#j!2DEmmAJ77 F //1G!Z8G 77!%I%nnY7G!(!8# "9 "1 "--/$^^G4EK 5$]]_EK - 8777s   B2E4BE
 
E
E		Ec                    V ^8  d   QhRRRR/# )r4   r  r  r9   typing.Iterator[str]r;   )r<   s   "r=   r>   rG  I  s      J :N r@   c              #    "   \        V P                  ;'       g    RR7      p\        VR7      p\        V P                  R7      ;_uu_ 4        V P                  4        F0  pVP                  V4      pVP                  V4       F  pVx  K	  	  K2  	  VP                  4       pVP                  V4       F  pVx  K	  	  VP                  4        F  pVx  K	  	  RRR4       R#   + '       g   i     R# ; i5iz
A str-iterator over the decoded response content
that handles both gzip, deflate, etc but also detects the content's
string encoding.
rR   r   r  r  N)r   r7   r   r   rI  r  rT   ru  rH   r  rv  r  byte_contenttext_contentr  s   &&     r=   	iter_textResponse.iter_textI  s      t}}'?'?@4T]]33 $ 1&~~l;$^^L9EK : !2 #==?L 5 6  ) 4333s   AC7BC#
C7#C4	.	C7c                   V ^8  d   QhRR/# r4   r9   r  r;   )r<   s   "r=   r>   rG  \  s      0 r@   c              #  	4  "   \        4       p\        V P                  R 7      ;_uu_ 4        V P                  4        F  pVP	                  V4       F  pVx  K	  	  K!  	  VP                  4        F  pVx  K	  	  RRR4       R#   + '       g   i     R# ; i5ir  N)r   r   rI  r  rT   ru  rH   rv  r@  lines   &   r=   
iter_linesResponse.iter_lines\  si     -T]]33(#NN40DJ 1 )  
 (	 4333s   )BAB:
BB		Bc                    V ^8  d   QhRRRR/# r  r;   )r<   s   "r=   r>   rG  e  s      : 9O r@   c              #  t  "   V P                   '       d   \        4       hV P                  '       d   \        4       h\	        V P
                  \        4      '       g   \        R4      hRV n         ^ V n        \        VR7      p\        V P                  R7      ;_uu_ 4        V P
                   FA  pV ;P                  \        V4      ,          un        VP                  V4       F  pVx  K	  	  KC  	  RRR4       VP                  4        F  pVx  K	  	  V P                  4        R#   + '       g   i     L=; i5i)0
A byte-iterator over the raw response content.
z5Attempted to call a sync iterator on an async stream.Tr  r  N)rL  r   rK  r   rD   r   r&   rV  rM  r   r   rI  r   rT   ru  closerH   r  r  raw_stream_bytesr  s   &&   r=   r  Response.iter_rawe  s      """ "">>>. $++~66VWW"&%&"4T]]33$(KK **c2B.CC*$^^,<=EK > %0 4 ]]_EK % 	

 43s$   .D8A-D8AD%05D8%D5	0D8c                   V ^8  d   QhRR/# r4   r9   r:   r;   )r<   s   "r=   r>   rG    s     $ $t $r@   c                <   \        V P                  \        4      '       g   \        R4      hV P                  '       gK   RV n        \        V P                  R7      ;_uu_ 4        V P                  P                  4        RRR4       R# R#   + '       g   i     R# ; i)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)rD   r   r&   rV  rK  r   rI  r  r   s   &r=   r  Response.close  sg    
 $++~66TUU~~~!DN 77!!# 87 777s   #B

B	c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   rG    s      U r@   c                   "   \        V R4      '       g,   RP                  V P                  4        Uu. u Rj  xL
 qNK  V P                  #  LDMu upi up4      T n        L"5i)r  r  r@   N)r  r   aiter_bytesr  r#  s   & r=   r%  Response.aread  sK      tZ((HHT=M=M=O%P%PTd}} &Q%PQDMs6   0A"AA
AA
A A"A
AA"c                    V ^8  d   QhRRRR/# r4   r  r  r9   ztyping.AsyncIterator[bytes]r;   )r<   s   "r=   r>   rG    s        $ 	$ r@   c                 "   \        V R4      '       dg   Vf   \        V P                  4      MTp\        ^ \        V P                  4      \	        V^4      4       F  pV P                  W"V,            5x  K  	  R# V P                  4       p\        VR7      p\        V P                  R7      ;_uu_ 4        V P                  4         Rj  xL
  pVP                  V4      pVP                  V4       F  pV5x  K
  	  K:   L5D6TP                  4       pTP                  T4       F  pT5x  K
  	  TP                  4        F  pT5x  K
  	  RRR4       R#   + '       g   i     R# ; i5ir  )r  r   r  r  r  r  r   r   rI  	aiter_rawrT   ru  r  s   &&      r=   r  Response.aiter_bytes  s     4$$/9/AT]]+zJ1c$--0#j!2DEmmAJ77 F //1G!Z8G 77'+~~'7 $ $)%nnY7G!(!8# "9$'7 "--/$^^G4EK 5$]]_EK - 8777sC   B3E*5ED
D 
D2E DA
E
E*E'	!	E*c                    V ^8  d   QhRRRR/# )r4   r  r  r9   typing.AsyncIterator[str]r;   )r<   s   "r=   r>   rG    s      $	"r@   c                 "   \        V P                  ;'       g    RR7      p\        VR7      p\        V P                  R7      ;_uu_ 4        V P                  4         Rj  xL
  pVP                  V4      pVP                  V4       F  pV5x  K
  	  K:   L5D6TP                  4       pTP                  T4       F  pT5x  K
  	  TP                  4        F  pT5x  K
  	  RRR4       R#   + '       g   i     R# ; i5ir  )r   r7   r   r   rI  r  rT   ru  r  s   &&     r=   
aiter_textResponse.aiter_text  s      t}}'?'?@4T]]33&*&6&6&8    l&~~l;$^^L9EK : &8 #==?L 5 6  ) 4333sC   ADC.B"B
#B&2C.BA
C.$
D.C?	9	Dc                   V ^8  d   QhRR/# )r4   r9   r  r;   )r<   s   "r=   r>   rG    s      #< r@   c               	H  "   \        4       p\        V P                  R 7      ;_uu_ 4        V P                  4         Rj  xL
  pVP	                  V4       F  pV5x  K
  	  K)   L$D%TP                  4        F  pT5x  K
  	  RRR4       R#   + '       g   i     R# ; i5ir  )r   r   rI  r  rT   ru  r  s   &   r=   aiter_linesResponse.aiter_lines  sv     -T]]33"oo/  d#NN40DJ 1/  
 (	 4333s?   )B"BA' A%
A'!B%A''B
B"B		B"c                    V ^8  d   QhRRRR/# r  r;   )r<   s   "r=   r>   rG    s      $	$r@   c                 "   V P                   '       d   \        4       hV P                  '       d   \        4       h\	        V P
                  \        4      '       g   \        R4      hRV n         ^ V n        \        VR7      p\        V P                  R7      ;_uu_ 4        V P
                    Rj  xL
  pV ;P                  \        V4      ,          un        VP                  V4       F  pV5x  K
  	  KK   LFDG RRR4       M  + '       g   i     M; iTP                  4        F  pT5x  K
  	  T P                  4       G Rj  xL 
  R# 5i)r  z6Attempted to call an async iterator on an sync stream.Tr  r  N)rL  r   rK  r   rD   r   r   rV  rM  r   r   rI  r   rT   ru  acloser  s   &&   r=   r  Response.aiter_raw  s      """ "">>>. $++77WXX"&%&"4T]]33*.++    &**c2B.CC*$^^,<=EK > + 4333 ]]_EK % kkmsT   .EA-ED+C8/C6
0C83AD6C88D:	ED	7EEEc                   V ^8  d   QhRR/# r	  r;   )r<   s   "r=   r>   rG    s     + +d +r@   c                X  "   \        V P                  \        4      '       g   \        R4      hV P                  '       gS   RV n        \        V P                  R7      ;_uu_ 4        V P                  P                  4       G Rj  xL
  RRR4       R# R#  L  + '       g   i     R# ; i5i)r  z3Attempted to call an async close on an sync stream.Tr  N)rD   r   r   rV  rK  r   rI  r!  r   s   &r=   r!  Response.aclose  sv     
 $++77TUU~~~!DN 77kk((*** 87  + 877s5   =B* %B*%BBBB*BB'	!	B*)r  r  r  rU  rG   rM  rI  rt  rD  r   r5   rC  rK  rL  rJ  rF  r   r\   ).r   r   r   r   rK   r   r   rW  r   rB  rb  ri  r   r   r@  r7   r{  r  r  r  r  r  r  r  r  r  r   r   r  r  r   r4  r=  r   r  r  r  r  r  r%  r  r  r  r  r!  r   r;   r@   r=   r1   r1     s   5' '+	5'
 +/5'  5'  5'  5' ;?5' #'5' 155' *.5' AH5'n0 
 
 ^^      ^^  A A B B      
    * __  8 82 8 8 2 2 	3 	3 7 7 7 7 0 0 
 
,#GJ5   
 
 * *G
) .&4$ 2*8+ +r@   c                  8   ] tR tRtRtR'R R lltR R ltR R	 ltR(R
 R lltR)R R llt	R*R R llt
R*R R lltR'R R lltR R ltR R ltR R ltR R ltR R ltR R ltR  R! lt ! R" R#]P*                  P,                  4      t ! R$ R%4      tR&tR# )+r.   i  z%
HTTP Cookies, as a mutable mapping.
Nc                    V ^8  d   QhRRRR/# r4   r   r   r9   r:   r;   )r<   s   "r=   r>   Cookies.__annotate__  s       2 d r@   c                	   Ve   \        V\        4      '       dT   \        4       V n        \        V\        4      '       d-   VP	                  4        F  w  r#V P                  W#4       K  	  R # R # \        V\        4      '       d.   \        4       V n        V F  w  r#V P                  W#4       K  	  R # \        V\        4      '       d@   \        4       V n        VP                   F  pV P                  P                  V4       K   	  R # Wn        R # r\   )	rD   r   r   jarrF   setrE   r.   
set_cookie)rH   r   rV   rW   cookies   &&   r=   rK   Cookies.__init__  s    ?j$77 {DH'4((")--/JCHHS( #2 ) && {DH%
$ &)) {DH!++##F+ & Hr@   c                    V ^8  d   QhRRRR/# r4   r  r1   r9   r:   r;   )r<   s   "r=   r>   r)    s     B B BT Br@   c                    V P                  V4      pV P                  VP                  4      pV P                  P	                  W#4       R# )z?
Loads any cookies based on the response `Set-Cookie` headers.
N)_CookieCompatResponse_CookieCompatRequestrB  r+  r  )rH   r  urllib_responseurllib_requests   &&  r=   r  Cookies.extract_cookies  s<     44X>2283C3CD  Ar@   c                    V ^8  d   QhRRRR/# r4   rB  r0   r9   r:   r;   )r<   s   "r=   r>   r)    s     3 3 3T 3r@   c                ^    V P                  V4      pV P                  P                  V4       R# )z=
Sets an appropriate 'Cookie:' HTTP header on the `Request`.
N)r4  r+  add_cookie_header)rH   rB  r6  s   && r=   r   Cookies.set_cookie_header  s&     227;"">2r@   c          
     ,    V ^8  d   QhRRRRRRRRRR/# )r4   r3  rO   rW   domainpathr9   r:   r;   )r<   s   "r=   r>   r)    s/     $ $ $C $ $ $t $r@   c                   / R^ bRVbRVbRRbRRbRVbR	\        V4      bR
VP                  R4      bRVbR\        V4      bRRbRRbRRbRRbRRbRRR/bRRbp\        R/ VB pV P                  P	                  V4       R# )zE
Set a cookie value by name. May optionally include domain and path.
versionr3  rW   portNport_specifiedFr>  domain_specifieddomain_initial_dot.r?  path_specifiedsecureexpiresdiscardTcommentcomment_urlrestHttpOnlyrfc2109r;   )r   
startswithr   r+  r-  )rH   r3  rW   r>  r?  r  r.  s   &&&&&  r=   r,  Cookies.set  s
   
q
D
 U
 D	

 e
 f
 V
 !&"3"3C"8
 D
 d4j
 e
 t
 t
 t
 4
  Z&!
" u#
& !&!F#r@   c          
     ,    V ^8  d   QhRRRRRRRRRR/# )r4   r3  rO   ry   r8   r>  r?  r9   r;   )r<   s   "r=   r>   r)  5  s<        	
  
r@   c                    RpV P                    Fd  pVP                  V8X  g   K  Ve   VP                  V8X  g   K-  Ve   VP                  V8X  g   KD  Ve   RV 2p\	        V4      hVP
                  pKf  	  Vf   V# V# )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+  r3  r>  r?  r   rW   )rH   r3  ry   r>  r?  rW   r.  r  s   &&&&&   r=   r}   Cookies.get5  sz     hhF{{d">V]]f%<|v{{d': ,(I$&PG"0"99 &  =Nr@   c               (    V ^8  d   QhRRRRRRRR/# )r4   r3  rO   r>  r8   r?  r9   r:   r;   )r<   s   "r=   r>   r)  N  s8     D DD D 	D
 
Dr@   c                   Ve!   Ve   V P                   P                  W#V4      # V P                    Uu. uFF  pVP                  V8X  g   K  Ve   VP                  V8X  g   K-  Ve   VP                  V8X  g   KD  VNKH  	  ppV F>  pV P                   P                  VP                  VP                  VP                  4       K@  	  R# u upi )zu
Delete a cookie by name. May optionally include domain and path
in order to specify exactly which cookie to delete.
N)r+  clearr3  r>  r?  )rH   r3  r>  r?  r.  removes   &&&&  r=   deleteCookies.deleteN  s     $"288>>&55 ((
"{{d"  6==F#:  !4	 F" 	 
 FHHNN6==&++v{{C 
s   CC"C9Cc               $    V ^8  d   QhRRRRRR/# )r4   r>  r8   r?  r9   r:   r;   )r<   s   "r=   r>   r)  f  s!      J Z 4 r@   c                    . pVe   VP                  V4       Ve   Vf   Q hVP                  V4       V P                  P                  ! V!   R# )zo
Delete all cookies. Optionally include a domain and path in
order to only delete a subset of all the cookies.
N)r   r+  rW  )rH   r>  r?  argss   &&& r=   rW  Cookies.clearf  sI    
 KK%%%KKr@   c                    V ^8  d   QhRRRR/# r(  r;   )r<   s   "r=   r>   r)  s  s     ( (0 (D (r@   c                	x    \        V4      pVP                   F  pV P                  P                  V4       K   	  R # r\   )r.   r+  r-  )rH   r   r.  s   && r=   r   Cookies.updates  s,    '"kkFHH' "r@   c               $    V ^8  d   QhRRRRRR/# )r4   r3  rO   rW   r9   r:   r;   )r<   s   "r=   r>   r)  x  s!     % % %C %D %r@   c                	$    V P                  W4      # r\   )r,  r2  s   &&&r=   r   Cookies.__setitem__x  s    xx$$r@   c                    V ^8  d   QhRRRR/# )r4   r3  rO   r9   r;   )r<   s   "r=   r>   r)  {  s        r@   c                	F    V P                  V4      pVf   \        V4      hV# r\   )r}   r|   r2  s   && r=   r   Cookies.__getitem__{  s#    =4. r@   c                    V ^8  d   QhRRRR/# )r4   r3  rO   r9   r:   r;   )r<   s   "r=   r>   r)    s     ! ! ! !r@   c                	$    V P                  V4      # r\   )rY  )rH   r3  s   &&r=   r   Cookies.__delitem__  s    {{4  r@   c                   V ^8  d   QhRR/# r   r;   )r<   s   "r=   r>   r)    s       r@   c                	,    \        V P                  4      # r\   )r   r+  r   s   &r=   r   Cookies.__len__  s    488}r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   r)    s     4 4. 4r@   c                	(    R  V P                    4       # )c              3  8   "   T F  qP                   x  K  	  R # 5ir\   )r3  ).0r.  s   & r=   	<genexpr>#Cookies.__iter__.<locals>.<genexpr>  s     3((s   r+  r   s   &r=   r   Cookies.__iter__  s    3$((33r@   c                   V ^8  d   QhRR/# r  r;   )r<   s   "r=   r>   r)    s      $ r@   c                	.    V P                    F  p R # 	  R# )TFrt  )rH   ra   s   & r=   __bool__Cookies.__bool__  s    A r@   c                   V ^8  d   QhRR/# rN   r;   )r<   s   "r=   r>   r)    s     , ,# ,r@   c                	    R P                  V P                   Uu. uF-  pRVP                   RVP                   RVP                   R2NK/  	  up4      pRV R2# u upi )rj   z<Cookie =z for z />z	<Cookies[r  )r   r+  r3  rW   r>  )rH   r.  cookies_reprs   &  r=   r   Cookies.__repr__  sh    yy #hh&F 6;;-qeFMM?#N&
 <.++s   3Ac                  D   a  ] tR tRtRtR V 3R lltR V 3R lltRtV ;t# )Cookies._CookieCompatRequesti  j
Wraps a `Request` instance up in a compatibility interface suitable
for use with `CookieJar` operations.
c                    V ^8  d   QhRRRR/# r9  r;   )r<   s   "r=   r>   )Cookies._CookieCompatRequest.__annotate__  s     	# 	#G 	# 	#r@   c                	   < \         SV `  \        VP                  4      \	        VP
                  4      VP                  R 7       Wn        R# ))r   r5   r   N)superrK   rO   r   r   r5   r   rB  )rH   rB  r   s   &&r=   rK   %Cookies._CookieCompatRequest.__init__  s;    G$W__-~~  
 #Lr@   c               $    V ^8  d   QhRRRRRR/# r   r;   )r<   s   "r=   r>   r    s!     	. 	.s 	.3 	.4 	.r@   c                	V   < \         SV `  W4       W P                  P                  V&   R # r\   )r  add_unredirected_headerrB  r5   )rH   rV   rW   r   s   &&&r=   r  4Cookies._CookieCompatRequest.add_unredirected_header  s"    G+C7(-LL  %r@   r  )	r   r   r   r   r   rK   r  r   __classcell__)r   s   @r=   r4  r    s    	
	# 	#	. 	.r@   r4  c                  2    ] tR tRtRtR R ltR R ltRtR# )	Cookies._CookieCompatResponsei  r  c                    V ^8  d   QhRRRR/# r1  r;   )r<   s   "r=   r>   *Cookies._CookieCompatResponse.__annotate__  s     	% 	%X 	%$ 	%r@   c                	    Wn         R # r\   r  )rH   r  s   &&r=   rK   &Cookies._CookieCompatResponse.__init__  s    $Mr@   c                   V ^8  d   QhRR/# )r4   r9   zemail.message.Messager;   )r<   s   "r=   r>   r    s     	 	/ 	r@   c                	    \         P                  P                  4       pV P                  P                  P                  4        F	  w  r#W1V&   K  	  V# r\   )emailr  Messager  r5   rv   )rH   inforV   rW   s   &   r=   r  "Cookies._CookieCompatResponse.info  sD    ==((*D"mm33??A
 "S		 B
 Kr@   r  N)r   r   r   r   r   rK   r  r   r;   r@   r=   r3  r    s    	
	%	 	r@   r3  rt  r\   )r   /)NNNr   )r   r   r   r   r   rK   r  r   r,  r}   rY  rW  r   r   r   r   r   r   rx  r   urllibrB  r0   r4  r3  r   r;   r@   r=   r.   r.     st    "B3$42D0(
%!4
,.v~~55 .$ r@   )r.   r/   r0   r1   )E
__future__r   datetimeemail.messager  r   r  r  urllib.requestr  collections.abcr   http.cookiejarr   r   r  r   r   r	   r
   	_decodersr   r   r   r   r   r   r   r   _exceptionsr   r   r   r   r   r   r   
_multipartr   _status_codesr   _typesr   r   r   r   r    r!   r"   r#   r$   r%   r&   _urlsr'   _utilsr(   r)   r*   r+   r,   r-   __all__MutableMappingrO   r/   r0   r1   r.   r;   r@   r=   <module>r     s    "      # , S S	 	 	   A        8x:f##CH- x:vH) H)Vq+ q+hFf##CH- Fr@   