+
   >[e!                   p   ^ 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 . R8Ot^PtRtRtRtRtRt]! 4       P+                  ]P,                  P.                  4       ]P,                  P.                  P1                  4        U u/ uF  q V P2                  bK  	  up tRt^dt^dtR9t]P>                  ! R4      P@                  t!]P>                  ! R4      PD                  t#]P>                  ! R4      t$]P>                  ! R4      t%0 R:mt&R;R lt'R R lt( ! R  R!]PR                  PT                  4      t+R" t,]+3R# lt-]+3R$ lt. ! R% R]P^                  4      t0R& t1 ! R' R4      t2 ^ RI3t3 ! R( R)]24      t4]Pk                  R)4        ! R* R]74      t8 ! R+ R]84      t9 ! R, R]84      t: ! R- R]84      t; ! R. R]84      t< ! R/ R	]84      t= ! R0 R
]84      t> ! R1 R]84      t? ! R2 R]?4      t@ ! R3 R]?4      tA ! R4 R]?4      tB ! R5 R]84      tC ! R6 R]84      tD ! R7 R]E]C4      tF]8tGR# u up i   ]6 d     Li ; i)<    N)urlsplitHTTPResponseHTTPConnectionHTTPExceptionNotConnectedUnknownProtocolUnknownTransferEncodingUnimplementedFileModeIncompleteRead
InvalidURLImproperConnectionStateCannotSendRequestCannotSendHeaderResponseNotReadyBadStatusLineLineTooLongRemoteDisconnectedi  UNKNOWNIdlezRequest-startedzRequest-senti   s   [^:\s][^:\r\n]*s   \n(?![ \t])|\r(?![ \t\n])z[ - ]z[ -]c                     V P                  R 4      #   \         do   p\        TP                  TP                  TP                  TP
                  TP                  4       : RYP                  TP
                   :R RT: R24      RhRp?ii ; i)latin-1z (z.20z) is not valid Latin-1. Use z9.encode('utf-8') if you want to send it encoded in UTF-8.N)encodeUnicodeEncodeErrorencodingobjectstartendtitle)datanameerrs   && "/usr/lib/python3.14/http/client.py_encoder#      s{    
E{{9%% E LLJJIIGG ZZ\4		#''2D:; AE	EEs    BA)BBc                0    V ^8  d   QhR\         R\         /# )   enc_namereturn)bytes)formats   "r"   __annotate__r*      s       %     c                 P    V P                  R 4      w  rpV'       d
   V R,          p V # )   %   ])	partition)r&   percent_s   &  r"   _strip_ipv6_ifacer2      s)    #--d3HqDOr+   c                   &   a  ] tR t^t o R tRtV tR# )HTTPMessagec                *   VP                  4       R ,           p\        V4      p. p^ pV P                  4        FX  pVRV P                  4       V8X  d   ^pMVR,          P                  4       '       g   ^ pV'       g   KG  VP	                  V4       KZ  	  V# ):N:N   N)lowerlenkeysisspaceappend)selfr    nlsthitlines   &&    r"   getallmatchingheaders!HTTPMessage.getallmatchingheaders   s     zz|c!IIIKDBQx~~4'"X%%''s

4    
r+    N)__name__
__module____qualname____firstlineno__rB   __static_attributes____classdictcell____classdict__s   @r"   r4   r4      s      r+   r4   c                    . p V P                  \        ^,           4      p\        V4      \        8  d   \        R4      hVP	                  V4       \        V4      \
        8  d   \        R\
        ,          4      hVR9   g   K   V# )Tzheader linezgot more than %d headers   
   
r+   )readline_MAXLINEr9   r   r<   _MAXHEADERSr   )fpheadersrA   s   &  r"   _read_headersrV      so     G
{{8a<(t9xm,,tw<+% :[ HII((Nr+   c                     R P                  V 4      P                  R4      p\        P                  P	                  VR7      P                  V4      # )r+   
iso-8859-1)_class)joindecodeemailparserParserparsestr)header_linesrY   hstrings   && r"   _parse_header_linesrb      s@     hh|$++L9G<<f-66w??r+   c                 .    \        V 4      p\        W!4      # N)rV   rb   )rT   rY   rU   s   && r"   parse_headersre     s     BGw//r+   c                     a a ] tR tRt oR!R ltR tR tR tR tV 3R lt	V 3R lt
R	 tR
 tR"R ltR tR tR tR tR"R ltR tR tR tR#R ltR#R ltR#V 3R lltR tR tR tR"R ltR tR tR tR t R t!R t"Vt#V ;t$# )$r   i  c                    VP                  R 4      V n        W n        W0n        R;V n        V n        \        V n        \        V n        \        V n	        \        V n
        \        V n        \        V n        \        V n        R# )rbN)makefilerT   
debuglevel_methodrU   msg_UNKNOWNversionstatusreasonchunked
chunk_leftlength
will_close)r=   sockrj   methodurls   &&&&&r"   __init__HTTPResponse.__init__  sa     --%$ #'&tx  ""r+   c                   \        V P                  P                  \        ^,           4      R4      p\	        V4      \        8  d   \        R4      hV P                  ^ 8  d   \        R\        V4      4       V'       g   \        R4      h VP                  R^4      w  r#pTP                  R4      '       g   T P                  4        \        T4      h \        X4      pT^d8  g   TR8  d   \        T4      h Y#X3#   \         d/     TP                  R^4      w  r#Rp L  \         d    Rp  Li ; ii ; i  \         d    \        T4      hi ; i)	r7   rX   zstatus linezreply:z-Remote end closed connection without responseN zHTTP/i  )strrT   rQ   rR   r9   r   rj   printreprr   split
ValueError
startswith_close_connr   int)r=   rA   rn   ro   rp   s   &    r"   _read_statusHTTPResponse._read_status/  sA   477##HqL1<@t9xm,,??Q(DJ' % &1 2 2	&*jjq&9#GV !!'**%%	&[F|v|#D))  , &&%  	"&**T1"5 		   	&%%	&s6   
C; $D7 ;D4DD0,D4/D00D47Ec                t   V P                   e   R # \        \        4       FV  pV P                  4       w  r#pV\        8w  d    MJ\        V P                  4      pV P                  ^ 8  d   \        RV4       ?KX  	  \        R\         R24      hV;V n
        V n        VP                  4       V n        VR9   d	   ^
V n        M*VP                  R4      '       d	   ^V n        M\!        V4      h\#        V P                  4      ;V n         V n        V P                  ^ 8  d8   V P                   P'                  4        F  w  rg\        RVR,           V4       K  	  V P                   P)                  R4      pV'       d%   VP+                  4       R8X  d   R	V n        R V n        MR
V n        V P1                  4       V n        R V n        V P                   P)                  R4      p	V	'       d=   V P,                  '       g+    \7        V	4      V n        V P4                  ^ 8  d   R V n        MR V n        V\:        8X  g.   V\<        8X  g#   ^dTu;8:  d   ^8  g   M V P>                  R8X  d   ^ V n        V P2                  '       g.   V P,                  '       g   V P4                  f
   R	V n        R # R # R # R #   \8         d    R T n         Li ; i)Nzheaders:got more than z interim responseszHTTP/1.header:r6   transfer-encodingrq   TFcontent-lengthHEAD)zHTTP/1.0zHTTP/0.9) rU   range_MAXINTERIMRESPONSESr   CONTINUErV   rT   rj   r}   r   codero   striprp   rn   r   r   re   rl   itemsgetr8   rq   rr   _check_closert   rs   r   r   
NO_CONTENTNOT_MODIFIEDrk   )
r=   r1   rn   ro   rp   skipped_headershdrvaltr_encrs   s
   &         r"   beginHTTPResponse.beginP  sB   <<# +,A&*&7&7&9#GV!+DGG4O"j/2 -   !5 66HIK K #)(	DKlln..DL	**DL!'**"/"88tx??Q LL..0isC0 1 !!"56flln	1DL"DO DL ++- !!"23$,,,'!&k ;;?"&DKDK j Fl$:6CLLF"DK
 KK"DO     #  #"#s   2J" "J76J7c                   V P                   P                  R 4      pV P                  ^8X  d"   V'       d   RVP                  4       9   d   R# R# V P                   P                  R4      '       d   R# V'       d   RVP                  4       9   d   R# V P                   P                  R4      pV'       d   RVP                  4       9   d   R# R# )
connectioncloseTFz
keep-alivezproxy-connection)rU   r   rn   r8   )r=   connpconns   &  r"   r   HTTPResponse._check_close  s    ||-<<2 4::</ <<L)) LDJJL0   !34\U[[]2 r+   c                L    V P                   pR V n         VP                  4        R # rd   )rT   r   )r=   rT   s   & r"   r   HTTPResponse._close_conn  s    WW

r+   c                   <  \         SV `  4        V P                  '       d   V P                  4        R # R #   T P                  '       d   T P                  4        i i ; ird   )superr   rT   r   r=   	__class__s   &r"   r   HTTPResponse.close  sF    	#GMOwww  " twww  " s	   7 %Ac                   < \         SV `  4        V P                  '       d   V P                  P                  4        R # R # rd   )r   flushrT   r   s   &r"   r   HTTPResponse.flush  s'    777GGMMO r+   c                    R # )TrD   r=   s   &r"   readableHTTPResponse.readable  s    r+   c                    V P                   R J # rd   )rT   r   s   &r"   isclosedHTTPResponse.isclosed  s     ww$r+   c                6   V P                   f   R# V P                  R8X  d   V P                  4        R# V P                  '       d   V P	                  V4      # Ve   V^ 8  d   V P
                  e   WP
                  8  d   V P
                  pV P                   P                  V4      pV'       g   V'       d   V P                  4        V# V P
                  eE   V ;P
                  \        V4      ,          un        V P
                  '       g   V P                  4        V# V P
                  f   V P                   P                  4       pM# V P                  V P
                  4      p^ T n        V P                  4        V#   \         d    T P                  4        h i ; i)Nr+   r   )
rT   rk   r   rq   _read_chunkedrs   readr9   
_safe_readr   )r=   amtss   && r"   r   HTTPResponse.read  s:   77?<<6!<<<%%c**?sax{{&3+<kkS!A   "
 H	 (s1v%{{{$$&H {{"GGLLN4A  H & $$&s   E; ;Fc                >   V P                   f   ^ # V P                  R8X  d   V P                  4        ^ # V P                  '       d   V P	                  V4      # V P
                  e3   \        V4      V P
                  8  d   \        V4      ^ V P
                   pV P                   P                  V4      pV'       g   V'       d   V P                  4        V# V P
                  e<   V ;P
                  V,          un        V P
                  '       g   V P                  4        V# )Nr   )	rT   rk   r   rq   _readinto_chunkedrs   r9   
memoryviewreadinto)r=   br>   s   && r"   r   HTTPResponse.readinto  s    
 77?<<6!<<<))!,,;;"1v#qM!DKK0
 GGQQ 
 	 [[$KK1K;;;  "r+   c                    V P                   P                  \        ^,           4      p\        V4      \        8  d   \	        R4      hVP                  R4      pV^ 8  d   VRV p \        V^4      #   \         d    T P                  4        h i ; i)r7   z
chunk size   ;N)	rT   rQ   rR   r9   r   findr   r   r   )r=   rA   is   &  r"   _read_next_chunk_size"HTTPResponse._read_next_chunk_size(  s    ww1-t9xl++IIdO68D	tR=  	 		s   $A0 0Bc                
   ^ p V P                   P                  \        ^,           4      p\        V4      \        8  d   \	        R4      hV'       g   R# VR9   d   R# V^,          pV\
        8  g   Ko  \        R\
         R24      h)r   ztrailer liner   z	 trailersNrN   )rT   rQ   rR   r9   r   rS   r   )r=   trailers_readrA   s   &  r"   _read_and_discard_trailer&HTTPResponse._read_and_discard_trailer8  s|     77##HqL1D4y8#!.11 ,,
 QM{*#$[M;= =r+   c                   V P                   pV'       gV   Ve   V P                  ^4        V P                  4       pT^ 8X  d#   T P                  4        T P                  4        R pYn         V#   \         d    \	        R4      hi ; iNr+   )rr   r   r   r   r   r   r   )r=   rr   s   & r"   _get_chunk_leftHTTPResponse._get_chunk_leftO  s     __
%"*!779
 Q..0  "!
(O  *$S))*s   A, ,Bc                   Ve
   V^ 8  d   R p. p V P                  4       ;pen   Ve5   W8:  d/   VP                  V P                  V4      4       W1,
          V n        M5VP                  V P                  V4      4       Ve	   W,          p^ V n        K  RP	                  V4      #   \
         d!   p\        RP	                  T4      4      ThR p?ii ; ir   )r   r<   r   rr   rZ   r   )r=   r   valuerr   excs   &&   r"   r   HTTPResponse._read_chunkedg  s    ?sQwC	;!%!5!5!77:D?s'8LL!56&0&6DOT__Z89?%C"#88E?" 	; %1s:	;s   BB# #C.C		Cc                Z   ^ p\        V4      p  V P                  4       pVf   V# \        V4      V8:  d'   V P                  V4      pWE,
          V n        W%,           # VRV pV P                  V4      pW5R pW%,          p^ V n        Kx    \
         d    \        \        T^ T 4      4      hi ; i)r   N)r   r   r9   _safe_readintorr   r   r(   )r=   r   total_bytesmvbrr   r>   temp_mvbs   &&     r"   r   HTTPResponse._readinto_chunked{  s    m	:!113
%&&s8z)++C0A&0nDO&?*{
+''1"g "# 	: q;'7!899	:s   B 5B +B #B*c                   \        V\        4      pV P                  P                  V4      p\	        V4      V8  d   V# \	        V4      V8  d   \        W1\	        V4      ,
          4      h\        P                  ! V4      pVP                  ^ ^4        \        W!V,
          4      pVP                  V P                  P                  V4      4       VP                  4       V8  d   VP                  4       # W$,          pVP                  4       V8  g   K  \        VP                  4       WP                  4       ,
          4      h)r   )min_MIN_READ_BUF_SIZErT   r   r9   r   ioBytesIOseekwritetellgetvalue)r=   r   cursizer   deltas   &&   r"   r   HTTPResponse._safe_read  s     c-.ww||G$t9Kt9w SY77zz$		!Q w/EJJtww||E*+yy{c!}}&Gyy{W$$T]]_cIIK6GHHr+   c                    \        V4      pV P                  P                  V4      pW28  d   \        \	        VR V 4      W#,
          4      hV# rd   )r9   rT   r   r   r(   )r=   r   r   r>   s   &&  r"   r   HTTPResponse._safe_readinto  sB    !fGGQ7 q!usu55r+   c                   V P                   e   V P                  R8X  d   R# V P                  '       d   V P                  V4      # V P                  e$   V^ 8  g   WP                  8  d   V P                  pV P                   P                  V4      pV'       g   V'       d   V P                  4        V# V P                  eE   V ;P                  \        V4      ,          un        V P                  '       g   V P                  4        V# Nr   r+   )rT   rk   rq   _read1_chunkedrs   read1r   r9   )r=   r>   results   && r"   r   HTTPResponse.read1  s     77?dllf4<<<&&q));;"A[[Aq!!
 	 [[$KK3v;&K;;;  "r+   c                    V P                   e   V P                  R8X  d   R# V P                  '       d   V P                  V4      # V P                   P	                  V4      # r   )rT   rk   rq   _peek_chunkedpeek)r=   r>   s   &&r"   r   HTTPResponse.peek  sG     77?dllf4<<<%%a((ww||Ar+   c                  < V P                   e   V P                  R8X  d   R# V P                  '       d   \        SV `  V4      # V P
                  e$   V^ 8  g   WP
                  8  d   V P
                  pV P                   P	                  V4      pV'       g   V'       d   V P                  4        V# V P
                  eE   V ;P
                  \        V4      ,          un        V P
                  '       g   V P                  4        V# r   )rT   rk   rq   r   rQ   rs   r   r9   )r=   limitr   r   s   && r"   rQ   HTTPResponse.readline  s    77?dllf4<<<7#E**;;"	U[[5HKKE!!%(%
 	 [[$KK3v;&K;;;  "r+   c                   V P                  4       pVe   V^ 8X  d   R# ^ Tu;8:  d   V8:  g   M TpV P                  P                  V4      pV ;P                  \	        V4      ,          un        V'       g   \        R4      hV# r   )r   rT   r   rr   r9   r   )r=   r>   rr   r   s   &&  r"   r   HTTPResponse._read1_chunked  sj     ))+
aQ$*$Aww}}Q3t9$ %%r+   c                     V P                  4       pTf   R # T P                  P                  T4      RT #   \         d     R # i ; i)r+   N)r   r   rT   r   )r=   r>   rr   s   && r"   r   HTTPResponse._peek_chunked  sP    	--/J  ww||J'44  		s   6 AAc                6    V P                   P                  4       # rd   )rT   filenor   s   &r"   r   HTTPResponse.fileno  s    ww~~r+   c                    V P                   f   \        4       hV P                   P                  V4      ;'       g    Tp\        V\        4      '       g   \        VR4      '       g   V# RP                  V4      # )N__iter__z, )rU   r   get_all
isinstancer|   hasattrrZ   )r=   r    defaultrU   s   &&& r"   	getheaderHTTPResponse.getheader  s`     <<"$$,,&&t,77gs##77J+G+GN99W%%r+   c                x    V P                   f   \        4       h\        V P                   P                  4       4      # rd   )rU   r   listr   r   s   &r"   
getheadersHTTPResponse.getheaders  s-    <<"$$DLL&&())r+   c                    V # rd   rD   r   s   &r"   r   HTTPResponse.__iter__  s    r+   c                    V P                   # rd   )rU   r   s   &r"   infoHTTPResponse.info"  s    * ||r+   c                    V P                   # rd   )rw   r   s   &r"   geturlHTTPResponse.geturl9  s     xxr+   c                    V P                   # rd   )ro   r   s   &r"   getcodeHTTPResponse.getcodeE  s    
 {{r+   )rk   rr   rq   r   rj   rT   rU   rs   rl   rp   ro   rn   rt   )r   NNrd   ))%rE   rF   rG   rH   rx   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rQ   r   r   r   r   r  r   r	  r  r  rI   rJ   __classcell__r   rL   s   @@r"   r   r     s     #<'BI#V:
#
&P D =.0;(:0I6&"5 &(*
.
 r+   c                     \         P                  ! 4       pV ^8X  d   VP                  R.4       VP                  e   RVn        V# )   zhttp/1.1T)ssl_create_default_https_contextset_alpn_protocolspost_handshake_auth)http_versioncontexts   & r"   _create_https_contextr  M  sC     //1Gr""J<0"".&*#Nr+   c                   *  a  ] tR tRt o ^tRt]t]t	^t
^ t]R 4       t]R 4       tR]P                   RR3R ltR!R ltR	 tR
 tR tR tR tR tR tR tR tR tR"R ltR#R ltR tR t R t!R t"R t#R$RR/R llt$R/ 3RR/R llt%R t&R t'R t(V t)R# )%r   iZ  zHTTP/1.1c                6    \        V \        P                  4      # rd   )r   r   
TextIOBase)streams   &r"   
_is_textIOHTTPConnection._is_textIOd  s     &"--00r+   c                   V f   VP                  4       \        9   d   ^ # R # \        V R4      '       d   R #  \        V 4      pVP                  #   \
         d     Mi ; i\        T \        4      '       d   \        T 4      # R # )Nr   )	upper_METHODS_EXPECTING_BODYr   r   nbytes	TypeErrorr   r|   r9   )bodyrv   mvs   && r"   _get_content_length"HTTPConnection._get_content_lengthj  sw     < ||~!884  	D!B99 		 dC  t9s   A AAN    c                L   W0n         W@n        WPn        R V n        . V n        R V n        \        V n        R V n        R V n	        R V n
        / V n        R V n        V P                  W4      w  V n        V n        V P!                  V P                  4       \"        P$                  V n        R # rd   )timeoutsource_address	blocksizeru   _buffer_HTTPConnection__response_CS_IDLE_HTTPConnection__staterk   _tunnel_host_tunnel_port_tunnel_headers_raw_proxy_headers_get_hostporthostport_validate_hostsocketcreate_connection_create_connection)r=   r:  r;  r.  r/  r0  s   &&&&&&r"   rx   HTTPConnection.__init__  s    ,"	  !"&!%!3!3D!?DIDII& #)":":r+   c                "   V P                   '       d   \        R 4      hV P                  W4      w  V n        V n        V'       d   VP                  4       V n        MV P                  P                  4        \        ;QJ d&    R V P                   4       F  '       g   K   RM	  RM! R V P                   4       4      '       gN   V P                  P                  R4      P                  R4      pRW@P                  3,          V P                  R&   R# R# )	z.Can't set up tunnel for established connectionc              3   F   "   T F  qP                  4       R 8H  x  K  	  R# 5i)r:  Nr8   ).0headers   & r"   	<genexpr>,HTTPConnection.set_tunnel.<locals>.<genexpr>  s     O:N<<>V+:Ns   !TFidnaasciiz%s:%dHostN)ru   RuntimeErrorr9  r5  r6  copyr7  clearanyr   r[   )r=   r:  r;  rU   encoded_hosts   &&&& r"   
set_tunnelHTTPConnection.set_tunnel  s    , 999OPP/3/A/A$/M,4,#*<<>D   &&(sO$:N:NOsssO$:N:NOOO,,33F;BB7KL+2//61 ,1D  ( Pr+   c                   VfP   VP                  R4      pVP                  R4      pW48  d    \        W^,           R  4      pTR T pMV P                  pV'       d"   V^ ,          R8X  d   VR,          R8X  d   V^R pW3#   \         d;    Y^,           R  R8X  d   T P                  p Lg\	        RY^,           R  ,          4      hi ; i)Nr6   ]r{   znonnumeric port: '%s'[r  )rfindr   r   default_portr   )r=   r:  r;  r   js   &&&  r"   r9  HTTPConnection._get_hostport  s    <

3A

3AuOtaCDz?D BQx((DGsNtBx3":D| " OaCDzR'#00()@4!:)MNN	Os   B   'C)Cc                    Wn         R # rd   )rj   )r=   levels   &&r"   set_debuglevelHTTPConnection.set_debuglevel  s    r+   c                P    R V9   d   V^ ,          ^[8w  d   RV,           R,           # V# )   :   [r.   rD   )r=   ips   &&r"   
_wrap_ipv6HTTPConnection._wrap_ipv6  s(    2:"Q%7*"9t##	r+   c                   \         P                  V P                  4      '       d   \        R V P                  : 24      hRV P	                  V P                  P                  R4      4      V P                  V P                  P                  R4      3,          pV.pV P                  P                  4        F  w  r4VP                  R4      pVP                  R4      p\        V4      '       g   \        RV: 24      h\        V4      '       d   \        RV: 24      hVP                  RWV3,          4       K  	  VP                  R4       V P                  R	P                  V4      4       ?V P                  V P                   V P"                  R
7      p VP%                  4       w  rp
\'        VP(                  4      V n        V P,                  ^ 8  d.   V P*                   F  p\/        RVP1                  4       4       K  	  V	\2        P4                  P6                  8w  d0   V P9                  4        \;        RV	 RV
P=                  4        24      h VP9                  4        R#   TP9                  4        i ; i)z-Tunnel host can't contain control characters s   CONNECT %s:%d %s
rH  rI  r   Invalid header name Invalid header value s   %s: %s
rO   r+   rv   r   zTunnel connection failed:  N)!_contains_disallowed_url_pchar_researchr5  r   ra  r   r6  _http_vsn_strr7  r   _is_legal_header_name_is_illegal_header_valuer<   sendrZ   response_classru   rk   r   rV   rT   r8  rj   r}   r[   http
HTTPStatusOKr   OSErrorr   )r=   connectrU   rE  r   header_bytesvalue_bytesresponsern   r   messages   &          r"   _tunnelHTTPConnection._tunnel  s   ,33D4E4EFF $ 1 14 5 5)OOD--44V<=%%g.-0 0 )!11779MF!==3L,,y1K(66 \!KLL'44 k!KLLNN=L+FFG : 	w 			#((7#$&&tyy&F	'/'<'<'>$WG&3HKK&@D#""55F)V]]_5 6 t)))

 :4&'--/ARSTT *
 NNHNNs   B9I I/c                L    V P                   e   \        V P                   4      # R # rd   )r8  rb   r   s   &r"   get_proxy_response_headers)HTTPConnection.get_proxy_response_headers
  s/     &&2   7 78	
 	
r+   c                   \         P                  ! R W P                  V P                  4       V P	                  V P                  V P                  3V P
                  V P                  4      V n         V P                  P                  \        P                  \        P                  ^4       V P                  '       d   V P!                  4        R# R#   \         d+   pTP                  \        P                  8w  d   h  Rp?LVRp?ii ; i)zhttp.client.connectN)sysauditr:  r;  r?  r.  r/  ru   
setsockoptr=  IPPROTO_TCPTCP_NODELAYrr  errnoENOPROTOOPTr5  rx  r=   es   & r"   rs  HTTPConnection.connect  s    		'yy$))D++YYtyy!4<<1D1DF		II  !3!3V5G5GK
 LLN 	  	ww%+++ ,	s   09C D C??Dc                0   \         V n         V P                  pV'       d   R V n        VP                  4        V P                  pV'       d   R V n        VP                  4        R # R #   T P                  pT'       d   R T n        TP                  4        i i ; ird   )r3  r4  ru   r   r2  )r=   ru   rv  s   &  r"   r   HTTPConnection.close'  sr    		!99D 	

H"&   H"&  s   A' A' '.Bc                   V P                   f.   V P                  '       d   V P                  4        M
\        4       hV P                  ^ 8  d   \        R\        V4      4       \        VR4      '       d   V P                  ^ 8  d   \        R4       V P                  V4      pV'       d   V P                  ^ 8  d   \        R4       VP                  V P                  4      ;p'       dN   V'       d   VP                  R4      p\        P                  ! RW4       V P                   P                  V4       Kp  R # \        P                  ! RW4        V P                   P                  V4       R #   \         dn    \!        T\"        P$                  P&                  4      '       d(   T F  pT P                   P                  T4       K   	   R # \        R\)        T4      ,          4      hi ; i)Nzsend:r   zsending a readableencoding file using iso-8859-1rX   zhttp.client.sendz9data should be a bytes-like object or an iterable, got %r)ru   	auto_openrs  r   rj   r}   r~   r   r!  r   r0  r   r~  r  sendallr'  r   collectionsabcIterabletype)r=   r   r   	datablockds   &&   r"   rm  HTTPConnection.send5  sf    99~~~"n$??Q'4:&4  "*+__T*F$//A-67#yy88)8 ) 0 0 >I		,d>		!!),		$d1	GIId# 	G$ 8 899AII%%a(    !9;?:!F G G	Gs   E, ,AG$G$c                <    V P                   P                  V4       R # rd   )r1  r<   )r=   r   s   &&r"   _outputHTTPConnection._outputZ  s    
 	Ar+   c              #  4  "   V P                   ^ 8  d   \        R4       V P                  V4      pV'       d   V P                   ^ 8  d   \        R4       VP                  V P                  4      ;p'       d    V'       d   VP                  R4      pVx  KB  R# 5i)r   zreading a readabler  rX   N)rj   r}   r!  r   r0  r   )r=   r   r   r  s   &&  r"   _read_readableHTTPConnection._read_readablea  st     ??Q&'*doo)23#==88i8%,,\:	O 9s   5B>B7B?BFc                   V P                   P                  R4       RP                  V P                   4      pV P                   R V P                  V4       Ve   \	        VR4      '       d   V P                  V4      pM \        V4       V3pV F  pV'       g   V P                  ^ 8  d   \        R4       K)  V'       d>   V P                  ^8X  d-   \        V4      R R2P                  R	4      V,           R,           pV P                  V4       K  	  V'       d'   V P                  ^8X  d   V P                  R
4       R# R# R# R#   \         d:     \        T4      p L  \         d    \        R\        T4      ,          4      hi ; ii ; i)r+   rO   :NNNNr   zAmessage_body should be a bytes-like object or an iterable, got %rzZero length chunk ignoredXz
rI  s   0

)r+   r+   )r1  extendrZ   rm  r   r  r   r'  iterr  rj   r}   	_http_vsnr9   r   )r=   message_bodyencode_chunkedrl   chunkschunks   &&&   r"   _send_outputHTTPConnection._send_outputl  s^    	J'll4<<(LLO		## |V,, ,,\:-
 |, +_F*9:!dnn&:"5z!nD188AEI!"E		%    $..B"6		,' #7~O $ ! >>!%l!3$ >' )H*.|*<)= > >>>s   >E FE'FFc                   V P                   '       d(   V P                   P                  4       '       d   R V n         V P                  \        8X  d   \        V n        M\        V P                  4      hV P                  V4       Wn        T;'       g    RpV P                  V4       V: RV: RV P                  : 2pV P                  V P                  V4      4       V P                  ^8X  EdL   V'       Eg%   RpVP                  R4      '       d   \        V4      w  rv  pV'       d/    VP                  R4      pV P#                  R\%        V4      4       MV P&                  '       d   V P&                  p	V P(                  p
MV P*                  p	V P,                  p
 V	P                  R4      pV P/                  V4      pRV	9   d   \%        V4      pWP0                  8X  d   V P#                  RV4       M*VP3                  R4      pV P#                  RV: RV
: 24       V'       g   V P#                  R	R
4       R # R # R #   \          d    TP                  R4      p EL i ; i  \          d    T	P                  R4      p Li ; i)N/rg  r{   ro  rI  rH  rJ  r6   zAccept-Encodingidentity)r2  r   r4  r3  _CS_REQ_STARTEDr   _validate_methodrk   _validate_pathrj  r  _encode_requestr  r   r   r   r   	putheaderr2   r5  r6  r:  r;  ra  rV  r[   )r=   rv   rw   	skip_hostskip_accept_encodingrequestnetlocnil
netloc_encr:  r;  host_encs   &&&&&       r"   
putrequestHTTPConnection.putrequest  s    ???t7799"DO* <<8#*DL#DLL11f% jjSC  &T-?-?@T))'23>>R 9 >>&))19#.Cc3;%+]]7%;
 NN6+<Z+HI(((#00#00#yy#yy7#';;w#7  $x8Hd{#4X#>000vx8#+??7#;v(D/IJ (0*= ( c . ;%+]]6%:
; . 7#';;v#67s$   (H: I :III<;I<c                $    VP                  R 4      # )rI  )r   )r=   r  s   &&r"   r  HTTPConnection._encode_request!  s    ~~g&&r+   c                    \         P                  V4      pV'       d#   \        R V: RVP                  4       : R24      hR# )z)method can't contain control characters.  (found at least )N)$_contains_disallowed_method_pchar_reri  r   group)r=   rv   matchs   && r"   r  HTTPConnection._validate_method%  sI     5;;FC?z J'',{{}&7q:; ; r+   c                    \         P                  V4      pV'       d#   \        R V: RVP                  4       : R24      hR# z&URL can't contain control characters. r  r  Nrh  ri  r   r  )r=   rw   r  s   && r"   r  HTTPConnection._validate_path.  sL     288=EcW M005/@C D D r+   c                    \         P                  V4      pV'       d#   \        R V: RVP                  4       : R24      hR# r  r  )r=   r:  r  s   && r"   r<  HTTPConnection._validate_host6  sL     288>EdX N005/@C D D r+   c                t   V P                   \        8w  d   \        4       h\        VR 4      '       d   VP	                  R4      p\        V4      '       g   \        RV: 24      h\        V4      p\        V4       F  w  r4\        VR 4      '       d   VP	                  R4      W#&   M2\        V\        4      '       d   \        V4      P	                  R4      W#&   \        W#,          4      '       g   Kv  \        RW#,          : 24      h	  RP                  V4      pVR,           V,           pV P                  V4       R# )r   rI  rd  r   re  s   
	s   : N)r4  r  r   r   r   rk  r   r  	enumerater   r   r|   rl  rZ   r  )r=   rE  valuesr   	one_valuer   s   &&*   r"   r  HTTPConnection.putheader>  s    
 <<?*"$$68$$]]7+F$V,,ABBf%f-LAy(++%,,Y7	Is++	N11':	'	22 fi!IJJ . v&%%'Vr+   r  c                   V P                   \        8X  d   \        V n         M
\        4       hV P	                  WR 7       R# )r  N)r4  r  _CS_REQ_SENTr   r  )r=   r  r  s   &&$r"   
endheadersHTTPConnection.endheadersZ  s1     <<?*'DL"$$,Fr+   c               ,    V P                  WW4V4       R # rd   )_send_request)r=   rv   rw   r(  rU   r  s   &&&&&$r"   r  HTTPConnection.requestg  s     	6~Fr+   c                >   \        R  V 4       4      p/ pRV9   d   ^VR&   RV9   d   ^VR&   V P                  ! W3/ VB  RV9  dw   RV9  do   RpV P                  W14      pVf=   Ve8   V P                  ^ 8  d   \	        R	V,          4       R
pV P                  RR4       MV P                  R\        V4      4       MRpVP                  4        F  w  rV P                  W4       K  	  \        V\        4      '       d   \        VR4      pV P                  W5R7       R# )c              3   @   "   T F  qP                  4       x  K  	  R # 5ird   rC  )rD  ks   & r"   rF  /HTTPConnection._send_request.<locals>.<genexpr>n  s      <GqGs   r:  r  zaccept-encodingr  r   r   FNzUnable to determine size of %rTzTransfer-Encodingrq   zContent-Lengthr(  r  )	frozensetr  r*  rj   r}   r  r|   r   r   r#   r  )r=   rv   rw   r(  rU   r  header_namesskipscontent_lengthr   r   s   &&&&&&     r"   r  HTTPConnection._send_requestl  s     <G <<\!!"E+,,-E()-u- </ #,6 "'!%!9!9$!G!)'??Q.!"BT"IJ)-':IFNN#3S5HI"N!--/JCNN3& *dC   4(D<r+   c                   V P                   '       d(   V P                   P                  4       '       d   R V n         V P                  \        8w  g   V P                   '       d   \	        V P                  4      hV P
                  ^ 8  d4   V P                  V P                  V P
                  V P                  R7      pM'V P                  V P                  V P                  R7      p  VP                  4        \        T n        TP                  '       d   T P                  4        T# Yn         T#   \         d    T P                  4        h i ; i   TP                  4        h ; i)Nrf  )r2  r   r4  r  r   rj   rn  ru   rk   r   ConnectionErrorr   r3  rt   )r=   rv  s   & r"   getresponseHTTPConnection.getresponse  s    ???t7799"DO" <<<'4???"4<<00??Q**499doo26,, + @H **499T\\*JH	 
 $DL"""


 O #+O # 

	NNs*   #D* 3E
 E
 "E
 *EE
 
E)
__response__stater1  r?  rk   r8  r7  r5  r6  r0  rj   r:  r;  ru   r/  r.  )NN)NF)FFrd   )*rE   rF   rG   rH   r  rj  r   rn  	HTTP_PORTrV  r  rj   staticmethodr!  r*  r=  _GLOBAL_DEFAULT_TIMEOUTrx   rP  r9  r[  ra  rx  r{  rs  r   rm  r  r  r  r  r  r  r  r<  r  r  r  r  r  rI   rJ   rK   s   @r"   r   r   Z  s     IM!NLIJ1 1
  > #'0N0N $;."1H( 
'R
!#GJ	4(l}~';DD8Ge G )-b G$G
,=\= =r+   c            	       n   a a ] tR tRt o]tRR]P                  RRRRRR/V 3R llltV 3R	 lt	R
t
VtV ;t# )HTTPSConnectioni  Nr.  r/  r  r0  r,  c               t   < \         \        V `  WVVVR 7       Vf   \        V P                  4      pWPn        R# ))r0  N)r   r  rx   r  r  _context)r=   r:  r;  r.  r/  r  r0  r   s   &&&$$$$r"   rx   HTTPSConnection.__init__  s>     /41$g2@<E 2 G /?#Mr+   c                   < \         SV `  4        V P                  '       d   V P                  pMV P                  pV P                  P                  V P                  VR 7      V n        R# ))server_hostnameN)r   rs  r5  r:  r  wrap_socketru   )r=   r  r   s   & r"   rs  HTTPSConnection.connect  sT     GO   "&"3"3"&))11$))BQ 2 SDIr+   )r  ru   rd   )rE   rF   rG   rH   
HTTPS_PORTrV  r=  r  rx   rs  rI   rJ   r  r  s   @@r"   r  r    sH      "	$ & > >	$$(	$26	$BF	$ 	$	S 	Sr+   r  c                       ] tR tRtRtR# )r   i  rD   NrE   rF   rG   rH   rI   rD   r+   r"   r   r     s     	r+   c                       ] tR tRtRtR# )r   i  rD   Nr  rD   r+   r"   r   r         r+   c                       ] tR tRtRtR# )r   i  rD   Nr  rD   r+   r"   r   r     r  r+   c                   &   a  ] tR tRt o R tRtV tR# )r   i  c                "    V3V n         Wn        R # rd   argsrn   )r=   rn   s   &&r"   rx   UnknownProtocol.__init__  s    H	r+   r  NrE   rF   rG   rH   rx   rI   rJ   rK   s   @r"   r   r     s      r+   c                       ] tR tRtRtR# )r	   i  rD   Nr  rD   r+   r"   r	   r	     r  r+   c                       ] tR tRtRtR# )r
   i  rD   Nr  rD   r+   r"   r
   r
     r  r+   c                   H   a  ] tR tRt o RR ltR t]P                  tRtV t	R# )r   i  Nc                .    V3V n         Wn        W n        R # rd   )r  partialexpected)r=   r  r  s   &&&r"   rx   IncompleteRead.__init__  s    H	 r+   c                    V P                   e   RV P                   ,          pMRpRV P                  P                  \        V P                  4      V3,          # )Nz, %i more expectedr{   z%s(%i bytes read%s))r  r   rE   r9   r  r  s   & r"   __repr__IncompleteRead.__repr__  sK    ==$$t}}4AA$(?(?(+DLL(91(> > 	>r+   )r  r  r  rd   )
rE   rF   rG   rH   rx   r  r   __str__rI   rJ   rK   s   @r"   r   r     s     !> nnGr+   c                       ] tR tRtRtR# )r   i   rD   Nr  rD   r+   r"   r   r      r  r+   c                       ] tR tRtRtR# )r   i#  rD   Nr  rD   r+   r"   r   r   #  r  r+   c                       ] tR tRtRtR# )r   i&  rD   Nr  rD   r+   r"   r   r   &  r  r+   c                       ] tR tRtRtR# )r   i)  rD   Nr  rD   r+   r"   r   r   )  r  r+   c                   &   a  ] tR tRt o R tRtV tR# )r   i,  c                H    V'       g   \        V4      pV3V n        Wn        R # rd   )r~   r  rA   )r=   rA   s   &&r"   rx   BadStatusLine.__init__-  s    :DE		r+   )r  rA   Nr  rK   s   @r"   r   r   ,  s      r+   c                   &   a  ] tR tRt o R tRtV tR# )r   i3  c                L    \         P                  V R \        V3,          4       R# )z&got more than %d bytes when reading %sN)r   rx   rR   )r=   	line_types   &&r"   rx   LineTooLong.__init__4  s"    t%M(0)'<&= 	>r+   rD   Nr  rK   s   @r"   r   r   3  s     > >r+   c                   &   a  ] tR tRt o R tRtV tR# )r   i8  c                f    \         P                  V R 4       \        P                  ! V .VO5/ VB  R# )r{   N)r   rx   ConnectionResetError)r=   poskws   &*,r"   rx   RemoteDisconnected.__init__9  s*    tR(%%d7S7B7r+   rD   Nr  rK   s   @r"   r   r   8  s     8 8r+   )r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   error	responsesi   >   PUTPOSTPATCH)r   )Hemail.parserr\   email.messager  ro  r   rer=  r~  collections.abcr  urllib.parser   __all__r  r  rm   r3  r  r  globalsupdaterp  __members__r  phraser  rR   rS   r   r   compile	fullmatchrk  ri  rl  rh  r  r%  r#   r2   rw  Messager4   rV   rb   re   BufferedIOBaser   r  r   r  r  r<   ImportError	Exceptionr   r   r   r   r	   r
   r   r   r   r   r   r   r   r  r   r  )vs   0r"   <module>r,     si  N     	 	  
  ! 	
 # 	  ,, - #'//"="="D"D"FG"FQ["FG	     8 

#67AA ::&CDKK  %'JJ/@$A ! (*zz-'@ $ 3 E%--'' <$ .9 @ ) 0B	2$$ B	J
}	 }	~!&S. S8 NN$%	I 	
	= 		 	m 
	m 		M 	] 	m 		/ 		. 		. 	M >- >
8-} 8 	e. H^+  		s   H&'H+ +H54H5