+
    IV-jãÏ  ã                  óD  € ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
t
^ RIt^ RIHt ^ RIHt ^ RIHt ^ RIHt ]	P*                  '       d   ^RIHt   ^ RIt^RIHt ^R	IHt ^R
IHt ^RI H!t!H"t"H#t# ^RI$H%t%H&t&H't'H(t(H)t)H*t*H+t+H,t,H-t-H.t.H/t/ ^RI0H1t1H2t2 ^RI3H4t4 ]	P*                  '       d   ^RI5H6t6 ]Pn                  ! ]84      t9 ! R R4      t: ! R R]:4      t; ! R R4      t< ! R R]:4      t=]e    ! R R]:4      t> ]P~                  R)8¼  d   ^ RI@HAtA M^ RIBHAtA RtC ! R R]:4      tD ! R R ]:4      tER! R" ltF ! R# R$4      tG ! R% R&]P�                  4      tI ! R' R(]I4      tR#   ] d	    ^ RIt ELi ; i  ] d    Rt EL.i ; i  ] d    RtC Lji ; i)*é    )ÚannotationsN)Úcontextmanager)ÚHTTPMessage)ÚHTTPResponse)Útimeout)ÚBaseHTTPConnection)Úutil)Ú
_TYPE_BODY)ÚHTTPHeaderDict)ÚBaseSSLErrorÚHTTPConnectionÚHTTPException)ÚBodyNotHttplibCompatibleÚDecodeErrorÚDependencyWarningÚ	HTTPErrorÚIncompleteReadÚInvalidChunkLengthÚInvalidHeaderÚProtocolErrorÚReadTimeoutErrorÚResponseNotChunkedÚSSLError)Úis_fp_closedÚis_response_to_head)ÚRetry)ÚHTTPConnectionPoolc                  óH   € ] tR t^6tR	R R llt]R R l4       tR R ltRtR# )
ÚContentDecoderc               ó$   € V ^8„  d   QhRRRRRR/# ©é   ÚdataÚbytesÚ
max_lengthÚintÚreturn© )Úformats   "Úa/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/urllib3/response.pyÚ__annotate__ÚContentDecoder.__annotate__7   s!   € ÷ $ñ $˜uð $°#ð $¸uñ $ó    c                	ó   € \        4       h©N©ÚNotImplementedError©Úselfr#   r%   s   &&&r*   Ú
decompressÚContentDecoder.decompress7   ó   € Ü!Ó#Ð#r-   c               ó   € V ^8„  d   QhRR/# ©r"   r'   Úboolr(   )r)   s   "r*   r+   r,   ;   s   € ÷ $ñ $ Tñ $r-   c                	ó   € \        4       hr/   r0   ©r3   s   &r*   Úhas_unconsumed_tailÚ"ContentDecoder.has_unconsumed_tail:   ó   € ä!Ó#Ð#r-   c               ó   € V ^8„  d   QhRR/# ©r"   r'   r$   r(   )r)   s   "r*   r+   r,   >   s   € ÷ $ñ $�uñ $r-   c                	ó   € \        4       hr/   r0   r;   s   &r*   ÚflushÚContentDecoder.flush>   r6   r-   r(   N©éÿÿÿÿ)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r4   Úpropertyr<   rB   Ú__static_attributes__r(   r-   r*   r   r   6   s%   † ÷$ð ô$ó ð$÷$ñ $r-   r   c                  óT   € ] tR t^BtR R ltRR R llt]R R l4       tR R ltR	t	R
# )ÚDeflateDecoderc               ó   € V ^8„  d   QhRR/# ©r"   r'   ÚNoner(   )r)   s   "r*   r+   ÚDeflateDecoder.__annotate__C   s   € ÷ )ñ )˜$ñ )r-   c                	ód   € R V n         RV n        RV n        \        P                  ! 4       V n        R# )Tr-   N)Ú
_first_tryÚ_first_try_dataÚ_unfed_dataÚzlibÚdecompressobjÚ_objr;   s   &r*   Ú__init__ÚDeflateDecoder.__init__C   s)   € ØˆŒØ"ˆÔØˆÔÜ×&Ò&Ó(ˆŽ	r-   c               ó$   € V ^8„  d   QhRRRRRR/# r!   r(   )r)   s   "r*   r+   rQ   I   s!   € ÷ (+ñ (+˜uð (+°#ð (+¸uñ (+r-   c                	óâ  € V P                   V,           pR V n         V'       g   V P                  P                  '       g   V# TpV^ 8  d   ^ pMV^ 8X  d	   Wn         R # V P                  '       g9   V P                  P	                  V P                  P                  V,           VR7      # V ;P
                  V,          un         V P                  P	                  WR7      pV'       d   RV n        R V n        V#   \        P                   df    RT n        \        P                  ! \        P                  ) 4      T n         T P	                  T P
                  TR7      R T n        u #   R T n        i ; ii ; i)r-   ©r%   F)
rU   rX   Úunconsumed_tailrS   r4   rT   rV   ÚerrorrW   Ú	MAX_WBITS)r3   r#   r%   Úoriginal_max_lengthÚdecompresseds   &&&  r*   r4   ÚDeflateDecoder.decompressI   s@  € Ø×Ñ $Õ&ˆØˆÔß˜DŸI™I×5×5Ð5ØˆKØ(ÐØ Ô"Ø‰JØ  AÔ%ð
  $ÔÙð ��ˆØ—9‘9×'Ñ'Ø—	‘	×)Ñ)¨DÕ0¸Zð (ó ð ð
 	×Ò Õ$Õð	+ØŸ9™9×/Ñ/°Ð/ÓLˆLßØ"'�”Ø'*�Ô$ØÐøä�z‰zô 	+Ø#ˆDŒOÜ×*Ò*¬D¯N©N¨?Ó;ˆDŒIð+Ø—‘Ø×(Ñ(Ð5Hð 'ó ð (+�×$ø s�Õ$úð	+ús%   Ã 3C4 Ã4AE.Ä;E!ÅE.Å!	E*Å*E.c               ó   € V ^8„  d   QhRR/# r8   r(   )r)   s   "r*   r+   rQ   t   s   € ÷ 
ñ 
 Tñ 
r-   c                	ó¬   € \        V P                  4      ;'       g9    \        V P                  P                  4      ;'       d    V P                  '       * # r/   )r9   rU   rX   r^   rS   r;   s   &r*   r<   Ú"DeflateDecoder.has_unconsumed_tails   s@   € ä�D×$Ñ$Ó%÷ 
ð 
Ü�—‘×*Ñ*Ó+×CÐC°D·O±OÔ0Cð	
r-   c               ó   € V ^8„  d   QhRR/# r@   r(   )r)   s   "r*   r+   rQ   y   ó   € ÷ !ñ !�uñ !r-   c                	ó6   € V P                   P                  4       # r/   ©rX   rB   r;   s   &r*   rB   ÚDeflateDecoder.flushy   ó   € Ø�y‰y�‰Ó Ð r-   )rS   rT   rX   rU   NrD   ©
rF   rG   rH   rI   rY   r4   rJ   r<   rB   rK   r(   r-   r*   rM   rM   B   s+   † õ)÷(+ðT ô
ó ð
÷
!ñ !r-   rM   c                  ó"   € ] tR t^}t^ t^t^tRtR# )ÚGzipDecoderStater(   N)rF   rG   rH   rI   ÚFIRST_MEMBERÚOTHER_MEMBERSÚSWALLOW_DATArK   r(   r-   r*   ro   ro   }   s   † Ø€LØ€MØ„Lr-   ro   c                  óT   € ] tR t^ƒtR R ltRR R llt]R R l4       tR R ltR	t	R
# )ÚGzipDecoderc               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   ÚGzipDecoder.__annotate__„   s   € ÷ $ñ $˜$ñ $r-   c                	óž   € \         P                  ! ^\         P                  ,           4      V n        \        P
                  V n        RV n        R# )é   r-   N)rV   rW   r`   rX   ro   rp   Ú_stateÚ_unconsumed_tailr;   s   &r*   rY   ÚGzipDecoder.__init__„   s2   € Ü×&Ò& r¬D¯N©NÕ':Ó;ˆŒ	Ü&×3Ñ3ˆŒØ #ˆÖr-   c               ó$   € V ^8„  d   QhRRRRRR/# r!   r(   )r)   s   "r*   r+   rv   ‰   s!   € ÷ 0ñ 0˜uð 0°#ð 0¸uñ 0r-   c           
     	ó&  € \        4       pV P                  \        P                  8X  d   \	        V4      # V^ 8X  d   V ;P
                  V,          un        R# V P
                  V,           pV'       g(   V P                  P                  '       d   \	        V4      #   W0P                  P                  V\        V\        V4      ,
          ^ 4      R7      ,          pT P                  P                  ;'       g    T P                  P                  ;T n        pT^ 8”  d   \        T4      T8¼  d   MyT'       g   \	        T4      # T P                  P                  '       g   KÃ  \        P                  T n        \        P                   ! ^\        P"                  ,           4      T n        EK  \	        T4      #   \        P                   dM    T P                  p\        P                  T n        RT n        T\        P                  8X  d   \	        T4      u # h i ; i)r   r-   r]   )Ú	bytearrayry   ro   rr   r$   rz   rX   Úeofr4   ÚmaxÚlenrV   r_   rq   r^   Úunused_datarW   r`   )r3   r#   r%   ÚretÚprevious_states   &&&  r*   r4   ÚGzipDecoder.decompress‰   sŠ  € Ü‹kˆØ�;‰;Ô*×7Ñ7Ô7Ü˜“:Ðà˜Œ?ð
 ×!Ò! TÕ)Õ!Ùð ×$Ñ$ tÕ+ˆß˜Ÿ	™	ŸŸ˜Ü˜“:ÐàðØ—y‘y×+Ñ+Ø¤S¨´c¸#³hÕ)>ÀÓ%Bð ,ó õ �ð —	‘	×)Ñ)×BÐB¨T¯Y©Y×-BÑ-BðˆDÔ! Dð ˜AŒ~¤# c£(¨jÔ"8ØçÜ˜S“zÐ!ð �y‰y�}�}Š}Ü.×<Ñ<�”Ü ×.Ò.¨r´D·N±NÕ/BÓC�—	ä�S‹zÐøô1 —:‘:ô Ø!%§¡�ä.×;Ñ;�”Ø(+�Ô%Ø!Ô%5×%CÑ%CÔCä  ›:Ò%Øðús   Â=F/ Æ/AHÈHc               ó   € V ^8„  d   QhRR/# r8   r(   )r)   s   "r*   r+   rv   ¼   s   € ÷ +ñ + Tñ +r-   c                	ó,   € \        V P                  4      # r/   )r9   rz   r;   s   &r*   r<   ÚGzipDecoder.has_unconsumed_tail»   s   € ä�D×)Ñ)Ó*Ð*r-   c               ó   € V ^8„  d   QhRR/# r@   r(   )r)   s   "r*   r+   rv   ¿   rh   r-   c                	ó6   € V P                   P                  4       # r/   rj   r;   s   &r*   rB   ÚGzipDecoder.flush¿   rl   r-   )rX   ry   rz   NrD   rm   r(   r-   r*   rt   rt   ƒ   s+   † õ$÷
0ðd ô+ó ð+÷!ñ !r-   rt   c                  ód   € ] tR t^ÅtR R ltRR R lltRR R llt]R R l4       tR	 R
 lt	Rt
R# )ÚBrotliDecoderc               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   ÚBrotliDecoder.__annotate__É   s   € ÷ 	@ñ 	@˜dñ 	@r-   c                	óú   € \         P                  ! 4       V n        \        V P                  R 4      '       d$   \	        V RV P                  P
                  4       R# \	        V RV P                  P                  4       R# )r4   Ú_decompressN)ÚbrotliÚDecompressorrX   ÚhasattrÚsetattrr4   Úprocessr;   s   &r*   rY   ÚBrotliDecoder.__init__É   sO   € Ü×+Ò+Ó-ˆDŒIÜ�t—y‘y ,×/Ò/Ü˜˜m¨T¯Y©Y×-AÑ-AÖBä˜˜m¨T¯Y©Y×->Ñ->Ö?r-   c               ó$   € V ^8„  d   QhRRRRRR/# )r"   r#   r$   Úoutput_buffer_limitr&   r'   r(   )r)   s   "r*   r+   r�   Ñ   s!   € ÷ 	(ñ 	( Eð 	(Àð 	(ÈUñ 	(r-   c                	ó   € \        4       hr/   r0   )r3   r#   r™   s   &&&r*   r‘   ÚBrotliDecoder._decompressÑ   s   € Ü%Ó'Ð'r-   c               ó$   € V ^8„  d   QhRRRRRR/# r!   r(   )r)   s   "r*   r+   r�   Ô   s!   € ÷ 	.ñ 	. 5ð 	.°cð 	.À5ñ 	.r-   c                	óÒ   €  V^ 8”  d   V P                  WR7      # V P                  V4      #   \         d0    \        P                  ! R\        4       T P                  T4      u # i ; i)r   )r™   z;Brotli >= 1.2.0 is required to prevent decompression bombs.)r‘   Ú	TypeErrorÚwarningsÚwarnr   r2   s   &&&r*   r4   ÚBrotliDecoder.decompressÔ   si   € ð.Ø ”>Ø×+Ñ+¨DÐ+ÓQÐQà×+Ñ+¨DÓ1Ð1øÜô .ô —’ØQÜ%ôð ×'Ñ'¨Ó-Ò-ð.ús   ‚, ›, ¬7A&Á%A&c               ó   € V ^8„  d   QhRR/# r8   r(   )r)   s   "r*   r+   r�   ä   s   € ÷ 	ñ 	¨ñ 	r-   c                	óf   €  V P                   P                  4       '       * #   \         d     R # i ; i)F)rX   Úcan_accept_more_dataÚAttributeErrorr;   s   &r*   r<   Ú!BrotliDecoder.has_unconsumed_tailã   s/   € ðØŸ9™9×9Ñ9Ó;Ô;Ð;øÜ!ô Úðús   ‚! ¡0¯0c               ó   € V ^8„  d   QhRR/# r@   r(   )r)   s   "r*   r+   r�   ê   ó   € ÷ 	ñ 	˜5ñ 	r-   c                	ór   € \        V P                  R 4      '       d   V P                  P                  4       # R# )rB   r-   )r”   rX   rB   r;   s   &r*   rB   ÚBrotliDecoder.flushê   s'   € Ü�t—y‘y '×*Ò*Ø—y‘y—‘Ó(Ð(Ùr-   ©rX   NrD   )rF   rG   rH   rI   rY   r‘   r4   rJ   r<   rB   rK   r(   r-   r*   r�   r�   Å   s0   † õ	@÷	(÷	.ð 
ô	ó 
ð	÷	ñ 	r-   r�   )ÚzstdTc                  óT   € ] tR t^útR R ltRR R llt]R R l4       tR R ltR	t	R
# )ÚZstdDecoderc               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   ÚZstdDecoder.__annotate__û   s   € ÷ 	0ñ 	0˜dñ 	0r-   c                	ó:   € \         P                  ! 4       V n        R # r/   )r¬   ÚZstdDecompressorrX   r;   s   &r*   rY   ÚZstdDecoder.__init__û   s   € Ü×-Ò-Ó/ˆDŽIr-   c               ó$   € V ^8„  d   QhRRRRRR/# r!   r(   )r)   s   "r*   r+   r°   þ   s!   € ÷  	(ñ  	( 5ð  	(°cð  	(À5ñ  	(r-   c                	ól  € V'       g   V P                   '       g   R # V P                  P                  '       d8   V P                  P                  V,           p\        P
                  ! 4       V n        V P                  P                  WR7      p\        V4      pV.pV P                  P                  '       dð   V P                  P                  '       dÔ   V^ 8  g   WB8  dÇ   V P                  P                  pV P                  P                  '       g   \        P
                  ! 4       V n        V P                  P                  TV^ 8”  d	   W$,
          MRR7      p\        V4      ;p'       d   VP                  V4       WG,          pKë  V P                  P                  '       g   EK
   R P                  V4      # )r-   r]   rE   )r<   rX   r   r‚   r¬   r²   r4   r�   Úneeds_inputÚappendÚjoin)r3   r#   r%   ÚpartÚlengthÚ
data_partsr‚   Úpart_lengths   &&&     r*   r4   ÚZstdDecoder.decompressþ   s8  € ß × 8× 8Ð 8ÙØ�y‰y�}�}ˆ}Ø—y‘y×,Ñ,¨tÕ3�Ü ×1Ò1Ó3�”	Ø—9‘9×'Ñ'¨Ð'ÓDˆDÜ˜“YˆFØ˜ˆJð —	‘	——�Ø—I‘I×)×)Ð)Ø !”^ vÔ':à"Ÿi™i×3Ñ3�Ø—y‘y×,×,Ð,Ü $× 5Ò 5Ó 7�D”IØ—y‘y×+Ñ+ØØ8BÀQ¼ 
Ö 3ÈBð ,ó �ô #& d£)Ð+�;Ö+Ø×%Ñ% dÔ+ØÕ)’FØ—Y‘Y×*×*Ó*ØØ—8‘8˜JÓ'Ð'r-   c               ó   € V ^8„  d   QhRR/# r8   r(   )r)   s   "r*   r+   r°   !  s   € ÷ 	ñ 	¨ñ 	r-   c                	óÂ   € V P                   P                  ;'       g    V P                   P                  '       * ;'       g     \        V P                   P                  4      # r/   )rX   r¶   r   r9   r‚   r;   s   &r*   r<   ÚZstdDecoder.has_unconsumed_tail   sF   € àŸ	™	×-Ñ-×>Ð>°·±·±Ô?÷ ð Ä4Ø—	‘	×%Ñ%óDð r-   c               ó   € V ^8„  d   QhRR/# r@   r(   )r)   s   "r*   r+   r°   &  r¨   r-   c                	óT   € V P                   P                  '       g   \        R 4      hR# )zZstandard data is incompleter-   )rX   r   r   r;   s   &r*   rB   ÚZstdDecoder.flush&  s   € Ø—9‘9—=—=�=Ü!Ð"@ÓAÐAÙr-   r«   NrD   rm   r(   r-   r*   r®   r®   ú   s+   † õ	0÷ 	(ðD 
ô	ó 
ð	÷
	ñ 	r-   r®   Fc                  ó\   € ] tR tRtRt^tR R ltR R ltRR R llt]	R	 R
 l4       t
RtR# )ÚMultiDecoderi,  zû
From RFC7231:
    If one or more encodings have been applied to a representation, the
    sender that applied the encodings MUST generate a Content-Encoding
    header field that lists the content codings in the order in which
    they were applied.
c               ó    € V ^8„  d   QhRRRR/# )r"   ÚmodesÚstrr'   rP   r(   )r)   s   "r*   r+   ÚMultiDecoder.__annotate__9  s   € ÷ >ñ >˜cð > dñ >r-   c                	ó0  € VP                  R 4       Uu. uF  q"P                  4       NK  	  pp\        V4      V P                  8”  d%   \	        R\        V4       RV P                   24      hV Uu. uF  p\        V4      NK  	  upV n        R# u upi u upi )Ú,z)Too many content encodings in the chain: z > N)ÚsplitÚstripr�   Úmax_decode_linksr   Ú_get_decoderÚ	_decoders)r3   rÇ   ÚmÚ	encodingsÚes   &&   r*   rY   ÚMultiDecoder.__init__9  s‰   € Ø(-¯©°CÔ(8Ó9Ñ(8 1—W‘W–YÑ(8ˆ	Ð9Üˆy‹>˜D×1Ñ1Ô1ÜØ;Ü�y“>Ð" # d×&;Ñ&;Ð%<ð>óð ñ 4=Ó=±9¨aœ, qž/±9Ñ=ˆŽùò :ùò >s   ”BÁ0Bc               ó   € V ^8„  d   QhRR/# r@   r(   )r)   s   "r*   r+   rÉ   B  s   € ÷ )ñ )�uñ )r-   c                	óD   € V P                   ^ ,          P                  4       # )r   )rÐ   rB   r;   s   &r*   rB   ÚMultiDecoder.flushB  s   € Ø�~‰~˜aÕ ×&Ñ&Ó(Ð(r-   c               ó$   € V ^8„  d   QhRRRRRR/# r!   r(   )r)   s   "r*   r+   rÉ   E  s!   € ÷ ñ ˜uð °#ð ¸uñ r-   c                	óz  € V^ 8:  d0   \        V P                  4       F  pVP                  V4      pK  	  V# \        4       p Rp\        V P                  4       F1  pVP                  W\	        V4      ,
          R7      pV'       g   K/  RpK3  	  WA,          pV'       d   \	        V4      V8¼  d   \        V4      # RpK|  )r   TFr]   r-   )ÚreversedrÐ   r4   r~   r�   r$   )r3   r#   r%   Údrƒ   Úany_datas   &&&   r*   r4   ÚMultiDecoder.decompressE  sœ   € Ø˜Œ?Ü˜dŸn™nÖ-�Ø—|‘| DÓ)’ñ .àˆKä‹kˆð ØˆHÜ˜dŸn™nÖ-�Ø—|‘| DÄ#ÀcÃ(Õ5J�|ÓK�ß‘4Ø#’Hñ .ð �KˆCßœs 3›x¨:Ô5Ü˜S“zÐ!ØŠDr-   c               ó   € V ^8„  d   QhRR/# r8   r(   )r)   s   "r*   r+   rÉ   `  s   € ÷ Bñ B Tñ Br-   c                	ó’   € \         ;QJ d&    R  V P                   4       F  '       g   K   R# 	  R# ! R  V P                   4       4      # )c              3  ó8   "  € T F  qP                   x € K  	  R # 5ir/   )r<   )Ú.0rÛ   s   & r*   Ú	<genexpr>Ú3MultiDecoder.has_unconsumed_tail.<locals>.<genexpr>a  s   é € ÐA±.¨Q×(Ö(³.ùs   ‚TF)ÚanyrÐ   r;   s   &r*   r<   Ú MultiDecoder.has_unconsumed_tail_  s3   € ç‹sÑA°$·.².ÓA�sŒsÐAŠsÐAˆsÑA°$·.².ÓAÓAÐAr-   )rÐ   NrD   )rF   rG   rH   rI   Ú__doc__rÎ   rY   rB   r4   rJ   r<   rK   r(   r-   r*   rÅ   rÅ   ,  s4   † ñð Ðõ>õ)÷ð4 ôBó ôBr-   rÅ   c               ó    € V ^8„  d   QhRRRR/# )r"   ÚmoderÈ   r'   r   r(   )r)   s   "r*   r+   r+   d  s   € ÷ ñ �sð ˜~ñ r-   c                óÈ   € R V 9   d   \        V 4      # V R9   d   \        4       # \        e   V R8X  d   \        4       # \        '       d   V R8X  d   \        4       # \        4       # )rË   Úbrr¬   )Úgzipúx-gzip)rÅ   rt   r’   r�   ÚHAS_ZSTDr®   rM   )rè   s   &r*   rÏ   rÏ   d  sW   € Ø
ˆd„{Ü˜DÓ!Ð!ð Ð!Ô!Ü‹}ÐäÒ˜d dœlÜ‹Ðçƒx�D˜F”NÜ‹}ÐäÓÐr-   c                  óV   € ] tR tRtRtR R ltR R ltR R ltR	 R
 ltR R lt	Rt
R# )ÚBytesQueueBufferiv  a|  Memory-efficient bytes buffer

To return decoded data in read() and still follow the BufferedIOBase API, we need a
buffer to always return the correct amount of bytes.

This buffer should be filled using calls to put()

Our maximum memory usage is determined by the sum of the size of:

 * self.buffer, which contains the full data
 * the largest chunk that we will copy in get()
c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   ÚBytesQueueBuffer.__annotate__„  s   € ÷ ñ ˜$ñ r-   c                	óH   € \         P                  ! 4       V n        ^ V n        R# ©r   N)ÚcollectionsÚdequeÚbufferÚ_sizer;   s   &r*   rY   ÚBytesQueueBuffer.__init__„  s   € Ü?J×?PÒ?PÓ?RˆŒØˆŽ
r-   c               ó   € V ^8„  d   QhRR/# ©r"   r'   r&   r(   )r)   s   "r*   r+   rñ   ˆ  s   € ÷ ñ ˜ñ r-   c                	ó   € V P                   # r/   )r÷   r;   s   &r*   Ú__len__ÚBytesQueueBuffer.__len__ˆ  s   € Ø�z‰zÐr-   c               ó    € V ^8„  d   QhRRRR/# )r"   r#   r$   r'   rP   r(   )r)   s   "r*   r+   rñ   ‹  s   € ÷  ñ  ˜ð   $ñ  r-   c                	ó€   € V P                   P                  V4       V ;P                  \        V4      ,          un        R # r/   )rö   r·   r÷   r�   ©r3   r#   s   &&r*   ÚputÚBytesQueueBuffer.put‹  s&   € Ø�‰×Ñ˜4Ô Ø�
Š
”c˜$“iÕ�
r-   c               ó    € V ^8„  d   QhRRRR/# )r"   Únr&   r'   r$   r(   )r)   s   "r*   r+   rñ   �  s   € ÷ !ñ !�Sð !˜Uñ !r-   c                	ó¨  € V^ 8X  d   R# V P                   '       g   \        R4      hV^ 8  d   \        R4      h\        V P                   ^ ,          4      V8X  d[   \	        V P                   ^ ,          \
        4      '       d4   V ;P                  V,          un        V P                   P                  4       # ^ p\        P                  ! 4       pW!8  dô   W,
          pV P                   P                  4       p\        V4      pWF8  dj   \        V4      pVRV WTR r‡VP                  V4       V P                   P                  V4       V ;P                  V,          un         VP                  4       # VP                  V4       V ;P                  V,          un        W&,          pV P                   '       d   Kè   VP                  4       # VP                  4       # )r   r-   zbuffer is emptyzn should be > 0N)rö   ÚRuntimeErrorÚ
ValueErrorr�   Ú
isinstancer$   r÷   ÚpopleftÚioÚBytesIOÚ
memoryviewÚwriteÚ
appendleftÚgetvalue)	r3   r  Úfetchedrƒ   Ú	remainingÚchunkÚchunk_lengthÚ
left_chunkÚright_chunks	   &&       r*   ÚgetÚBytesQueueBuffer.get�  s[  € Ø�Œ6ÙØ——�ÜÐ0Ó1Ð1Ø�ŒUÜÐ.Ó/Ð/äˆt�{‰{˜1�~Ó !Ô#¬
°4·;±;¸qµ>Ä5×(IÒ(IØ�JŠJ˜!�O�JØ—;‘;×&Ñ&Ó(Ð(àˆÜ�jŠj‹lˆØŒkØ�ˆIØ—K‘K×'Ñ'Ó)ˆEÜ˜u›:ˆLØÔ'Ü" 5Ó)�Ø*/°
°Ð*;¸UÀ:Ð=N˜KØ—	‘	˜*Ô%Ø—‘×&Ñ& {Ô3Ø—
’
˜iÕ'•
Øð �|‰|‹~Ðð —	‘	˜%Ô Ø—
’
˜lÕ*•
ØÕ#ˆGà—;—;’;Øà�|‰|‹~Ðˆs�|‰|‹~Ðr-   c               ó   € V ^8„  d   QhRR/# r@   r(   )r)   s   "r*   r+   rñ   ²  s   € ÷ ñ ˜ñ r-   c                	óš  a€ V P                   oS'       g   V P                  ^ 8X  g   Q hR# \        S4      ^8X  d8   SP                  4       p\	        V\
        4      '       d   VP                  4       pMR\        P                  ! 4       pVP                  V3R l\        \        S4      4       4       4       VP                  4       p^ V n        V# )r   r-   c              3  óD   <"  € T F  pSP                  4       x € K  	  R # 5ir/   )r	  )rá   Ú_rö   s   & €r*   râ   Ú+BytesQueueBuffer.get_all.<locals>.<genexpr>½  s   øé € ÐHÑ5G°˜6Ÿ>™>×+Ð+Ó5Gùs   ƒ )rö   r÷   r�   Úpopr  r  Útobytesr
  r  Ú
writelinesÚranger  )r3   Úresultrƒ   rö   s   &  @r*   Úget_allÚBytesQueueBuffer.get_all²  s�   ø€ Ø—‘ˆßØ—:‘: ”?Ð"�?ÙÜˆv‹;˜!ÔØ—Z‘Z“\ˆFÜ˜&¤*×-Ò-ØŸ™Ó)�øä—*’*“,ˆCØ�N‰NÔH´U¼3¸v»;Ô5GÓHÔHØ—\‘\“^ˆFØˆŒ
Øˆr-   )r÷   rö   N)rF   rG   rH   rI   ræ   rY   rü   r  r  r"  rK   r(   r-   r*   rï   rï   v  s&   † ñõõõ õ!÷Fñ r-   rï   c                  óª  € ] tR tRt$ . R<Ot]e   ]R.,          t]'       d   ]R.,          t. R=Ot]]	P                  3tR]R&   ]e   ]]P                  3,          t]'       d   ]]P                  3,          t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4       t]P*                  R R l4       t]R R l4       t]R R l4       t]P*                  R R l4       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 RAR- R. llt!R/ R0 lt"R1 R2 lt#R3 R4 lt$RAR5 R6 llt%R7 R8 lt&R9 R: lt'R;t(R# )BÚBaseHTTPResponseiÃ  Nrê   r¬   ztuple[type[Exception], ...]ÚDECODER_ERROR_CLASSESÚheadersÚretriesc               ó<   € 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'  ú>typing.Mapping[str, str] | typing.Mapping[bytes, bytes] | NoneÚstatusr&   ÚversionÚversion_stringrÈ   Úreasonú
str | NoneÚdecode_contentr9   Úrequest_urlr(  úRetry | Noner'   rP   r(   )r)   s   "r*   r+   ÚBaseHTTPResponse.__annotate__Ò  sg   € ÷ !*ñ !*ð Pð!*ð ð	!*ð
 ð!*ð ð!*ð ð!*ð ð!*ð  ð!*ð ð!*ð 
ñ!*r-   c               	ó‚  € \        V\        4      '       d   Wn        M\        V4      V n        W n        W0n        W@n        WPn        W`n        R V n        Wpn	        W€n
        R V n        V P                  P                  RR4      P                  4       p	R V	P                  R4       4       p
RV
9   d   RV n        RV n        V  R# )Fztransfer-encodingÚ c              3  ó@   "  € T F  qP                  4       x € K  	  R # 5ir/   )rÍ   )rá   Úencs   & r*   râ   Ú,BaseHTTPResponse.__init__.<locals>.<genexpr>î  s   é € Ð>Ñ,= S—Y‘Y—[�[Ó,=ùs   ‚rË   ÚchunkedTN)r  r   r'  r+  r,  r-  r.  r0  Ú_has_decoded_contentÚ_request_urlr(  r9  r  ÚlowerrÌ   Ú_decoder)r3   r'  r+  r,  r-  r.  r0  r1  r(  Útr_encrÒ   s   &$$$$$$$$  r*   rY   ÚBaseHTTPResponse.__init__Ò  s£   € ô �gœ~×.Ò.Ø"�Lä)¨'Ó2ˆDŒLØŒØŒØ,ÔØŒØ,ÔØ$)ˆÔ!Ø(3ÔØŒàˆŒØ—‘×!Ñ!Ð"5°rÓ:×@Ñ@ÓBˆá>¨F¯L©L¸Ô,=Ó>ˆ	Ø˜	Ô!ØˆDŒLà/3ˆŒÛr-   c               ó   € V ^8„  d   QhRR/# )r"   r'   z"str | None | typing.Literal[False]r(   )r)   s   "r*   r+   r3  õ  s   € ÷ 
ñ 
Ð'Iñ 
r-   c                ór   € V P                   V P                  9   d   V P                  P                  R4      # R# )zà
Should we redirect and where to?

:returns: Truthy redirect location string if we got a redirect status
    code and valid location. ``None`` if redirect status and no
    location. ``False`` if not a redirect status code.
ÚlocationF)r+  ÚREDIRECT_STATUSESr'  r  r;   s   &r*   Úget_redirect_locationÚ&BaseHTTPResponse.get_redirect_locationõ  s.   € ð �;‰;˜$×0Ñ0Ô0Ø—<‘<×#Ñ# JÓ/Ð/Ùr-   c               ó   € V ^8„  d   QhRR/# r@   r(   )r)   s   "r*   r+   r3    s   € ÷ $ñ $�eñ $r-   c                	ó   € \        4       hr/   r0   r;   s   &r*   r#   ÚBaseHTTPResponse.data  r>   r-   c               ó   € V ^8„  d   QhRR/# )r"   r'   z
typing.Anyr(   )r)   s   "r*   r+   r3    s   € ÷ !ñ !�jñ !r-   c                ód   € V P                   P                  R4      p\        P                  ! V4      # )al  
Deserializes the body of the HTTP response as a Python object.

The body of the HTTP response must be encoded using UTF-8, as per
`RFC 8529 Section 8.1 <https://www.rfc-editor.org/rfc/rfc8259#section-8.1>`_.

To use a custom JSON decoder pass the result of :attr:`HTTPResponse.data` to
your custom decoder instead.

If the body of the HTTP response is not decodable to UTF-8, a
`UnicodeDecodeError` will be raised. If the body of the HTTP response is not a
valid JSON document, a `json.JSONDecodeError` will be raised.

Read more :ref:`here <json_content>`.

:returns: The body of the HTTP response as a Python object.
zutf-8)r#   ÚdecodeÚ_jsonÚloadsr   s   & r*   ÚjsonÚBaseHTTPResponse.json  s'   € ð$ �y‰y×Ñ Ó(ˆÜ�{Š{˜4Ó Ð r-   c               ó   € V ^8„  d   QhRR/# ©r"   r'   r/  r(   )r)   s   "r*   r+   r3    s   € ÷ $ñ $�Zñ $r-   c                	ó   € \        4       hr/   r0   r;   s   &r*   ÚurlÚBaseHTTPResponse.url  r>   r-   c               ó    € V ^8„  d   QhRRRR/# ©r"   rS  r/  r'   rP   r(   )r)   s   "r*   r+   r3    s   € ÷ $ñ $�zð $ dñ $r-   c                	ó   € \        4       hr/   r0   ©r3   rS  s   &&r*   rS  rT    r>   r-   c               ó   € V ^8„  d   QhRR/# )r"   r'   zBaseHTTPConnection | Noner(   )r)   s   "r*   r+   r3  #  s   € ÷ $ñ $Ð5ñ $r-   c                	ó   € \        4       hr/   r0   r;   s   &r*   Ú
connectionÚBaseHTTPResponse.connection"  r>   r-   c               ó   € V ^8„  d   QhRR/# )r"   r'   r2  r(   )r)   s   "r*   r+   r3  '  s   € ÷ ñ ˜ñ r-   c                	ó   € V P                   # r/   )Ú_retriesr;   s   &r*   r(  ÚBaseHTTPResponse.retries&  s   € à�}‰}Ðr-   c               ó    € V ^8„  d   QhRRRR/# )r"   r(  r2  r'   rP   r(   )r)   s   "r*   r+   r3  +  s   € ÷  ñ  ˜|ð  °ñ  r-   c                	ó‚   € Ve5   VP                   '       d#   VP                   R,          P                  V n        Wn        R # )NrE   )ÚhistoryÚredirect_locationrS  r_  )r3   r(  s   &&r*   r(  r`  *  s-   € ð Ò 7§?§? ?Ø—‘ rÕ*×<Ñ<ˆDŒHØŽr-   c               ó$   € V ^8„  d   QhRRRRRR/# ©r"   Úamtú
int | Noner0  úbool | Noner'   útyping.Iterator[bytes]r(   )r)   s   "r*   r+   r3  1  s$   € ÷ $ñ $Øð$Ø7Bð$à	ñ$r-   c                	ó   € \        4       hr/   r0   ©r3   rg  r0  s   &&&r*   ÚstreamÚBaseHTTPResponse.stream1  s   € ô "Ó#Ð#r-   c               ó(   € V ^8„  d   QhRRRRRRRR/# ©	r"   rg  rh  r0  ri  Úcache_contentr9   r'   r$   r(   )r)   s   "r*   r+   r3  6  s2   € ÷ $ñ $àð$ð $ð$ð ð	$ð
 
ñ$r-   c                	ó   € \        4       hr/   r0   )r3   rg  r0  rq  s   &&&&r*   ÚreadÚBaseHTTPResponse.read6  s   € ô "Ó#Ð#r-   c               ó$   € V ^8„  d   QhRRRRRR/# ©r"   rg  rh  r0  ri  r'   r$   r(   )r)   s   "r*   r+   r3  >  s(   € ÷ $ñ $àð$ð $ð$ð 
ñ	$r-   c                	ó   € \        4       hr/   r0   rl  s   &&&r*   Úread1ÚBaseHTTPResponse.read1>  ó   € ô
 "Ó#Ð#r-   c               ó$   € V ^8„  d   QhRRRRRR/# rf  r(   )r)   s   "r*   r+   r3  E  s(   € ÷ $ñ $àð$ð $ð$ð 
 ñ	$r-   c                	ó   € \        4       hr/   r0   rl  s   &&&r*   Úread_chunkedÚBaseHTTPResponse.read_chunkedE  rz  r-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   r3  L  s   € ÷ $ñ $˜dñ $r-   c                	ó   € \        4       hr/   r0   r;   s   &r*   Úrelease_connÚBaseHTTPResponse.release_connL  r6   r-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   r3  O  s   € ÷ $ñ $˜Dñ $r-   c                	ó   € \        4       hr/   r0   r;   s   &r*   Ú
drain_connÚBaseHTTPResponse.drain_connO  r6   r-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   r3  R  s   € ÷ $ñ $˜$ñ $r-   c                	ó   € \        4       hr/   r0   r;   s   &r*   ÚshutdownÚBaseHTTPResponse.shutdownR  r6   r-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   r3  U  s   € ÷ $ñ $�tñ $r-   c                	ó   € \        4       hr/   r0   r;   s   &r*   ÚcloseÚBaseHTTPResponse.closeU  r6   r-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   r3  X  s   € ÷ Cñ C˜tñ Cr-   c                ó¬  € V P                   P                  RR4      P                  4       pV P                  f—   WP                  9   d   \        V4      V n        R# RV9   dl   VP                  R4       Uu. uF4  pVP                  4       V P                  9   g   K$  VP                  4       NK6  	  ppV'       d   \        V4      V n        R# R# R# R# u upi )z-
Set-up the _decoder attribute if necessary.
úcontent-encodingr5  NrË   )r'  r  r<  r=  ÚCONTENT_DECODERSrÏ   rÌ   rÍ   )r3   Úcontent_encodingrÓ   rÒ   s   &   r*   Ú_init_decoderÚBaseHTTPResponse._init_decoderX  sÀ   € ð  Ÿ<™<×+Ñ+Ð,>ÀÓC×IÑIÓKÐØ�=‰=Ò Ø×#8Ñ#8Ô8Ü ,Ð-=Ó >�–ØÐ(Ô(ð .×3Ñ3°CÔ8óá8˜Ø—w‘w“y D×$9Ñ$9Ñ9ô �A—G‘G–IÙ8ð ð ÷
 Ü$0Ð1AÓ$B�D–Mñ ñ )ñ !ùòs   Á5!CÂCc          
     ó,   € V ^8„  d   QhRRRRRRRRR	R/# )
r"   r#   r$   r0  ri  Úflush_decoderr9   r%   rh  r'   r(   )r)   s   "r*   r+   r3  k  s<   € ÷ #ñ #àð#ð $ð#ð ð	#ð
 ð#ð 
ñ#r-   c                óÆ  € V'       g    V P                   '       d   \        R4      hV# Ve	   V'       d   Rp V P                  '       d$   V P                  P                  WR7      pRV n         T'       d   YP                  4       ,          pT#   T P                   dD   pT P
                  P                  RR4      P                  4       p\        RT,          T4      ThRp?ii ; i)	z>
Decode the data passed in and potentially flush the decoder.
ú_Calling read(decode_content=False) is not supported after read(decode_content=True) was called.Nr]   Tr‘  r5  zEReceived response with content-encoding: %s, but failed to decode it.rE   )
r:  r  r=  r4   r&  r'  r  r<  r   Ú_flush_decoder)r3   r#   r0  r—  r%   rÓ   r“  s   &&&&&  r*   Ú_decodeÚBaseHTTPResponse._decodek  sÜ   € ÷ Ø×(×(Ð(Ü"ð<óð ð ˆKàÒ§ØˆJð
	Ø�}�}ˆ}Ø—}‘}×/Ñ/°Ð/ÓL�Ø,0�Ô)÷ Ø×'Ñ'Ó)Õ)ˆDàˆøð ×)Ñ)ô 	Ø#Ÿ|™|×/Ñ/Ð0BÀBÓG×MÑMÓOÐÜð'Ø)9õ:àóð ð	ûð	ús   ·B Á	#B ÂC Â>CÃC c               ó   € V ^8„  d   QhRR/# r@   r(   )r)   s   "r*   r+   r3  �  s   € ÷ ñ  ñ r-   c                óž   € V P                   '       d;   V P                   P                  R4      V P                   P                  4       ,           # R# )zS
Flushes the decoder. Should only be called if the decoder is actually
being used.
r-   )r=  r4   rB   r;   s   &r*   rš  ÚBaseHTTPResponse._flush_decoder�  s7   € ð
 �=�=ˆ=Ø—=‘=×+Ñ+¨CÓ0°4·=±=×3FÑ3FÓ3HÕHÐHÙr-   c               ó    € V ^8„  d   QhRRRR/# )r"   Úbzbytearray | memoryview[int]r'   r&   r(   )r)   s   "r*   r+   r3  š  s   € ÷ ñ Ð5ð ¸#ñ r-   c                	óŠ   € V P                  \        V4      4      p\        V4      ^ 8X  d   ^ # W!R\        V4      % \        V4      # ró   )rs  r�   )r3   r¡  Útemps   && r*   ÚreadintoÚBaseHTTPResponse.readintoš  s9   € Ø�y‰yœ˜Q›Ó ˆÜˆt‹9˜Œ>Ùà!ˆk”�D“	ˆNÜ�t“9Ðr-   c               ó   € V ^8„  d   QhRR/# ©r"   r'   r   r(   )r)   s   "r*   r+   r3  £  s   € ÷ ñ ˜Nñ r-   c                	ó   € V P                   # r/   ©r'  r;   s   &r*   Ú
getheadersÚBaseHTTPResponse.getheaders£  ó   € Ø�|‰|Ðr-   c               ó$   € V ^8„  d   QhRRRRRR/# )r"   ÚnamerÈ   Údefaultr/  r'   r(   )r)   s   "r*   r+   r3  ¦  s!   € ÷ /ñ /˜cð /¨Jð /À*ñ /r-   c                	ó8   € V P                   P                  W4      # r/   )r'  r  )r3   r®  r¯  s   &&&r*   Ú	getheaderÚBaseHTTPResponse.getheader¦  s   € Ø�|‰|×Ñ Ó.Ð.r-   c               ó   € V ^8„  d   QhRR/# r§  r(   )r)   s   "r*   r+   r3  ª  s   € ÷ ñ �nñ r-   c                	ó   € V P                   # r/   r©  r;   s   &r*   ÚinfoÚBaseHTTPResponse.infoª  r¬  r-   c               ó   € V ^8„  d   QhRR/# rQ  r(   )r)   s   "r*   r+   r3  ­  s   € ÷ ñ ˜
ñ r-   c                	ó   € V P                   # r/   )rS  r;   s   &r*   ÚgeturlÚBaseHTTPResponse.geturl­  s   € Ø�x‰xˆr-   )r=  r:  r;  r_  r9  r0  r'  r.  r(  r+  rS  r,  r-  )rë   rì   Údeflate)i-  i.  i/  i3  i4  ©i   N©NNF©NNr/   ))rF   rG   rH   rI   r’  r’   rí   rC  ÚIOErrorrV   r_   r&  Ú__annotations__r¬   Ú	ZstdErrorrY   rD  rJ   r#   rN  rS  Úsetterr[  r(  rm  rs  rx  r}  r�  r…  r‰  r�  r”  r›  rš  r¤  rª  r±  rµ  r¹  rK   r(   r-   r*   r%  r%  Ã  so  ‡ Ú4ÐØÒØ˜T˜FÕ"ÐßØ˜V˜HÕ$ÐÚ1Ðà:AÀ4Ç:Á:Ð9NÐÐ6ÓNØÒØ &§,¡, Õ0ÐçØ $§.¡.Ð!2Õ2Ðð!*ð SWð!*ð !%÷!*õF
ð ô$ó ð$õ!ð* ô$ó ð$ð 	‡Z�Zô$ó ð$ð ô$ó ð$ð ôó ðð ‡^�^ô ó ð ÷$÷
$÷$÷$õ$õ$õ$õ$õC÷&#õJõõ÷/õ÷ñ r-   r%  c                  óæ  a € ] tR tRtRtR<R V 3R llltR R ltR R lt]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4       tR=RR/R R llltR=RR/R R l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4       tR) R* ltR+ R, ltR- R. ltR/ R0 ltR1 R2 ltR?R3 R4 llt]R5 R6 l4       t]P@                  R7 R8 l4       tR9 R: lt!R;t"V ;t## )Ar   i±  a…  
HTTP Response container.

Backwards-compatible with :class:`http.client.HTTPResponse` but the response ``body`` is
loaded and decoded on-demand when the ``data`` property is accessed.  This
class is also compatible with the Python standard library's :mod:`io`
module, and can hence be treated as a readable object in the context of that
framework.

Extra parameters for behaviour not present in :class:`http.client.HTTPResponse`:

:param preload_content:
    If True, the response's body will be preloaded during construction.

:param decode_content:
    If True, will attempt to decode the body based on the
    'content-encoding' header.

:param original_response:
    When this HTTPResponse wrapper is generated from an :class:`http.client.HTTPResponse`
    object, it's convenient to include the original for debug purposes. It's
    otherwise unused.

:param retries:
    The retries contains the last :class:`~urllib3.util.retry.Retry` that
    was used during the request.

:param enforce_content_length:
    Enforce content length checking. Body returned by server must match
    value of Content-Length header, if present. Otherwise, raise error.
c          &     ód   € 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RRRRRRRRRRRRRR /# )!r"   Úbodyr
   r'  r*  r+  r&   r,  r-  rÈ   r.  r/  Úpreload_contentr9   r0  Úoriginal_responsez_HttplibHTTPResponse | NoneÚpoolzHTTPConnectionPool | Noner[  úHTTPConnection | NoneÚmsgz_HttplibHTTPMessage | Noner(  r2  Úenforce_content_lengthÚrequest_methodr1  Ú
auto_closeÚsock_shutdownz#typing.Callable[[int], None] | Noner'   rP   r(   )r)   s   "r*   r+   ÚHTTPResponse.__annotate__Ò  sÞ   € ÷ ?Bñ ?Bàð?Bð Pð?Bð ð	?Bð
 ð?Bð ð?Bð ð?Bð ð?Bð ð?Bð 7ð?Bð (ð?Bð *ð?Bð (ð?Bð ð?Bð !%ð?Bð  #ð!?Bð"  ð#?Bð$ ð%?Bð& ;ð'?Bð( 
ñ)?Br-   c                	ó  <€ \         SV `  VVVVVVVVR 7       Wàn        VV n        RV n        RV n        RV n        W�n        ^ V n        WÀn	        V'       d#   \        V\        \        34      '       d   Wn        W n        W°n        \        VR4      '       d   Wn        VV n        RV n        V P%                  V4      V n        \)        4       V n        V'       d.   V P                  '       g   V P-                  VR7      V n        R# R# R# ))r'  r+  r,  r-  r.  r0  r1  r(  NFrs  ©r0  )ÚsuperrY   rË  rÍ  Ú_bodyÚ_uncached_read_occurredÚ_fpÚ_original_responseÚ_fp_bytes_readrÊ  r  rÈ   r$   Ú_poolÚ_connectionr”   Ú_sock_shutdownÚ
chunk_leftÚ_init_lengthÚlength_remainingrï   Ú_decoded_bufferrs  )r3   rÅ  r'  r+  r,  r-  r.  rÆ  r0  rÇ  rÈ  r[  rÊ  r(  rË  rÌ  r1  rÍ  rÎ  Ú	__class__s   &&&&&&&&&&&&&&&&&&&€r*   rY   ÚHTTPResponse.__init__Ò  sõ   ø€ ô* 	‰ÑØØØØ)ØØ)Ø#Øð 	ô 		
ð '=Ô#Ø$ˆŒàˆŒ
Ø',ˆÔ$Ø04ˆŒØ"3ÔØˆÔØŒç”J˜t¤c¬5 \×2Ò2ØŒJàŒ
Ø%Ôä�4˜× Ò ØŒHØ+ˆÔð '+ˆŒð !%× 1Ñ 1°.Ó AˆÔô  0Ó1ˆÔ÷  4§:§: :ØŸ™°.˜ÓAˆDŽJñ $.‰?r-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   rÏ    s   € ÷  ñ  ˜dñ  r-   c                	óª   € V P                   '       d   V P                  '       g   R # V P                   P                  V P                  4       R V n        R # r/   )rØ  rÙ  Ú	_put_connr;   s   &r*   r�  ÚHTTPResponse.release_conn  s9   € Ø�z�zˆz ×!1×!1Ð!1Ùà�
‰
×Ñ˜T×-Ñ-Ô.ØˆÖr-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   rÏ    s   € ÷ !ñ !˜Dñ !r-   c                ó¾   €  V P                  4        V P
                  '       d   \        4       V n        RV n        R# R#   \        \        \        \        3 d     LIi ; i)z·
Read and discard any remaining HTTP response data in the response connection.

Unread data in the HTTPResponse connection blocks the connection from being released back to the pool.
N)	Ú	_raw_readr   ÚOSErrorr   r   r:  rï   rÞ  r=  r;   s   &r*   r…  ÚHTTPResponse.drain_conn  sU   € ð	Ø�N‰NÔð ×$×$Ð$ô $4Ó#5ˆDÔ Ø ˆDŽMñ	 %øô œ7¤L´-Ð@ô 	Ùð	ús   ‚> ¾AÁAc               ó   € V ^8„  d   QhRR/# r@   r(   )r)   s   "r*   r+   rÏ  +  s   € ÷ ñ �eñ r-   c                	óŠ   € V P                   '       d   V P                   # V P                  '       d   V P                  R R7      # R# )T)rq  N)rÓ  rÕ  rs  r;   s   &r*   r#   ÚHTTPResponse.data*  s4   € ð �:�:ˆ:Ø—:‘:Ðà�8�8ˆ8Ø—9‘9¨4�9Ó0Ð0ár-   c               ó   € V ^8„  d   QhRR/# )r"   r'   rÉ  r(   )r)   s   "r*   r+   rÏ  6  s   € ÷  ñ  Ð1ñ  r-   c                	ó   € V P                   # r/   )rÙ  r;   s   &r*   r[  ÚHTTPResponse.connection5  s   € à×ÑÐr-   c               ó   € V ^8„  d   QhRR/# r8   r(   )r)   s   "r*   r+   rÏ  9  s   € ÷ &ñ &˜$ñ &r-   c                	ó,   € \        V P                  4      # r/   )r   rÕ  r;   s   &r*   ÚisclosedÚHTTPResponse.isclosed9  s   € Ü˜DŸH™HÓ%Ð%r-   c               ó   € V ^8„  d   QhRR/# rú   r(   )r)   s   "r*   r+   rÏ  <  s   € ÷ #ñ #�cñ #r-   c                ó   € V P                   # )z¹
Obtain the number of bytes pulled over the wire so far. May differ from
the amount of content returned by :meth:`HTTPResponse.read`
if bytes are encoded on the wire (e.g, compressed).
)r×  r;   s   &r*   ÚtellÚHTTPResponse.tell<  s   € ð ×"Ñ"Ð"r-   c               ó    € V ^8„  d   QhRRRR/# )r"   rÌ  r/  r'   rh  r(   )r)   s   "r*   r+   rÏ  D  s   € ÷ 6ñ 6¨:ð 6¸*ñ 6r-   c                ó*  € V P                   P                  R4      pVe�   V P                  '       d   \        P	                  R4       R#  VP                  R4       Uu0 uF  p\        V4      kK  	  pp\        V4      ^8”  d   \        RV,          4      hVP                  4       pV^ 8  d   RpMRp \        V P                  4      pVR9   g   ^dTu;8:  d   ^È8  g
   M VR8X  d   ^ pV# u upi   \         d    Rp LMi ; i  \         d    ^ p LJi ; i)z=
Set initial length value for Response content if available.
zcontent-lengthNzÒReceived response with both Content-Length and Transfer-Encoding set. This is expressly forbidden by RFC 7230 sec 3.3.2. Ignoring Content-Length and attempting to process response as Transfer-Encoding: chunked.rË   z8Content-Length contained multiple unmatching values (%s)ÚHEAD)éÌ   i0  )r'  r  r9  ÚlogÚwarningrÌ   r&   r�   r   r  r  r+  )r3   rÌ  Úcontent_lengthÚvalÚlengthsrº   r+  s   &&     r*   rÜ  ÚHTTPResponse._init_lengthD  s!  € ð
 &*§\¡\×%5Ñ%5Ð6FÓ%GˆàÒ%Ø�|�|ˆ|ô —‘ðôñ ð"ð 0>×/CÑ/CÀCÔ/HÓIÑ/H¨œ3˜sž8Ñ/H�ÐIÜ�w“< !Ô#Ü'ð1Ø3AõBóð ð !Ÿ™›�ð ˜A”:Ø!�Føð ˆFð	Ü˜Ÿ™Ó%ˆFð
 �ZÔ 3¨&Ö#6°3Ö#6¸.ÈFÔ:RØˆFàˆùò7 Jøô ô Ø’ðûô ô 	ØŠFð	ús6   Á
C/ ÁC*Á14C/ Â2D Ã*C/ Ã/C?Ã>C?ÄDÄDc               ó   € V ^8„  d   QhRR/# )r"   r'   ztyping.Generator[None]r(   )r)   s   "r*   r+   rÏ  }  s   € ÷ ;$ñ ;$Ð 6ñ ;$r-   c              #  óJ  "  € Rp  Rx € RpT'       gY   T P                  '       d   T P                  P                  4        T P                  '       d   T P                  P                  4        T P                  '       d5   T P                  P                  4       '       d   T P                  4        R# R# R#   \          d   p\        T P                  RR4      ThRp?i\         d   p\	        T4      ThRp?i\
         dS   pTP                  e.   TP                  e    TP                  TP                  ) 8X  d   RpMRT: 2p\        Y24      ThRp?i\        \        3 d   p\        RT: 2T4      ThRp?ii ; i  T'       gY   T P                  '       d   T P                  P                  4        T P                  '       d   T P                  P                  4        T P                  '       d3   T P                  P                  4       '       d   T P                  4        i i i ; i5i)z¿
Catch low-level python exceptions, instead re-raising urllib3
variants, so that low-level exceptions are not leaked in the
high-level api.

On exit, release the connection back to the pool.
FNzRead timed out.z!Response may not contain content.zConnection broken: T)ÚSocketTimeoutr   rØ  r   r   r   ÚexpectedÚpartialr   r   rè  rÖ  r�  rÙ  rò  r�  )r3   Ú
clean_exitrÓ   Úargs   &   r*   Ú_error_catcherÚHTTPResponse._error_catcher|  sÏ  é € ð ˆ
ð1	$ðKÛð6 ˆJ÷ ð ×*×*Ð*Ø×+Ñ+×1Ñ1Ô3ð
 ×#×#Ð#Ø×$Ñ$×*Ñ*Ô,ð ×&×&Ð&¨4×+BÑ+B×+KÑ+K×+MÒ+MØ×!Ñ!Ö#ñ ,NÑ&øôY !ô Sô ' t§z¡z°4Ð9JÓKÐQRÐRûäô )ä˜q“k qÐ(ûä!ô 	3à—J‘JÒ*ØŸ	™	Ò-ØŸ
™
 q§y¡y jÔ0à=‘Cà/°©uÐ5�CÜ# CÓ+°Ð2ûä!¤7Ð+ô KÜ#Ð&9¸!¹Ð$?ÀÓCÈÐJûðKû÷ ð ×*×*Ð*Ø×+Ñ+×1Ñ1Ô3ð
 ×#×#Ð#Ø×$Ñ$×*Ñ*Ô,ð ×&×&Ð&¨4×+BÑ+B×+KÑ+K×+MÒ+MØ×!Ñ!Õ#ð ,NÐ&üsž   ‚H#‡B5 ‹E: �H#§+H#Á+H#Á?H#ÂH#Â5E7Ã CÃE7Ã%E7Ã&C2Ã2E7Ã?E7Ä AEÅE7Å E7Å!E2Å2E7Å7E: Å:H Æ+H Ç+H Ç-H ÈH È H#rx  Fc               ó$   € V ^8„  d   QhRRRRRR/# ©r"   rg  rh  rx  r9   r'   r$   r(   )r)   s   "r*   r+   rÏ  º  s-   € ÷ 3Nñ 3Nàð3Nð ð	3Nð
 
ñ3Nr-   c               ó&  € V P                   '       g   Q hRpV'       d   W8”  g(   Vfñ   V P                  '       dß   V P                  V8”  dÎ   \        P                  '       d¸   V'       d   V P                   P	                  V4      # \
        P                  ! 4       pRpVe   V^ 8w  dc   Ve   \        W4      pW,          pMTpV P                   P                  V4      pV'       g    VP                  4       # VP                  V4       ?Km  VP                  4       # V'       d:   Ve   V P                   P	                  V4      # V P                   P	                  4       # Ve   V P                   P                  V4      # V P                   P                  4       # )aN  
Read a response with the thought that reading the number of bytes
larger than can fit in a 32-bit int at a time via SSL in some
known cases leads to an overflow error that has to be prevented
if `amt` or `self.length_remaining` indicate that a problem may
happen.

This happens to urllib3 injected with pyOpenSSL-backed SSL-support.
iÿÿÿi   )rÕ  rÝ  r	   ÚIS_PYOPENSSLrx  r
  r  Úminrs  r  r  )r3   rg  rx  Ú	c_int_maxrö   Úmax_chunk_amtÚ	chunk_amtr#   s   &&$     r*   Ú_fp_readÚHTTPResponse._fp_readº  s.  € ð �x�xˆxˆˆxØˆ	ç�S”_à’Ø×)×)Ð)Ø×)Ñ)¨IÔ5ä××ÐßØ—x‘x—~‘~ iÓ0Ð0Ü—Z’Z“\ˆFð "ˆMØ’+ ¨¤Ø’?Ü # CÓ 7�IØÕ$‘Cà -�IØ—x‘x—}‘} YÓ/�ßØð —?‘?Ó$Ð$ð —‘˜TÔ"ÚØ—?‘?Ó$Ð$ßØ*-ª/�4—8‘8—>‘> #Ó&ÐO¸t¿x¹x¿~¹~Ó?OÐOð *-ª�4—8‘8—=‘= Ó%ÐM¸d¿h¹h¿m¹m»oÐMr-   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r)   s   "r*   r+   rÏ  ï  s(   € ÷ 2ñ 2àð2ð ð	2ð
 
ñ2r-   c               ó<  € V P                   f   R# \        V P                   RR4      pV P                  4       ;_uu_ 4        V'       g   V P                  WR7      MRpVe|   V^ 8w  du   V'       gm   V P                   P	                  4        V P
                  '       d@   V P                  e2   V P                  ^ 8w  d!   \        V P                  V P                  4      hMKV'       dD   V^ 8w  d	   V'       d   V P                  \        V4      8X  d   V P                   P	                  4        RRR4       X'       dS   V ;P                  \        V4      ,          un        V P                  e#   V ;P                  \        V4      ,          un        V#   + '       g   i     Ll; i)z'
Reads `amt` of bytes from the socket.
NÚclosedF©rx  r-   )
rÕ  Úgetattrr	  r  r�  rË  rÝ  r   r×  r�   )r3   rg  rx  Ú	fp_closedr#   s   &&$  r*   rç  ÚHTTPResponse._raw_readï  s"  € ð �8‰8ÒÙä˜DŸH™H h°Ó6ˆ	à× Ñ ×"Õ"ß:C�4—=‘= �=Ô2ÈˆDØŠ 3¨!¤8·Dð —‘—‘Ô à×/×/Ð/Ø×-Ñ-Ò9Ø×-Ñ-°Ô2ô )¨×)<Ñ)<¸d×>SÑ>SÓTÐTøßØ˜”§$¨4×+@Ñ+@ÄCÈÃIÔ+Mð —‘—‘Ô ÷= #÷@ Ø×Ò¤3 t£9Õ,ÕØ×$Ñ$Ò0Ø×%Ò%¬¨T«Õ2Õ%Øˆ÷I #×"ús%   Á /FÁ0+FÂAFÃ$FÃ34FÆF	c               ó(   € V ^8„  d   QhRRRRRRRR/# rp  r(   )r)   s   "r*   r+   rÏ  #  s8   € ÷ jñ jàðjð $ðjð ð	jð
 
ñjr-   c           	     ó\  € V P                  4        Vf   V P                  pV'       d   V^ 8  d   RpMÍVeÊ   RpV P                  '       d�   V P                  P                  '       de   \	        V P
                  4      V8  dK   V P                  RVRV\	        V P
                  4      ,
          R7      pV P
                  P                  V4       \	        V P
                  4      V8¼  d   V P
                  P                  V4      # V P                  V4      pV'       g   RV n
        VRJ ;'       g    V^ 8g  ;'       d    V'       * pV'       gK   \	        V P
                  4      ^ 8X  d1   V P                  '       d   V P                  P                  '       g   V# VfŒ   V P                  WRV4      pV'       dP   \	        V P
                  4      ^ 8”  d6   V P
                  P                  V4       V P
                  P                  4       pV'       d   V P                  '       g   WPn        V# V'       g    V P                  '       d   \        R4      hV# V P                  VVVV\	        V P
                  4      ,
          R7      pV P
                  P                  V4       \	        V P
                  4      V8  df   V'       d^   V P                  V4      pV P                  VVVV\	        V P
                  4      ,
          R7      pV P
                  P                  V4       K  V P
                  P                  V4      pV# )aÔ  
Similar to :meth:`http.client.HTTPResponse.read`, but with two additional
parameters: ``decode_content`` and ``cache_content``.

:param amt:
    How much of the content to read. If specified, caching is skipped
    because it doesn't make sense to cache partial content as the full
    response.

:param decode_content:
    If True, will attempt to decode the body based on the
    'content-encoding' header.

:param cache_content:
    If True, will save the returned data such that the same result is
    returned despite of the state of the underlying file object. This
    is useful if you want the ``.data`` property to continue working
    after having ``.read()`` the file object. (Overridden if ``amt`` is
    set.)
NFr-   ©r—  r%   Tr™  r]   )r”  r0  r=  r<   r�   rÞ  r›  r  r  rç  rÔ  r"  rÓ  r:  r  )r3   rg  r0  rq  Údecoded_datar#   r—  s   &&&&   r*   rs  ÚHTTPResponse.read#  s§  € ð4 	×ÑÔØÒ!Ø!×0Ñ0ˆNç�3˜”7à‰CØŠ_Ø!ˆMð ——�Ø—M‘M×5×5Ð5Ü˜×,Ñ,Ó-°Ô3à#Ÿ|™|ØØ"Ø"'Ø"¤S¨×)=Ñ)=Ó%>Õ>ð	  ,ó  �ð ×$Ñ$×(Ñ(¨Ô6Ü�4×'Ñ'Ó(¨CÔ/Ø×+Ñ+×/Ñ/°Ó4Ð4à�~‰~˜cÓ"ˆßØ+/ˆDÔ(à˜t˜×>Ð>¨¨q©×(=Ð(=¸´Xˆ÷ Ü�D×(Ñ(Ó)¨QÔ.Ø—]—]�] t§}¡}×'H×'HÐ'HàˆKàŠ;Ø—<‘< °mÓDˆD÷ ¤# d×&:Ñ&:Ó";¸aÔ"?Ø×$Ñ$×(Ñ(¨Ô.Ø×+Ñ+×3Ñ3Ó5�ç T×%A×%AÐ%AØ!”
ðB ˆ÷= "Ø×,×,Ð,Ü&ð@óð ð �àŸ<™<ØØØØ¤ T×%9Ñ%9Ó!:Õ:ð	 (ó ˆLð × Ñ ×$Ñ$ \Ô2ä�d×*Ñ*Ó+¨cÔ1·dð —~‘~ cÓ*�Ø#Ÿ|™|ØØ"Ø!Ø"¤S¨×)=Ñ)=Ó%>Õ>ð	  ,ó  �ð ×$Ñ$×(Ñ(¨Ö6Ø×'Ñ'×+Ñ+¨CÓ0ˆDàˆr-   c               ó$   € V ^8„  d   QhRRRRRR/# rv  r(   )r)   s   "r*   r+   rÏ  �  s-   € ÷ E-ñ E-àðE-ð $ðE-ð 
ñ	E-r-   c           	     ó  € Vf   V P                   pV'       d
   V^ 8  d   RpV P                  '       Ed   V'       g   \        R4      hV P                  '       d‹   V P                  P                  '       do   Ve   \        V P                  4      V8  dQ   T P                  RTRVe   V\        V P                  4      ,
          MRR7      pV P                  P                  V4       \        V P                  4      ^ 8”  d:   Vf   V P                  P                  4       # V P                  P                  V4      # V^ 8X  d   R# V P                  VRR7      pRV n        V'       d   Vf   V# V P                  4         V'       * pV P                  WBWQR7      pV P                  P                  V4       V'       g	   V'       d   MV P                  R	RR7      pK\  Vf   V P                  P                  4       # V P                  P                  V4      # )
a;  
Similar to ``http.client.HTTPResponse.read1`` and documented
in :meth:`io.BufferedReader.read1`, but with an additional parameter:
``decode_content``.

:param amt:
    How much of the content to read.

:param decode_content:
    If True, will attempt to decode the body based on the
    'content-encoding' header.
NzaCalling read1(decode_content=False) is not supported after read1(decode_content=True) was called.r-   Fr  Tr  r]   i    )r0  r:  r  r=  r<   r�   rÞ  r›  r  r"  r  rç  rÔ  r”  )r3   rg  r0  r  r#   r—  s   &&&   r*   rx  ÚHTTPResponse.read1�  sÇ  € ð" Ò!Ø!×0Ñ0ˆNß�3˜”7àˆCà×$×$Ñ$ß!Ü"ð=óð ð
 ——�Ø—M‘M×5×5Ð5Ø’[¤C¨×(<Ñ(<Ó$=ÀÔ$Cà#Ÿ|™|ØØ"Ø"'à;>º?˜œc $×"6Ñ"6Ó7Ö7ÐPTð  ,ó  �ð ×$Ñ$×(Ñ(¨Ô6Ü�4×'Ñ'Ó(¨1Ô,Ø’;Ø×/Ñ/×7Ñ7Ó9Ð9Ø×+Ñ+×/Ñ/°Ó4Ð4Ø�!Œ8Ùð �~‰~˜c¨ˆ~Ó.ˆØ'+ˆÔ$ß ¢ØˆKà×ÑÔØØ $œHˆMØŸ<™<Ø mð (ó ˆLð × Ñ ×$Ñ$ \Ô2ßŸ}ØØ—>‘> $¨d�>Ó3ŠDàŠ;Ø×'Ñ'×/Ñ/Ó1Ð1Ø×#Ñ#×'Ñ'¨Ó,Ð,r-   c               ó$   € V ^8„  d   QhRRRRRR/# ©r"   rg  rh  r0  ri  r'   ztyping.Generator[bytes]r(   )r)   s   "r*   r+   rÏ  Ö  s$   € ÷  ñ  Øð Ø7Bð à	 ñ r-   c              #  óº  "  € V^ 8X  d   R# V P                   '       d3   V P                  4       '       d   V P                  WR7       Rj  x€L
  R# \        V P                  4      '       dI   \        V P                  4      ^ 8”  g/   V P                  '       dA   V P                  P                  '       d#   V P                  WR7      pV'       g   K  Vx € K…  R# R#  L�5i)aÿ  
A generator wrapper for the read() method. A call will block until
``amt`` bytes have been read from the connection or until the
connection is closed.

:param amt:
    How much of the content to read. The generator will return up to
    much data per iteration, but may return less. This is particularly
    likely when using compressed data. However, the empty string will
    never be returned.

:param decode_content:
    If True, will attempt to decode the body based on the
    'content-encoding' header.
NrÑ  )rg  r0  )
r9  Úsupports_chunked_readsr}  r   rÕ  r�   rÞ  r=  r<   rs  )r3   rg  r0  r#   s   &&& r*   rm  ÚHTTPResponse.streamÖ  s£   é € ð$ �!Œ8Ùà�<�<ˆ<˜D×7Ñ7×9Ò9Ø×(Ñ(¨Ð(ÓL×LÒLô ! §¡×*Ò*Ü�t×+Ñ+Ó,¨qÔ0Ø—M—M�M d§m¡m×&G×&GÐ&Gà—y‘y S�yÓH�ç‘4Ø”Jñ 'H‘Mñ Mùs.   ‚CžC´CÁ	CÁ
ACÂCÂ3CÃCc               ó   € V ^8„  d   QhRR/# r8   r(   )r)   s   "r*   r+   rÏ  ù  s   € ÷ ñ ˜$ñ r-   c                	ó   € R # )Tr(   r;   s   &r*   ÚreadableÚHTTPResponse.readableù  s   € Ùr-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   rÏ  ü  s   € ÷ ,ñ ,˜$ñ ,r-   c                	ó°   € V P                   '       g   \        R 4      hV P                  f   \        R4      hV P                  \        P
                  4       R# )z8Cannot shutdown socket as self._sock_shutdown is not setNzCCannot shutdown as connection has already been released to the pool)rÚ  r  rÙ  r  ÚsocketÚSHUT_RDr;   s   &r*   r‰  ÚHTTPResponse.shutdownü  sJ   € Ø×"×"Ð"ÜÐWÓXÐXØ×ÑÒ#ÜØUóð ð 	×ÑœFŸN™NÖ+r-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   rÏ    s   € ÷ 
"ñ 
"�tñ 
"r-   c                	óN  € R V n         V P                  '       g-   V P                  '       d   V P                  P                  4        V P                  '       d   V P                  P                  4        V P
                  '       g"   \        P                  P                  V 4       R # R # r/   )rÚ  r  rÕ  r�  rÙ  rÍ  r
  ÚIOBaser;   s   &r*   r�  ÚHTTPResponse.close  se   € Ø"ˆÔà�{�{ˆ{˜tŸxŸx˜xØ�H‰H�N‰NÔà××ÐØ×Ñ×"Ñ"Ô$à��ˆÜ�I‰I�O‰O˜DÖ!ñ r-   c               ó   € V ^8„  d   QhRR/# r8   r(   )r)   s   "r*   r+   rÏ    s   € ÷ 
ñ 
˜ñ 
r-   c                	ól  € V P                   '       g*   \        P                  P                  P	                  V 4      # V P
                  f   R# \        V P
                  R4      '       d   V P
                  P                  4       # \        V P
                  R4      '       d   V P
                  P                  # R# )NTrò  r  )rÍ  r
  r4  r  Ú__get__rÕ  r”   rò  r;   s   &r*   r  ÚHTTPResponse.closed  sy   € à��ˆÜ—9‘9×#Ñ#×+Ñ+¨DÓ1Ð1Ø�X‰XÒÙÜ�T—X‘X˜z×*Ò*Ø—8‘8×$Ñ$Ó&Ð&Ü�T—X‘X˜x×(Ò(Ø—8‘8—?‘?Ð"ár-   c               ó   € V ^8„  d   QhRR/# rú   r(   )r)   s   "r*   r+   rÏ    s   € ÷ 	ñ 	˜ñ 	r-   c                	ó¶   € V P                   f   \        R4      h\        V P                   R4      '       d   V P                   P                  4       # \        R4      h)Nz-HTTPResponse has no file to get a fileno fromÚfilenozOThe file-like object this HTTPResponse is wrapped around has no file descriptor)rÕ  rè  r”   r<  r;   s   &r*   r<  ÚHTTPResponse.fileno  sL   € Ø�8‰8ÒÜÐIÓJÐJÜ�T—X‘X˜x×(Ò(Ø—8‘8—?‘?Ó$Ð$äð0óð r-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   rÏ  )  s   € ÷ $ñ $�tñ $r-   c                	óÐ   € V P                   eX   \        V P                   R4      '       d:   \        V P                   RR4      '       g   V P                   P                  4       # R # R # R # )NrB   r  F)rÕ  r”   r  rB   r;   s   &r*   rB   ÚHTTPResponse.flush)  sP   € à�H‰HÒ Ü˜Ÿ™ '×*Ò*Ü˜DŸH™H h°×6Ò6à—8‘8—>‘>Ó#Ð#ñ 7ñ +ñ !r-   c               ó   € V ^8„  d   QhRR/# r8   r(   )r)   s   "r*   r+   rÏ  1  s   € ÷ 'ñ '¨ñ 'r-   c                ó.   € \        V P                  R4      # )zß
Checks if the underlying file-like object looks like a
:class:`http.client.HTTPResponse` object. We do this by testing for
the fp attribute. If it is present we assume it returns raw chunks as
processed by read_chunked().
Úfp)r”   rÕ  r;   s   &r*   r'  Ú#HTTPResponse.supports_chunked_reads1  s   € ô �t—x‘x Ó&Ð&r-   c               ó   € V ^8„  d   QhRR/# rO   r(   )r)   s   "r*   r+   rÏ  :  s   € ÷ Lñ L dñ Lr-   c                	óB  € V P                   e   R # V P                  P                  P                  4       pVP	                  R^4      ^ ,          p \        V^4      V n         R #   \         d2    T P                  4        T'       d   \        Y4      R h\        R4      R hi ; i)Nó   ;zResponse ended prematurely)
rÛ  rÕ  rC  ÚreadlinerÌ   r&   r  r�  r   r   )r3   Úlines   & r*   Ú_update_chunk_lengthÚ!HTTPResponse._update_chunk_length:  s‰   € ð �?‰?Ò&ÙØ�x‰x�{‰{×#Ñ#Ó%ˆØ�z‰z˜$ Ó" 1Õ%ˆð		LÜ! $¨›mˆDŽOøÜô 	LØ�J‰JŒLßä(¨Ó4¸$Ð>ô $Ð$@ÓAÀtÐKð	Lús   ÁA" Á""BÂBc               ó    € V ^8„  d   QhRRRR/# )r"   rg  rh  r'   r$   r(   )r)   s   "r*   r+   rÏ  L  s   € ÷ ñ  ð °ñ r-   c                	ó‚  € R pVfL   V P                   P                  V P                  4      pTpV P                   P                  ^4       R V n        V# V P                  eH   WP                  8  d8   V P                   P                  V4      pV P                  V,
          V n        TpV# WP                  8X  dB   V P                   P                  V4      pV P                   P                  ^4       R V n        TpV# V P                   P                  V P                  4      pV P                   P                  ^4       R V n        V# r/   )rÕ  Ú
_safe_readrÛ  )r3   rg  Úreturned_chunkr  Úvalues   &&   r*   Ú_handle_chunkÚHTTPResponse._handle_chunkL  s  € ØˆØŠ;Ø—H‘H×'Ñ'¨¯©Ó8ˆEØ"ˆNØ�H‰H×Ñ Ô"Ø"ˆDŒOð Ðð �_‰_Ò(¨S·?±?Ô-BØ—H‘H×'Ñ'¨Ó,ˆEØ"Ÿo™o°Õ3ˆDŒOØ"ˆNð Ðð —O‘OÔ#Ø—H‘H×'Ñ'¨Ó,ˆEØ�H‰H×Ñ Ô"Ø"ˆDŒOØ"ˆNð
 Ðð "ŸX™X×0Ñ0°·±ÓAˆNØ�H‰H×Ñ Ô"Ø"ˆDŒOØÐr-   c               ó$   € V ^8„  d   QhRRRRRR/# r%  r(   )r)   s   "r*   r+   rÏ  b  s)   € ÷ U0ñ U0ØðU0Ø6AðU0à	 ñU0r-   c           	   #  ó�  "  € V P                  4        V P                  '       g   \        R4      hV P                  4       '       g   \	        R4      hV P                  4       ;_uu_ 4        V P                  '       dA   \        V P                  4      '       d&   V P                  P                  4         RRR4       R# V P                  P                  f    RRR4       R# V^ 8X  d    RRR4       R# V'       d
   V^ 8  d   Rp V P                  '       d    V P                  P                  '       d   RpM:V P                  4        RV n        V P                  ^ 8X  d   M6V P!                  V4      pV P#                  VVRVR7      pV'       g   K‹  Vx € K‘  V'       d   V P%                  4       pV'       d   Vx € V P                  e8   V P                  P                  P'                  4       pV'       g   M
VR8X  g   KD   V P                  '       d   V P                  P                  4        RRR4       R#   + '       g   i     R# ; i5i)	av  
Similar to :meth:`HTTPResponse.read`, but with an additional
parameter: ``decode_content``.

:param amt:
    How much of the content to read. If specified, caching is skipped
    because it doesn't make sense to cache partial content as the full
    response.

:param decode_content:
    If True, will attempt to decode the body based on the
    'content-encoding' header.
zHResponse is not chunked. Header 'transfer-encoding: chunked' is missing.zkBody should be http.client.HTTPResponse like. It should have have an fp attribute which returns raw chunks.NTr-   F)r0  r—  r%   s   
)r”  r9  r   r'  r   r	  rÖ  r   r�  rÕ  rC  r=  r<   rJ  rÔ  rÛ  rQ  r›  rš  rH  )r3   rg  r0  r  ÚdecodedrI  s   &&&   r*   r}  ÚHTTPResponse.read_chunkedb  sÙ  é € ð  	×ÑÔà�|�|ˆ|Ü$ðBóð ð ×*Ñ*×,Ò,Ü*ðPóð ð
 × Ñ ×"Õ"à×&×&Ð&Ô+>¸t×?VÑ?V×+WÒ+WØ×'Ñ'×-Ñ-Ô/Ø÷	 #Ñ"ð �x‰x�{‰{Ò"Ø÷ #Ñ"ð �aŒxØ÷ #Ñ"÷ ˜˜qœð �àà—=—=�= T§]¡]×%F×%FÐ%FØ‘Eà×-Ñ-Ô/Ø37�DÔ0Ø—‘¨!Ô+ØØ ×.Ñ.¨sÓ3�EØŸ,™,ØØ#1Ø"'Ø"ð	 'ó �÷ ‘7Ø!”Mçð ×-Ñ-Ó/�ßØ!’Mð —(‘(Ò&Ø—x‘x—{‘{×+Ñ+Ó-�ßàØ˜7–?Øð ×&×&Ð&Ø×'Ñ'×-Ñ-Ô/÷q #×"×"Ò"üs€   ‚AIÁ#IÁ)A	H2Â2
IÂ<H2Ã
IÃH2Ã'
IÃ1H2Ã9H2ÄH2Ä1AH2ÆH2ÆH2Æ3=H2Ç1H2Ç;H2ÈH2È(
IÈ2I	È=	Ic               ó   € V ^8„  d   QhRR/# rQ  r(   )r)   s   "r*   r+   rÏ  º  s   € ÷ !ñ !�Zñ !r-   c                ó   € V P                   # )z¤
Returns the URL that was the source of this response.
If the request that generated this response redirected, this method
will return the final redirect location.
©r;  r;   s   &r*   rS  ÚHTTPResponse.url¹  s   € ð × Ñ Ð r-   c               ó    € V ^8„  d   QhRRRR/# rV  r(   )r)   s   "r*   r+   rÏ  Ã  s   € ÷  ñ  �zð   dñ  r-   c                	ó   € Wn         R # r/   rY  rX  s   &&r*   rS  rZ  Â  s   € àÖr-   c               ó   € V ^8„  d   QhRR/# )r"   r'   rj  r(   )r)   s   "r*   r+   rÏ  Æ  s   € ÷ #ñ #Ð0ñ #r-   c              #  	óŒ  "  € . pV P                  R R7       FŠ  pRV9   dp   VP                  R4      pRP                  V4      V^ ,          ,           R,           x € V^R  F  pVR,           x € K  	  VR,          '       d   VR,          .pKu  . pKy  VP                  V4       KŒ  	  V'       d   RP                  V4      x € R# R# 5i)TrÑ  ó   
r-   NrE   )rm  rÌ   r¸   r·   )r3   rö   r  ÚchunksÚxs   &    r*   Ú__iter__ÚHTTPResponse.__iter__Æ  s¨   é € Ø ˆØ—[‘[°�[Ö5ˆEØ˜Œ~ØŸ™ UÓ+�Ø—h‘h˜vÓ&¨°­Õ2°UÕ:Ò:Ø  "›�AØ˜e�)”Oñ &à˜"—:”:Ø$ R�j˜\’Fà’Fà—‘˜eÖ$ñ 6÷ Ø—(‘(˜6Ó"Ô"ñ ùs   ‚B*CÂ-C)rÓ  rÙ  rÞ  r=  rÕ  r×  rÖ  rØ  r;  rÚ  rÔ  rÍ  rÛ  rË  rÝ  rÊ  )r5  Nr   r   zHTTP/?NTTNNNNNTNNTNr/   r½  r¾  r¼  )$rF   rG   rH   rI   ræ   rY   r�  r…  rJ   r#   r[  rò  rö  rÜ  r   r	  r  rç  rs  rx  rm  r+  r‰  r�  r  r<  rB   r'  rJ  rQ  r}  rS  rÂ  rb  rK   Ú__classcell__)rß  s   @r*   r   r   ±  s(  ø† ñ÷@?Bò ?BõB õ!ð  ôó ðð ô ó ð õ&õ#õ6ðp ô;$ó ð;$ñz3Nð ÷	3Nð 3Nñj2ð ÷	2ð 2÷hj÷XE-÷N õFõ,õ
"ð ô
ó ð
õ	õ$õ'õLõ$÷,U0ðn ô!ó ð!ð 	‡Z�Zô ó ð ÷#ó #r-   r   )é   é   )JÚ
__future__r   rô   r
  rN  rL  Úloggingr/  ÚsysÚtypingrŸ   rV   Ú
contextlibr   Úhttp.clientr   Ú_HttplibHTTPMessager   Ú_HttplibHTTPResponser   r  ÚTYPE_CHECKINGÚ_base_connectionr   Ú
brotlicffir’   ÚImportErrorr5  r	   r
   Ú_collectionsr   r[  r   r   r   Ú
exceptionsr   r   r   r   r   r   r   r   r   r   r   Úutil.responser   r   Ú
util.retryr   Úconnectionpoolr   Ú	getLoggerrF   rü  r   rM   ro   rt   r�   Úversion_infoÚcompressionr¬   Ú	backportsrí   r®   rÅ   rÏ   rï   r4  r%  r(   r-   r*   Ú<module>r|     sˆ  ðÝ "ã Û 	Û Û Û Û 
Û Û Û Ý %Ý :Ý <Ý +à	××ÐÝ4ððÛ#õ Ý (Ý (ß CÑ C÷÷ ÷ ñ ÷ =Ý à	××ÐÝ2à×Ò˜Ó!€÷	$ñ 	$ô8!�^ô 8!÷vñ ô=!�.ô =!ð@ 
Òô(˜ô (ðV9Ø
×Ñ˜7Ô"Þ$å"ð €Hô/�nô /ôd5B�>ô 5Bõp÷$Jñ JôZk�r—y‘yô kô\d#Ð#ö d#øðu ô Þðûàô ØƒFðûðx ô Ø‚Hðús<   ÁE1 Ä	F Å1F Å<F Å?F Æ F Æ	FÆFÆ	FÆF