+
    ~j                       a  R. tk0 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
HtHtHtHtHtHtHtHtHtHtHtHtHt ^ RIHtHtHt ^ RIHt ^RIHt ^RI H!t! ^R	I"H#t#H$t$H%t%H&t&H't'H(t( ^R
I)H*t*H+t+H,t,H-t-H.t.H/t/H0t0 ^RI1H2t2H3t3H4t4H5t5H6t6H7t7H8t8H9t9H:t:H;t; ^RI<H=t=H>t> ^RI?H@t@HAtA ^RIBHCtC R/tD]R0,          tE]F! ]P                  4      tH] ^ k ]P                  ! R4      tJ] ^k ]P                  ! R]J R24      tL] ^k ]P                  ! R4      tM] ^k ]P                  ! R]P                  4      tO] ^k ]P                  ! R]P                  4      tP] ^k ]P                  ! R4      tQ] ^k ]R! 0 R1m4      tS] ^k  ! R R]4      tT ! R R]4      tU]! R]T]U4      tV ! R R ]4      tW ! R! R"]4      tX ! R# R4      tYR$ R% ltZ ! R& R]P                  ]]V,          4      t\ ! R' R]\]T,          4      t] ! R( R]\]U,          4      t^ ! R) R*4      t_ ! R+ R,4      t`]]ta]^tb]Ttc]Utd ].'       g   ^R-IeH]t]H^t^HTtTHUtU ]]tf]^tg]Tth]UtiR# R#   ]j d     R# i ; i)2    N)suppress)IntEnum)AnyClassVarFinalGenericListLiteral
NamedTupleOptionalPatternSetTupleTypeTypeVarUnion)CIMultiDictCIMultiDictProxyistr)URL)hdrs)BaseProtocol)DEFAULT_MAX_DECOMPRESS_SIZE
HAS_BROTLIHAS_ZSTDBrotliDecompressorZLibDecompressorZSTDDecompressor)_EXC_SENTINELDEBUGEMPTY_BODY_METHODSEMPTY_BODY_STATUS_CODESNO_EXTENSIONSBaseTimerContextset_exception)
BadHttpMessageBadHttpMethodBadStatusLineContentEncodingErrorContentLengthErrorDecompressSizeErrorInvalidHeaderInvalidURLErrorLineTooLongTransferEncodingError)HttpVersionHttpVersion10)EMPTY_PAYLOADStreamReader)
RawHeadersHeadersParser
HttpParserHttpRequestParserHttpResponseParserRawRequestMessageRawResponseMessagez!#$%&'*+-.^_`|~z
[0-9A-Za-zz]+z[\x00-\x08\x0a-\x1f\x7f]zHTTP/(\d)\.(\d)z\d+s   [0-9a-fA-F]+c                   ,   a  ] tR t^qt o V 3R ltRtV tR# )r9   c                   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   S[;R&   R;R&   S[;R&   S[;R&   S[S[ ,          ;R&   S[;R	&   S[;R
&   S[;R&   # )   methodpathversionCIMultiDictProxy[str]headersraw_headersshould_closecompressionupgradechunkedurl)strr0   r4   boolr   r   )format__classdict__s   "h/Users/mitch_tango/dev/rabbit-r1-livekit/agent/.venv/lib/python3.14/site-packages/aiohttp/http_parser.py__annotate__RawRequestMessage.__annotate__q   s     K 
I    %$	 
     #  M  M  
H      N__name__
__module____qualname____firstlineno____annotate_func____static_attributes____classdictcell__rL   s   @rM   r9   r9   q         rP   c                   ,   a  ] tR t^~t o V 3R ltRtV tR# )r:   c                   < V ^8  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[S[,          ;R&   S[;R&   S[;R&   S[S[,          ;R&   S[;R&   S[;R	&   # )
r=   r@   codereasonrB   rC   rD   rE   rF   rG   )r0   intrI   r   r4   rJ   r   )rK   rL   s   "rM   rN   RawResponseMessage.__annotate__~   s{      
I  K  c""	 
     #  M  M rP   rQ   NrR   rZ   s   @rM   r:   r:   ~   r[   rP   _MsgTc                   &    ] tR t^t^ t^t^t^tRtR# )
ParseStaterQ   N)	rS   rT   rU   rV   
PARSE_NONEPARSE_LENGTHPARSE_CHUNKEDPARSE_UNTIL_EOFrX   rQ   rP   rM   rd   rd      s    JLMOrP   rd   c                   *    ] tR t^t^ t^t^t^t^tRt	R# )
ChunkStaterQ   N)
rS   rT   rU   rV   PARSE_CHUNKED_SIZEPARSE_CHUNKED_CHUNKPARSE_CHUNKED_CHUNK_EOFPARSE_MAYBE_TRAILERSPARSE_TRAILERSrX   rQ   rP   rM   rj   rj      s    NrP   rj   c                   H   a  ] tR t^t o RV 3R lR lltV 3R lR ltRtV tR# )r5   c          
      6   < V ^8  d   QhRS[ RS[ RS[ RS[RR/# )r=   max_line_sizemax_headersmax_field_sizelaxreturnN)r`   rJ   )rK   rL   s   "rM   rN   HeadersParser.__annotate__   s=     
 

 
 	

 
 

rP   c                6    Wn         W n        W0n        W@n        R # N)rr   rs   rt   _lax)selfrr   rs   rt   ru   s   &&&&&rM   __init__HeadersParser.__init__   s     +&,	rP   c                J   < V ^8  d   QhRS[ S[,          RS[RS[3,          /# r=   linesrv   rA   )r	   bytesr   r4   )rK   rL   s   "rM   rN   rw      s0     L? L?%[L?	&
2	3L?rP   c                   \        4       p. p^ pW,          p\        V4      pV'       Ed    VP                  R^4      w  rx\        T4      ^ 8X  d   \	        T4      hT^ ,          TR,          0^ ^	0,          '       d   \	        T4      hTP                  R4      pTP                  RR4      p	\        P                  T	4      '       g   \	        T4      hT^,          pY,          pT P                  ;'       d    T;'       d    T^ ,          R9   p
T
'       d   \        T4      pT.pT
'       d   T\        T4      ,          pYP                  8  dD   TR,           RP                  T4      ,           p\        TR,          R	,           T P                  4      hTP                  T4       T^,          pYF8  d!   Y,          pT'       d   T^ ,          R9   p
K  K  Rp RP                  T4      pTP                  R4      pTP                  RR4      pT P                  '       d"   R
T9   g   RT9   g   RT9   d   \	        T4      hM&\        P!                  T4      '       d   \	        T4      hT P                  '       g/   Y9   d)   T	P#                  4       \$        9   d   \'        RT	 R24      hTP)                  Y4       TP                  Yx34       EK  \+        V4      \-        V4      3#   \         d    \	        T4      Rhi ; i)r      :Ns    	utf-8surrogateescapes   : rP   Nd   N   ...
 zDuplicate 'z' header found.)    	   )r   lensplit
ValueErrorr,   lstripdecodeTOKENRE	fullmatchrz   rt   joinr.   appendstrip_FIELD_VALUE_FORBIDDEN_CTL_REsearchlowerSINGLETON_HEADERSr&   addr   tuple)r{   r   rB   rC   	lines_idxline
line_countbnamebvaluenamecontinuationheader_length
bvalue_lstheader_linevalues   &&             rM   parse_headersHeadersParser.parse_headers   s    %0M	Z
d4 $

4 3 5zQ#E** a%)$Aw..#D))]]6*F<<):;D$$T**#E** NI#D  99DDDD$q'W2DL  #F$X
"!SY.M$':'::&+emchhz6J&J)'-68K8K  %%d+ NI -$/+/7g+=L    #*-\\&)FMM'+<=E yyy5=DEMVu_'// 6E.55e<<#F++999TZZ\EV5V${4&%HIIKK$/ )5+=>>{  4#D)t34s   K K2)rz   rt   rs   rr   N)  i   r   F)rS   rT   rU   rV   r|   r   rX   rY   rZ   s   @rM   r5   r5      s     
 
L? L?rP   c                F    V ^8  d   QhR\         \        ,          R\        /# )r=   rB   rv   )r   rI   rJ   )rK   s   "rM   rN   rN      s      = =#3C#8 =T =rP   c                    V P                  \        P                  R4      pVP                  4       ;'       d    VP	                  4       R9   # )z)Check if the upgrade header is supported. >   tcp	websocket)getr   UPGRADEisasciir   )rB   us   & rM   _is_supported_upgrader      s6    DLL"%A99;<<1779(<<<rP   c                   8  a  ] tR tRt o RtRV 3R lR llt]P                  V 3R lR l4       t]P                  V 3R lR	 l4       t	V 3R
 lR lt
RR]P                  ]P                  ]P                  3V 3R lR lltV 3R lR ltV 3R lR ltV 3R ltRtV tR# )r6      FNc                   < V ^8  d   QhRS[ S[,          RS[ S[P                  ,          RS[RS[RS[RS[RS[ S[,          RS[ S[,          R	S[ S[,          R
S[ S[S[,          ,          RS[	RS[	RS[	RR/# )r=   protocollooplimitrr   rs   rt   timerr^   r>   payload_exceptionresponse_with_bodyread_until_eofauto_decompressrv   N)
r   r   asyncioAbstractEventLoopr`   r$   rI   r   BaseExceptionrJ   )rK   rL   s   "rM   rN   HttpParser.__annotate__  s     &
 &
<(&
 w001&
 	&

 &
 &
 &
 ()&
 sm&
 &
 $D$78&
 !&
 &
 &
 
&
rP   c                *   Wn         W n        W@n        WPn        W`n        WPn        Wpn        Wn        Wn        Wn        Wn	        Wn
        . V n        R V n        RV n        RV n        RV n        Wn        W0n        \%        WEW`P&                  4      V n        R# )rP   FN)r   r   rr   rs   rt   r   r^   r>   r   r   r   _lines_tail	_upgraded_payload_payload_parser_auto_decompress_limitr5   ru   _headers_parser)r{   r   r   r   rr   rs   rt   r   r^   r>   r   r   r   r   s   &&&&&&&&&&&&&&rM   r|   HttpParser.__init__  s      !	*&,&
	!2"4,#%
<@ /, 
rP   c                6   < V ^8  d   QhRS[ S[,          RS[/# r=   r   rv   )r	   r   rb   )rK   rL   s   "rM   rN   r   ,  s    ==4;=5=rP   c                    R # ry   rQ   )r{   r   s   &&rM   parse_messageHttpParser.parse_message+  s    :=rP   c                &   < V ^8  d   QhRS[ RS[/# r=   terv   rI   rJ   )rK   rL   s   "rM   rN   r   /  s    2222rP   c                    R # ry   rQ   r{   r   s   &&rM   _is_chunked_teHttpParser._is_chunked_te.  s    /2rP   c                0   < V ^8  d   QhRS[ S[,          /# r=   rv   )r   rb   )rK   rL   s   "rM   rN   r   1  s      (5/ rP   c                   V P                   e$   V P                   P                  4        R V n         R # V P                  '       d&   V P                  P	                  V P                  4       V P                  '       dq   V P                  R,          R8w  d   V P                  P	                  R4       \        \        4      ;_uu_ 4        V P                  V P                  4      uuR R R 4       # R #   + '       g   i     R # ; i)Nz
rP   r   )r   feed_eofr   r   r   r   	Exceptionr   r{   s   &rM   r   HttpParser.feed_eof1  s    +  ))+#'D   zzz""4::.{{{;;r?f,KK&&s+i((--dkk: )( )(s   C--C>	   
rP   c                   < V ^8  d   QhRS[ RS[RS[ RS[RS[RS[RS[S[S[S[S[3,          ,          S[S[ 3,          /# )r=   dataSEPEMPTYCONTENT_LENGTHMETH_CONNECTSEC_WEBSOCKET_KEY1rv   )	r   _SEPr   rI   r   r	   rb   r3   rJ   )rK   rL   s   "rM   rN   r   A  su     Y. Y.Y. Y. 	Y.
 Y. Y. !Y. 
tE%-./u<	=Y.rP   c                Z  aa . pV P                   '       d   V P                   V,           R uqn         \        V4      p^ p	V P                  p
V P                  pRpW8  Ed	   V P                  EfN   V P
                  '       Eg;   VP                  W)4      pW8X  d'   V P                  '       g   V\        V4      ,           p	Kf  W8  Ed   V'       d   \        R4      hWV pVR8X  d   VP                  R4      p\        V4      V8  d   \        VR,          R,           V4      hV P                  P                  V4       V P                  p\        V P                  4      V P                  8  d   \        R4      hV\        V4      ,           p	V P                  R,          V8X  Ed   V P                  \        V P                  4      ,
          p V P                  V P                  4      oV P                  P                  4        R	 VV3R
 llpV! 4       pVSP                   9   d   \#        V4      hSP$                  ;'       d    \'        SP                   4      V n        \)        SRV P*                  4      p\)        SR^ 4      pV P,                  f   Q hV\.        9   ;'       g    \1        T;'       d
    V\2        9   4      pV'       g   Ve   V^ 8  g   SP4                  '       d   V P
                  '       g   \7        V P,                  V P8                  V
V P:                  R7      p\=        VVSP4                  VSP>                  V P@                  V PB                  V PD                  V PF                  V PH                  V P                  V P                  VR7      pVPJ                  '       g   VV n        EMVV8X  d   \M        S\N        4      '       g   Q h\7        V P,                  V P8                  V
V P:                  R7      pRV n        \=        VSP*                  SP>                  V PD                  V PF                  V PH                  V P                  V P                  VR7	      V n        MV'       g   Vf   V PP                  '       d   \7        V P,                  V P8                  V
V P:                  R7      p\=        VVSP4                  VSP>                  V P@                  V PB                  V PD                  V PF                  V PH                  V P                  V P                  VR7      pVPJ                  '       g   VV n        M\R        pVP                  SV34       SPT                  pEK  EK  WR V n         \        V P                   4      V P                  8  d/   \        V P                   R,          R,           V P                  4      hTpMV P                  f(   V P
                  '       d   V P                  '       d   Q hMwV'       do   W8  di   V P                  '       d   Q hV P                  f   Q h V P                  PW                  WR V4      w  ppV'       d   ^ p	\        V4      pRV n        EK  EK   V'       d   W8  d   WR pMTpWpP
                  V3#   T P                  P                  4        i ; i  \X         dw   pTpT PZ                  e   T P[                  \]        T4      4      p\_        T P                  P`                  TT4       RpR p\M        T\"        \b        34      '       d   h  Rp?LRp?ii ; i)rP   FNzData after `Connection: close`   
   r   r   zToo many headers receivedc                :    V ^8  d   QhR\         \        ,          /# r   )r   r`   )rK   s   "rM   rN   *HttpParser.feed_data.<locals>.__annotate__}  s     3 3HSM 3rP   c                     < SP                   P                  S4      p V f   R # \        P                  V 4      '       g   \	        S4      h\        V 4      # ry   )rB   r   DIGITSr   r,   r`   )
length_hdrr   msgs    rM   get_content_length0HttpParser.feed_data.<locals>.get_content_length}  sF    ),)HJ)1'+
 $*#3#3J#?#?&3N&C C#&z?2rP   r>   r^   )r   r   r   )lengthrG   r>   rE   r^   r   r   ru   headers_parserrr   rt   max_trailersT)r>   rE   r   ru   r   rr   rt   r   r   )2r   r   r   rr   r   r   findr   r&   rstripr.   r   rt   rs   r   clearrB   r,   rF   r   getattrr>   r   r"   rJ   r!   rG   r3   r   r   HttpPayloadParserrE   r^   r   r   ru   r   done
isinstancer9   r   r2   rD   	feed_datar   r   rI   r%   payloadr/   )r{   r   r   r   r   r   r   messagesdata_len	start_posr   max_line_lengthrD   posr   r   r   r   r>   r^   
empty_bodyr  payload_parsereofunderlying_excreraised_excr   s   &&&&f&&                   @rM   r  HttpParser.feed_dataA  s    :::#zzD0#D*t9	yy,," ##+DNNNii/#DKKK #c#hI##,-MNN  #.De|#{{514y?2)$t*v*=OOKK&&t,&*&9&9O4;;'$*:*::,-HII #c#hI {{2%/'+'7'7#dkk:J'J0)-););DKK)HC KK--/3 3 "4!5-<"/0B"CC), * *9NKK: ")h!D&sFA6#}}888%)-D%D & &"CCv1C'CI
  *$0VaZCKKK$(NNN&2 $&*jj%)&*kk	'G .? ''-(+'-,/OO%)YY373J3J040E0E$(HH/3/C/C.2.@.@/3/B/B-9.N $2#6#6#67E 4#|3#-c3D#E#EE#E&2 $&*jj%)&*kk	'G .2DN3D ''*zz,/OO040E0E$(HH/3/C/C.2.@.@/3/B/B-9
4D0 ",4CVCVCV&2 $&*jj%)&*kk	'G .? ''-(+'-,/OO%)YY373J3J040E0E$(HH/3/C/C.2.@.@/3/B/B-9.N $2#6#6#67E 4&3G g7'*'7'7e 0h "&j!1DJ4::););;)$**T*:V*CTEWEWXX D %%-$...;;;& ).;;;&++777 $ 4 4 > >tJ?OQT UIC&  !I"4yH+/D(	  I(
#DD-- !KK--/@ % #1L--9'+'='=c.>Q'R!,,44$& CD!&8M(N  s%   Z
 #!Z) 
Z&)\*4A,\%%\*c          
      z   < V ^8  d   QhRS[ S[,          RS[RS[S[S[,          S[S[,          S[S[3,          /# r   )r	   r   r   r4   r   rJ   rI   )rK   rL   s   "rM   rN   r     sC     4N 4N%[4N	Xd^Xc]DRVV
4NrP   c                J   V P                   P                  V4      w  r#RpRpRpRpVP                  \        P                  R4      pV'       d   V U	U
u0 uFT  p	R V	P                  R4       4        F5  p
V
'       g   K  V
P                  4       '       g   K%  V
P                  4       kK7  	  KV  	  pp	p
RV9   d   RpM	RV9   d   RpRV9   d(   VP                  \        P                  4      '       d   RpVP                  \        P                  R	4      pVP                  4       '       d   VP                  4       R9   d   TpVP                  \        P                  4      pVe:   V P                  V4      '       d   Rp\        P                  V9   d   \        R
4      hW#WEWg3# u up
p	i )zParses RFC 5322 headers from a stream.

Line continuations are supported. Returns list of header name
and value pairs. Header name is in upper case.
NFc              3   B   "   T F  qP                  R 4      x  K  	  R# 5i) 	N)r   ).0parts   & rM   	<genexpr>+HttpParser.parse_headers.<locals>.<genexpr>3  s     R<QDjj//<Qs   ,closeTz
keep-aliverF   r   z6Transfer-Encoding can't be present with Content-LengthrQ   >   brgzipzstddeflate)r   r   getallr   
CONNECTIONr   r   r   r   r   CONTENT_ENCODINGTRANSFER_ENCODINGr   r   r&   )r{   r   rB   rC   
close_connencodingrF   rG   conn_values
conn_valuetokenconn_tokensencr   s   &&            rM   r   HttpParser.parse_headers  s{     $33AA%H
 nnT__b9 #."-JRJ<L<LS<QRE  #]]_ R "-   +%!
,"
 K'GKK,E,E kk$//4;;==SYY[,MMH [[//0>""2&&""g-$L  jGMMAs   %F=FFc                $   < V ^8  d   QhRS[ RR/# )r=   valrv   N)rJ   )rK   rL   s   "rM   rN   r   R  s        rP   c                    Wn         R# )zJSet connection upgraded (to websocket) mode.

:param bool val: new state.
N)r   )r{   r*  s   &&rM   set_upgradedHttpParser.set_upgradedR  s	    
 rP   c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # )r=   ru   )r   rJ   )rK   rL   s   "rM   rN   r      s     	$ rP   )r   r   r   r   r   r   r   r   r^   r   rt   rs   rr   r>   r   r   r   r   r   )NNi   r      r   NNNNTFT)rS   rT   rU   rV   ru   r|   abcabstractmethodr   r   r   r   r   r   r   r  r   r,  rW   rX   rY   rZ   s   @rM   r6   r6      s     C&
 &
P 	= =2 2 & #22 --#'#:#:Y. Y.v4N 4Nl e
  rP   c                   H   a  ] tR tRt o RtV 3R lR ltV 3R lR ltRtV tR# )	r7   iZ  zRead request status line.

Exception .http_exceptions.BadStatusLine
could be raised in case of any errors in status line.
Returns RawRequestMessage.
c                6   < V ^8  d   QhRS[ S[,          RS[/# r   )r	   r   r9   )rK   rL   s   "rM   rN   HttpRequestParser.__annotate__b  s$     N
 N
4; N
3D N
rP   c                   V^ ,          P                  RR4      p VP                  R^R7      w  r4p\        P                  T4      '       g   \        T4      h\        P                  T4      pTf   \        T4      h\        \        TP                  ^4      4      \        TP                  ^4      4      4      pTR8X  d   \        P                  ! TRR7      pMTP                  R	4      '       dD   TP                  R
4      w  rpT	P                  R4      w  rp\        P                  ! T	TTRR7      pMdTR8X  d   TR8X  d   \        TRR7      pMH\        TRR7      pTP                  R8X  d+   \!        TP#                  RR7      P                  R4      4      hT P%                  TR,          4      w  ppppppTf   T\&        8:  d   RpMRp\)        TTTTTTTTTT4
      #   \         d    \        T4      Rhi ; i)r   r   r    maxsplitNCONNECTT)	authorityencoded/#?)r?   query_stringfragmentr;  *OPTIONS)r;  r   )errorslatin1   NNF)r   r   r   r'   r   r   VERSREr(   r0   r`   groupr   build
startswith	partitionschemer-   encoder   r1   r9   )r{   r   r   r>   r?   r@   match	version_orH   	path_part_hash_separatorurl_fragment_question_mark_separatorqs_partrB   rC   r  rE   rF   rG   s   &&                  rM   r   HttpRequestParser.parse_messageb  s   Qxw(9:	0$(JJsQJ$?!F'
   ((''   )=%%EKKN 3SQ5HI	Y ))dD9C__S!! 8<~~c7J4I;D;N;Ns;S8I ))$%	C S[Vy0dD)C dD)CzzR%KK'8K9@@J  uRy)	
 =M) 
 	
}  	0%4/	0s   G G4c                &   < V ^8  d   QhRS[ RS[/# r   r   )rK   rL   s   "rM   rN   r4    s     H H H HrP   c                    VP                  R ^R7      R,          P                  R4      pVP                  4       '       d   VP                  4       R8X  d   R# \	        R4      h)r  r7  r  rG   Tz'Request has invalid `Transfer-Encoding`r   )rsplitr   r   r   r&   r   s   &&rM   r    HttpRequestParser._is_chunked_te  sK    YYsQY'+11%8::<<BHHJ)3FGGrP   rQ   N)	rS   rT   rU   rV   __doc__r   r   rX   rY   rZ   s   @rM   r7   r7   Z  s#     N
 N
`H HrP   c                   x   a a ] tR tRt oRt]'       * tR
V3R lV 3R llltV3R lR ltV3R lR lt	R	t
VtV ;t# )r8   i  zRead response status line and headers.

BadStatusLine could be raised in case of any errors in status line.
Returns RawResponseMessage.
c                   < V ^8  d   QhRS[ RS[S[,          RS[RS[RS[S[S[S[S[3,          ,          S[S[ 3,          /# )r=   r   r   argskwargsrv   )	r   r   r   r   r   r	   r:   r3   rJ   )rK   rL   s   "rM   rN   HttpResponseParser.__annotate__  s]     	= 	=	= d^	= 		=
 	= 
tE,l:;<dEI	J	=rP   c                T   < Vf   \         '       d   RMRp\        SV `  ! W.VO5/ VB # )Nr   r   )r    superr  )r{   r   r   r]  r^  	__class__s   &&&*,rM   r  HttpResponseParser.feed_data  s/     ;"U'Cw <T<V<<rP   c                6   < V ^8  d   QhRS[ S[,          RS[/# r   )r	   r   r:   )rK   rL   s   "rM   rN   r_    s      8
 8
4; 8
3E 8
rP   c                   V^ ,          P                  RR4      p VP                  ^R7      w  r4 TP                  ^R7      w  rE\
        P                  T4      pTf   \        T4      h\        \        TP                  ^4      4      \        TP                  ^4      4      4      p\        T4      ^8w  g   \        P                  T4      '       g   \        T4      h\        T4      pT P                  TR,          4      w  p	p
ppppTfY   T\        8:  d   RpMJ^dTu;8:  d   ^8  g
   M TR	9   d   RpM/\        P                  T	9   g   \        P                   T	9   d   RpMRp\#        TTTP	                  4       T	T
TTTT4	      #   \         d    \        T4      Rhi ; i  \         d    TP	                  4       pRp ELxi ; i)
r   r   r   r7  Nr   rE  TF>   0     )r   r   r   r(   r   rG  r   r0   r`   rH  r   r   r   r1   r   r   r   r:   )r{   r   r   r@   statusr_   rN  rO  status_irB   rC   r  rE   rF   rG   s   &&             rM   r    HttpResponseParser.parse_message  s   Qxw(9:	0"jj!j4OG	#\\1\5NF   )=%%EKKN 3SQ5HI	 v;!6#3#3F#;#;%%v; uRy)	
 =M)&3&(j*@$$/43I3IW3T !LLN

 
	
U  	0%4/	0
  	\\^FF	s   F F FF=<F=c                &   < V ^8  d   QhRS[ RS[/# r   r   )rK   rL   s   "rM   rN   r_  
  s     P P P PrP   c                v    VP                  R ^R7      R,          P                  R4      P                  4       R8H  # )r  r7  r  rG   r   )rX  r   r   r   s   &&rM   r   !HttpResponseParser._is_chunked_te
  s3    yyqy)"-33E:@@BiOOrP   rQ   ry   )rS   rT   rU   rV   rZ  r    ru   r  r   r   rX   rY   __classcell__)rb  rL   s   @@rM   r8   r8     s:      )C	= 	=8
 8
tP P PrP   c                   n   a  ] tR tRt o RRRRRR^/V 3R lR llltV 3R	 lR
 ltRV 3R lR lltRtV tR# )r   i  Nrr   r   rt   r   c                   < V ^8  d   QhRS[ RS[S[,          RS[RS[S[,          RS[S[,          RS[S[,          RS[RS[R	S[R
S[RS[RS[RS[RR/# )r=   r  r   rG   rE   r^   r>   r   r   ru   r   rr   rt   r   rv   N)r3   r   r`   rJ   rI   r5   )rK   rL   s   "rM   rN   HttpPayloadParser.__annotate__  s     6$ 6$6$ 6$ 	6$
 c]6$ sm6$ 6$ !6$ 6$ 6$ &6$ 6$ 6$ 6$  
!6$rP   c
                  ^ V n         \        P                  V n        \        P
                  V n        ^ V n        RV n        Wn	        Wn
        Wn        Wn        Wn        Wn        . V n        RV n        V'       d'   V'       d   V P                  '       d   \#        W4      pMTpV'       g.   \        P$                  V n        VP'                  4        RV n        MeV'       d   \        P(                  V n        MGVeD   \        P*                  V n        W n         V P                   ^ 8X  d   VP'                  4        RV n        Wn        R# )r   rP   FTN)_lengthrd   rh   _typerj   rk   _chunk_chunk_size_chunk_tailr   rz   r   _max_line_size_max_field_size_max_trailers_trailer_linesr   DeflateBufferre   r   rg   rf   r  )r{   r  r   rG   rE   r^   r>   r   r   ru   r   rr   rt   r   real_payloads   &&&&&&&&&&$$$$ rM   r|   HttpPayloadParser.__init__  s    " //
 33 /	-+-)+-	 +$2G2G2G?L@L #L "#..DJ!!#DI#11DJ#00DJ!L||q %%' 	#rP   c                   < V ^8  d   QhRR/# r=   rv   NrQ   )rK   rL   s   "rM   rN   rq  H  s     
 
$ 
rP   c                $   V P                   \        P                  8X  d   V P                  P	                  4        R# V P                   \        P
                  8X  d   \        R 4      hV P                   \        P                  8X  d   \        R4      hR# )z1Not enough data to satisfy content length header.z2Not enough data to satisfy transfer length header.N)	rt  rd   rh   r  r   rf   r*   rg   r/   r   s   &rM   r   HttpPayloadParser.feed_eofH  so    ::333LL!!#ZZ:222$C  ZZ:333'D  4rP   c          
      H   < V ^8  d   QhRS[ RS[RS[ RS[S[S[ 3,          /# )r=   chunkr   	CHUNK_EXTrv   )r   r   r   rJ   )rK   rL   s   "rM   rN   rq  T  s<     S SS!%S<AS	tU{	SrP   c                    V P                   \        P                  8X  d   V P                  p\	        V4      pWE8  dY   WE,
          V n        V P
                  P                  W4       V P                  ^ 8X  d   V P
                  P                  4        R#  R# ^ V n        V P
                  P                  VRV V4       V P
                  P                  4        RWR 3# V P                   \        P                  8X  Ed   V P                  '       d   V P                  \        P                  8w  g   Q hV P                  pV P                  \        P                  8X  d   V P                  p\	        V P                  4      V8  d%   \!        V P                  R,          R,           V4      hV P                  V,           pRV n	        V'       Ed   V P                  \        P"                  8X  Ed   VP%                  V4      pV^ 8  Ed   VP%                  V^ V4      pV^ 8  d9   VRV p	RWV ;p
9   d(   \'        RV
: 24      p\)        V P
                  V4       VhMVRV p	V P*                  '       d   V	P-                  4       p	\.        P0                  ! \2        V	4      '       g7   \'        VRV P5                  RR	4      4      p\)        V P
                  V4       Vh\7        \9        V	4      ^4      pW\	        V4      ,           R pV^ 8X  dI   \        P                  V n
        V P*                  '       d!   VP;                  R
4      '       d
   VR,          pM>\        P                  V n
        Wn        V P
                  P?                  4        MWn	        R# V P                  \        P                  8X  d   V P<                  p\	        V4      pWE8  d+   WE,
          V n        V P
                  P                  W4       R# ^ V n        V P
                  P                  VRV V4       WR p\        P@                  V n
        V P
                  PC                  4        V P                  \        P@                  8X  d   V P*                  '       d!   VP;                  R
4      '       d
   VR,          pVR\	        V4       V8X  d%   V\	        V4      R p\        P"                  V n
        MV\	        V4      \	        V4      8  g   WR\	        V4       8w  d$   \'        R4      p\)        V P
                  V4       VhWn	        R# V P                  \        P                  8X  g   EK  VP%                  V4      pV^ 8  d	   Wn	        R# VRV pW\	        V4      ,           R pVR8X  d   VPE                  R
4      p\	        V4      V P                  8  d%   \!        VR,          R,           V P                  4      hV PF                  PI                  V4       \	        V PF                  4      V PJ                  8  d   \M        R4      hV PF                  R,          R8X  g   EK{   V PN                  PQ                  V PF                  4      w  rV PF                  PS                  4        V P
                  P                  4        RV3#  R# V P                   \        PT                  8X  d&   V P
                  P                  V\	        V4      4       R#   T PF                  PS                  4        i ; i)r   TrP   Nr   r   r   z"Unexpected LF in chunk-extension: asciir   r   rE  z3Chunk size mismatch: expected CRLF after chunk datazToo many trailers received)TrP   )FrP   r   )+rt  rd   rf   rs  r   r  r  r   rg   rw  ru  rj   rl   rx  ro   ry  r.   rk   r   r/   r%   rz   r   rer   	HEXDIGITSr   r`   r   rJ  rv  begin_http_chunk_receivingrm   end_http_chunk_receivingr   r{  r   rz  r&   r   r   r   rh   )r{   r  r   r  required	chunk_lenr  r  isize_bextexcsizer   trailersraw_trailerss   &&&&            rM   r  HttpPayloadParser.feed_dataT  s    ::000||HE
I$'3&&u8<<1$LL))+$$ %P I  !&&uYh'7B%%'U9--- ZZ:333{{j&D&DDDD"&"5"5;;*";";;&*&:&:Ot''(?:%d&6&6t&<v&EWW((50#& % ;;*"?"??**S/Cax!JJy!S96%*2AYF$)<=&;&H$P'" !.dllC @&)	  > &+4C[F999%+\\^F!||Iv>>"7 %ds 2 27<M N#C *$,,<"%I"5="5 %CHn&6 719*4*C*CDK#yyyU-=-=e-D-D(-b	*4*H*HDK/3, LLCCE+0()) ;;*"@"@@#//H #E
I++3+?(..u@))+,(..uYh/?J %i 0&0&H&H==? ;;*"D"DDyyyU%5%5e%<%< %b	Zs3x(C/ %c#hj 1&0&C&CUs3x/5#e*<M3M3Q &dllC8!	+0());;*";";;**S/CQw+0()) #;D!C."23Ee|#{{514y4#7#77)$t*v*=t?S?STT''..t44../$2D2DD,-IJJ **2.#58595I5I5W5W $ 3 362H !//557--/#U{*U `  ZZ:555LL""5#e*5 !//557s   9'[! ![=)r   ru  rv  rw  r   rz   rs  ry  rx  rz  r{  rt  r   r  )NFNNNTTF)r      ;)	rS   rT   rU   rV   r|   r   r  rX   rY   rZ   s   @rM   r   r     sJ     6$ "6$ #6$  6$ 6$p
 
S S SrP   r   c                      a  ] tR tRt o Rt]3V 3R lR llt]3V 3R lR lltV 3R lR lt	V 3R	 lR
 lt
V 3R lR ltV 3R lR ltV 3R ltRtV tR# )r|  i  zDDeflateStream decompress stream and feed data into specified stream.c                @   < V ^8  d   QhRS[ RS[S[,          RS[RR/# )r=   outr"  max_decompress_sizerv   N)r3   r   rI   r`   )rK   rL   s   "rM   rN   DeflateBuffer.__annotate__  s7     8 88 3-8 !	8
 
8rP   c                F   Wn         ^ V n        V P                  Vn        W n        RV n        V  VR8X  d(   \
        '       g   \        R4      h\        4       V n        M?VR8X  d(   \        '       g   \        R4      h\        4       V n        M\        VR7      V n        W0n        R# )r   Fr  zECan not decode content-encoding: brotli (br). Please install `Brotli`r  zRCan not decode content-encoding: zstandard (zstd). Please install `backports.zstd`)r"  N)r  r  total_compressed_bytesr"  _started_decodingr   r)   r   decompressorr   r   r   _max_decompress_size)r{   r  r"  r  s   &&&&rM   r|   DeflateBuffer.__init__  s     	%)YY" !&t:*.  !3 4D8*6  !1 2D 0( CD$7!rP   c                *   < V ^8  d   QhRS[ RS[ RR/# )r=   r  	exc_causerv   N)r   )rK   rL   s   "rM   rN   r    s)     0 00 !0 
	0rP   c                2    \        V P                  W4       R # ry   )r%   r  )r{   r  r  s   &&&rM   r%   DeflateBuffer.set_exception  s    
 	dhh/rP   c                *   < V ^8  d   QhRS[ RS[RR/# )r=   r  r  rv   N)r   r`   )rK   rL   s   "rM   rN   r    s"     )2 )2u )2C )2D )2rP   c                   V'       g   R # V ;P                   V,          un         V P                   V P                  n        V P                  '       gC   V P                  R8X  d2   V^ ,          ^,          ^8w  d   \        V P                  RR7      V n         V P                  P                  WP                  ^,           R7      pRT n        \        T4      T P                  8  d   \        RT P                  ,          4      hT'       d(   T P                  P                  T\        T4      4       R # R #   \         d    \        RT P                  ,          4      hi ; i)Nr  T)r"  suppress_deflate_header)
max_lengthz#Can not decode content-encoding: %sz:Decompressed data exceeds the configured limit of %d bytes)r  r  r  r  r"  r   r  decompress_syncr  r   r)   r   r+   r  )r{   r  r  s   &&&rM   r  DeflateBuffer.feed_data  s   		T	*.))' &&&*a3!# !1!D	%%55";";a"? 6 E "& u:111%L++, 
 HHuc%j1   	&5E 	s   -D/ /(Ec                   < V ^8  d   QhRR/# r  rQ   )rK   rL   s   "rM   rN   r  A  s      $ rP   c                Z   V P                   P                  4       pV'       g   V P                  ^ 8  d^   V P                  P	                  V\        V4      4       V P                  R8X  d(   V P                   P                  '       g   \        R4      hV P                  P                  4        R# )r   r  N)
r  flushr  r  r  r   r"  r  r)   r   )r{   r  s   & rM   r   DeflateBuffer.feed_eofA  ss    !!'')DIIMHHuc%j1}}	)$2C2C2G2G2G*955rP   c                   < V ^8  d   QhRR/# r  rQ   )rK   rL   s   "rM   rN   r  K  s     . .D .rP   c                :    V P                   P                  4        R # ry   )r  r  r   s   &rM   r  (DeflateBuffer.begin_http_chunk_receivingK  s    ++-rP   c                   < V ^8  d   QhRR/# r  rQ   )rK   rL   s   "rM   rN   r  N  s     , ,$ ,rP   c                :    V P                   P                  4        R # ry   )r  r  r   s   &rM   r  &DeflateBuffer.end_http_chunk_receivingN  s    ))+rP   c                &   < V ^8  d   Qh/ S[ ;R&   # )r=   r  )r   )rK   rL   s   "rM   rN   r    s       rP   )r  r  r  r"  r  r  N)rS   rT   rU   rV   rZ  r   r|   r   r%   r  r   r  r  rW   rX   rY   rZ   s   @rM   r|  r|    sX     N $?	8 8F $10 0)2 )2V . ., ,I  rP   r|  )r7   r8   r9   r:   c                   V ^8  d   Qh/ ^ \         9   d    \        \        \        ,          ,          ;R&   ^\         9   d   \        \        ,          ;R&   ^\         9   d    \        \        \        ,          ,          ;R&   ^\         9   d    \        \        \        ,          ,          ;R&   ^\         9   d    \        \        \        ,          ,          ;R&   ^\         9   d    \        \        \        ,          ,          ;R&   ^\         9   d    \        \        \
        ,          ,          ;R&   ^\         9   d    \        \        \        ,          ,          ;R&   # )	r=   ASCIISET_TCHAR_SPECIALSr   r   rG  r   r  r   )__conditional_annotations__r   r   rI   r   r   	frozenset)rK   s   "rM   rN   rN      s    

P 2 1%C/ 1Q b ; :s :c d L Kws|	 Ke h uWS\2 i n G Fgcl Fo p ; :gcl :q r @ ?5  ?s @ 53( A rP   )r5   r6   r7   r8   r9   r:   )r   r   >
   etaghostserver
user-agentcontent-typemax-forwardscontent-rangecontent-lengthcontent-locationtransfer-encoding)lr  r0  r   r  string
contextlibr   enumr   typingr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   	multidictr   r   r   yarlr   r   r   base_protocolr   compression_utilsr   r   r   r   r   r   helpersr   r    r!   r"   r#   r$   r%   http_exceptionsr&   r'   r(   r)   r*   r+   r,   r-   r.   r/   http_writerr0   r1   streamsr2   r3   typedefsr4   __all__r   set	printabler  escaper  compiler   r   ASCIIrG  r   r  r  r   r9   r:   rb   rd   rj   r5   r   ABCr6   r7   r8   r   r|  HttpRequestParserPyHttpResponseParserPyRawRequestMessagePyRawResponseMessagePy_http_parserHttpRequestParserCHttpResponseParserCRawRequestMessageCRawResponseMessageCImportErrorrN   )r  s   @rM   <module>r     sL   

  	      " : 9   '      4 0   ~ 0 01 1 !ii(9: :!zzJ6Gr*JK K57ZZ6   !jj);RXXF F jj: :#%::.>#?	 ? ,5,   

 
	 	 	*,>?  Y? Y?x=W'%. Wt
^H
#45 ^HBQP$67 QPhX Xve, e,P ( ) ' ) 		
 	
 /0.0   		s    I  (I   I
I