+
     h]  c                  sF   ^ 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t^RIHt ^RIHtHtHt ^RIHtHtHt ^RIHtHtHt ^RIHt ^RIHt ]P>                  ! R	4      t R
 R lt! ! R R]PD                  4      t# ! R R]4      t$ ! R R4      t%R# )i    )annotationsN)AsyncNetworkStream)ConnectionNotAvailableLocalProtocolErrorRemoteProtocolError)OriginRequestResponse)	AsyncLockAsyncSemaphoreAsyncShieldCancellation)Trace)AsyncConnectionInterfacezhttpcore.http2c                    V ^8  d   QhRRRR/# )   requestr   returnbool Zformat   ":/usr/lib/python3.14/site-packages/httpcore/_async/http2.py__annotate__r      s      g $     c                s    \         ;QJ d&    R  V P                   4       F  '       g   K   R# 	  R# ! R  V P                   4       4      # )c              3  s   "   T F5  w  rVP                  4       R 8H  ;'       g    VP                  4       R8H  x  K7  	  R# 5i)s   content-length   transfer-encodingN)lower)Z.0kv   &  r   Z	<genexpr>Z#has_body_headers.<locals>.<genexpr>   s<      #DA 	
	&&KK!'')7K*KK#s    ??TF)Zanyheaders)r      &r   has_body_headersr      sE    3 OO33 3 3 OO  r   c                  s"    ] tR t^$t^t^t^tRtR# )HTTPConnectionStater   N)__name__
__module____qualname____firstlineno__ACTIVEIDLECLOSED__static_attributes__r   r   r   r    r    $   s    FDFr   r    c                  s   ] tR t^*tR9t]P                  P                  RR7      tR:R R llt	R R lt
R R	 ltR
 R ltR R ltR R ltR R ltR R ltR R ltR R ltR:R R lltR R ltR R ltR R ltR  R! ltR" R# ltR$ R% ltR& R' ltR( R) ltR* R+ ltR, R- ltR. R/ ltR0 R1 ltR2 R3 lt R4 R5 lt!R;R6 R7 llt"R8t#R# )<AsyncHTTP2ConnectionF)Zvalidate_inbound_headersNc               $    V ^8  d   QhRRRRRR/# )r   originr   streamr   keepalive_expiryzfloat | Noner   r   r   r   r   !AsyncHTTP2Connection.__annotate__.   s(     %7 %7%7 #%7 '	%7r   c                	s   Wn         W n        W0n        \        P                  P                  V P                  R 7      V n        \        P                  V n
        RV n        ^ V n        \        4       V n        \        4       V n        \        4       V n        \        4       V n        RV n        RV n        RV n        / V n        RV n        RV n        RV n        R# ))configNF)_origin_network_stream_keepalive_expiryh2
connectionZH2ConnectionCONFIG	_h2_stater    r&   _state
_expire_at_request_countr   
_init_lock_state_lock
_read_lock_write_lock_sent_connection_init_used_all_stream_ids_connection_error_events_connection_terminated_read_exception_write_exception)selfr+   r,   r-      &&&&r   __init__ZAsyncHTTP2Connection.__init__.   s     %/?334;;3G)..(,#+$;#+$;%*"$)!!&  	 NR#1526r   c               r   )r   r   r   r   r   r   r   r   r   r   r.   U   s     f f' fh fr   c                	s.  "   V P                  VP                  P                  4      '       g0   \        R VP                  P                   RV P                   24      hV P
                  ;_uu_4       GRj  xL
  V P                  \        P                  \        P                  39   d7   V ;P                  ^,          un
        RV n        \        P                  V n        M
\        4       hRRR4      GRj  xL
  V P                  ;_uu_4       GRj  xL
  V P                  '       g    RV/p\        R\         W4      ;_uu_4       GRj  xL
  V P"                  ! R/ VB G Rj  xL
  RRR4      GRj  xL
  RT n        ^T n        T P,                  P.                  P0                  p\3        T4      T n        \7        Y@P*                  ,
          4       F%  pT P4                  P9                  4       G Rj  xL
  K'  	  RRR4      GRj  xL
  V P4                  P9                  4       G Rj  xL
   V P,                  P;                  4       p. V P<                  V&    RTRT/p\        R\         Y4      ;_uu_4       GRj  xL
  T PG                  YR7      G Rj  xL
  RRR4      GRj  xL
  \        R	\         Y4      ;_uu_4       GRj  xL
  T PI                  YR7      G Rj  xL
  RRR4      GRj  xL
  \        R
\         Y4      ;_uu_4       GRj  xL
 pT PK                  YR7      G Rj  xL
 w  rY3Tn&        RRR4      GRj  xL
  \O        X	X
\Q        YTR7      RRRT PR                  RT/R7      #  EL EL  + GRj  xL 
 '       g   i     EL; i EL ELR EL; EL.  + GRj  xL 
 '       g   i     ELF; i  \$         dP   p\'        4       ;_uu_ 4        T P)                  4       G Rj  xL 
  RRR4       Th  + '       g   i     Th; iRp?ii ; i EL- EL  + GRj  xL 
 '       g   i     EL4; i EL  \>        P@                  PB                   d,    RT n"        T ;P                  ^,          un
        \        4       hi ; i EL EL  EL  + GRj  xL 
 '       g   i     EL; i EL EL EL  + GRj  xL 
 '       g   i     EL; i EL EL EL  + GRj  xL 
 '       g   i     EL; i  \$         Ed   p\'        4       ;_uu_ 4        RT/p\        R\         Y4      ;_uu_4       GRj  xL 
  T PU                  TR7      G Rj  xL 
  RRR4      GRj  xL 
  M  + GRj  xL 
 '       g   i     M; iRRR4       M  + '       g   i     M; i\W        T\>        P@                  PX                  4      '       d3   T PZ                  '       d   \]        T PZ                  4      h\_        T4      hThRp?ii ; i5i)zAttempted to send request to z on connection to Nr   Zsend_connection_initT	stream_idZsend_request_headersr   rH   Zsend_request_bodyZreceive_response_headersrH   Zhttp_versions   HTTP/2Znetwork_stream)statusr   Zcontent
extensionsresponse_closedr   )0can_handle_requesturlr+   ZRuntimeErrorr0   r;   r7   r    r%   r&   r9   r8   r   r:   r>   r   logger_send_connection_initBaseExceptionr
   aclose_max_streamsr6   local_settingsmax_concurrent_streamsr	   _max_streams_semaphoreZrangeacquireZget_next_available_stream_idrA   r3   Z
exceptionsZNoAvailableStreamIDErrorr?   _send_request_headers_send_request_body_receive_responsereturn_valuer   HTTP2ConnectionByteStreamr1   _response_closed
isinstanceZProtocolErrorrB   r   r   )rE   r   Z
sci_kwargsexcZlocal_settings_max_streamsZ_rH   kwargstracerK   r   s   &&         r   handle_async_requestZ)AsyncHTTP2Connection.handle_async_requestU   s    &&w{{'9'9::
 /0B0B/C Dll^% 
 ####{{299;N;S;STT##q(#"&188,.. $# ????---	"+W!5J$.      #88F:FFF    .2* %&! NN11HH + /==W.X+9<M<MMNA55==??? O1 #?6 ))11333	+CCEI&(DLL#.	+yAF3VWMMM000VVV NM0&'JJJ--g-SSS KJ*FG  (,(>(># )? ) # '-%6"  1$9U"I$d&:&:		 	w $### #  G        % 022"kkm++ 3I 32I" @3 #???6 	4
 }}55 	+(,D%1$(**	+ NV NMMMJS KJJJ#   $  	(**%y1 !2FGLLL//)/DDD MLLLLL +***
 #r}}::;; ...-d.I.IJJ )--I-	s  A3X5M66X9A0M<)X4M95XNXP%)!O
NON%	$N%N%	)O4N"5O9A9P%2P
3P%;XP"!X(Q)X.)Q #T ;R<T ?RRRT %R&!T R8T S!R;"S&T 1R>2!T ST S'-S!.S'<T S$-T 5X9X<N	N
N	N	
XON%	"O%N?+N.,
N?7N?9O=P%?OPPP3O64P9
PP	PPP%"X%P?	+P.,
P?	7P?	9
XA
RXT RT R5	!R$"
R5	-R5	/
T ;S>T S	S

S	S	
T !S'$T 'T	-S0.
T	9T	;	T XX""VUV	U7U" U7%V0U3
1V7V=V >
V	VV	XV,'AX+"XXXc               r   r   r   r   r   Noner   r   r   r   r   r.      s     1 17 1t 1r   c           	     sX  "   \         P                  P                  R\         P                  P                  P                  ^ \         P                  P                  P
                  ^d\         P                  P                  P                  R/R7      V P                  n        V P                  P                  \         P                  P                  P                   V P                  P                  4        V P                  P                  R4       V P                  V4      G Rj  xL
  R#  L5i)zx
The HTTP/2 connection requires some initial setup before we can start
using individual request/response streams on it.
T   )ZclientZinitial_valuesN   )r3   settingsZSettingsSettingCodesZENABLE_PUSHMAX_CONCURRENT_STREAMSZMAX_HEADER_LIST_SIZEr6   rU   ZENABLE_CONNECT_PROTOCOLZinitiate_connectionincrement_flow_control_window_write_outgoing_data)rE   r      &&r   rQ   Z*AsyncHTTP2Connection._send_connection_init   s      )+(<(< ((44a((??((==u )= 
)
% NN))KK$$<<
 	**,44U;''000s   DD*!D("D*c               r*   r   r   r   rH   intr   re   r   r   r   r   r   r.      s!     1 17 1s 1t 1r   c                s  "   \        V4      '       * pVP                   UUu. uF  w  rEVP                  4       R8X  g   K  VNK   	  upp^ ,          pRVP                  3RV3RVP                  P
                  3RVP                  P                  3.VP                   UUu. uF.  w  rEVP                  4       R	9  g   K  VP                  4       V3NK0  	  upp,           pV P                  P                  W'VR7       V P                  P                  R
VR7       V P                  V4      G Rj  xL
  R# u uppi u uppi  L5i)z0
Send the request headers to a given stream ID.
   hosts   :methods
   :authoritys   :schemes   :path)
end_streamrJ   N)rp   r   rg   )r   r   r   ZmethodrO   ZschemeZtargetr6   Zsend_headersrk   rl   )rE   r   rH   rq   r   r   Z	authorityr      &&&     r   rY   Z*AsyncHTTP2Connection._send_request_headers   s      *'22
 $+??K?41aggi76JQQ?KAN	 (I&++,w{{))*	
  
'wwy QWWYN'

 	##I:#N44Ui4P''000' L
 	1s6    E D2 D2AE D8=D8AE +D>,E c               r*   rn   r   r   r   r   r   r.      s!     
8 
8 
8C 
8D 
8r   c                s   "   \        V4      '       g   R# VP                    Rj  xL
  pV P                  WV4      G Rj  xL
  K&   L! LD$T P                  Y4      G Rj  xL 
  R# 5i)z@
Iterate over the request body sending it to a given stream ID.
N)r   r,   _send_stream_data_send_end_stream)rE   r   rH   data   &&& r   rZ   Z'AsyncHTTP2Connection._send_request_body   sd       (( ".. 	C 	C$((TBBB	CB )##G777sC    A)AAAA)A
A)A
A)A)!A$"A)c               (    V ^8  d   QhRRRRRRRR/# )	r   r   r   rH   ro   ru   Zbytesr   re   r   r   r   r   r   r.   	  s,     5 55+.56;5	5r   c                s   "   V'       dm   V P                  W4      G Rj  xL
 p\        \        V4      V4      pVRV W5R r6V P                  P	                  W&4       V P                  V4      G Rj  xL
  Kt  R#  LY L
5i)z9
Send a single chunk of data in one or more data frames.
N)_wait_for_outgoing_flowminZlenr6   Z	send_datarl   )rE   r   rH   ru   Zmax_flowZ
chunk_sizechunks   &&&&   r   rs   Z&AsyncHTTP2Connection._send_stream_data	  ss      !99'MMHSY1J{
+T+->4NN$$Y6++G444 M 5s'   A=A=A9AA=0A;1	A=;A=c               r*   rn   r   r   r   r   r   r.     s!     1 1g 1# 1$ 1r   c                sz   "   V P                   P                  V4       V P                  V4      G Rj  xL
  R#  L5i)zP
Send an empty data frame on on a given stream ID with the END_STREAM flag set.
N)r6   rq   rl   )rE   r   rH   s   &&&r   rt   Z%AsyncHTTP2Connection._send_end_stream  s-      	!!),''000s   0;9;c               r*   )r   r   r   rH   ro   r   z%tuple[int, list[tuple[bytes, bytes]]]r   r   r   r   r   r.     s$     & &&+.&	.&r   c                st  "    V P                  W4      G Rj  xL
 p\        V\        P                  P                  4      '       g   KF   ^p. pTP
                   FU  w  rgTR8X  d   \        TP                  RRR7      4      pK*  TP                  R4      '       d   KC  TP                  Yg34       KW  	  YE3#  L5i)zD
Return the response status code and headers for a given stream ID.
Ns   :statusZasciiZignore)Zerrorss   :)
_receive_stream_eventr_   r3   eventsResponseReceivedr   ro   ZdecodeZ
startswithappend)rE   r   rH   eventZstatus_coder   r   r   rr   r   r[   Z&AsyncHTTP2Connection._receive_response  s      44WHHE%!;!;<<MMDAJ!!((78("DE\\$''v&	 " %% Is   B8B6+B8	AB8B8c               r*   )r   r   r   rH   ro   r   typing.AsyncIterator[bytes]r   r   r   r   r   r.   5  s$      +.	$r   c               s  "    V P                  W4      G Rj  xL
 p\        V\        P                  P                  4      '       dR   VP
                  pV P                  P                  WB4       V P                  V4      G Rj  xL
  VP                  5x  K  \        V\        P                  P                  4      '       g   K  R#  L LE5i)zM
Iterator that returns the bytes of the response body for a given stream ID.
N)r{   r_   r3   r|   DataReceivedZflow_controlled_lengthr6   Zacknowledge_received_datarl   ru   StreamEnded)rE   r   rH   r   Zamounts   &&&  r   _receive_response_bodyZ+AsyncHTTP2Connection._receive_response_body5  s      44WHHE%!7!788 5588K//888jj E299#8#899 I 9s(   C
CA)C
C<C
C
C
c               r*   )r   r   r   rH   ro   r   zKh2.events.ResponseReceived | h2.events.DataReceived | h2.events.StreamEndedr   r   r   r   r   r.   G  s$      +.	Tr   c                s8  "   V P                   P                  V4      '       g   V P                  W4      G Rj  xL
  K<  V P                   V,          P                  ^ 4      p\	        V\
        P                  P                  4      '       d   \        V4      hV#  L_5i)zk
Return the next available event for a given stream ID.

Will read more data from the network if required.
N)	rA   get_receive_eventsZpopr_   r3   r|   StreamResetr   )rE   r   rH   r   rv   r   r{   Z*AsyncHTTP2Connection._receive_stream_eventG  su      ,,""9--&&w:::Y'++A.eRYY2233%e,,	 ;s   !BBBA Bc               r*   )r   r   r   rH   z
int | Noner   re   r   r   r   r   r   r.   V  s$     .1 .1.1+5.1	.1r   c                s  "   V P                   ;_uu_4       GRj  xL
  V P                  ee   V P                  P                  pV'       d2   V'       d*   W#8  d$   V ;P                  ^,          un        \	        4       h\        V P                  4      hVe#   V P                  P                  V4      '       Eg   V P                  V4      G Rj  xL
 pV EFw  p\        V\        P                  P                  4      '       dT   \        R\        V4      ;_uu_4       GRj  xL
 pV P                  V4      G Rj  xL
  WVn        RRR4      GRj  xL
  K  \        V\        P                  P"                  \        P                  P$                  \        P                  P&                  \        P                  P(                  34      '       dN   VP*                  V P                  9   d0   V P                  VP*                  ,          P-                  V4       EKA  EKD  \        V\        P                  P.                  4      '       g   EKq  WPn        EKz  	  RRR4      GRj  xL
  V P1                  V4      G Rj  xL
  R#  EL_ EL ELb ELL EL9  + GRj  xL 
 '       g   i     EK  ; i LL  + GRj  xL 
 '       g   i     Lc; i LQ5i)zX
Read some data from the network until we see one or more events
for a given stream ID.
NZreceive_remote_settings)r<   rB   last_stream_idr9   r   r   rA   r   _read_incoming_datar_   r3   r|   ZRemoteSettingsChangedr   rP   _receive_remote_settings_changer\   r}   r   r   r   rH   r~   ZConnectionTerminatedrl   )rE   r   rH   r   r|   r   rb   s   &&&    r   r   Z$AsyncHTTP2Connection._receive_eventsV  s     ????**6!%!<!<!K!KI4N''1,'022)$*E*EFF  (8(8(C(C#77@@#E!%)H)HII#(5vw$ $ $""&"F"Fu"MMM16.	$ $ $ $II66II22II11II11	  !??dll: LL9@@G ; $E299+I+IJJ6;3+ $! #?N ''000O # A$ N$ $ $ $% #???N 	1s   KI:K,J)J)A#J)8J)I=AJ)J J)"J	7J8
J	J)J
C0J)J)KJ'K3K4K=J) J)J	J)	J$J
J$J$
J)'K)K	/J20
K	;K	=	Kc               r   )r   r   zh2.events.RemoteSettingsChangedr   re   r   r   r   r   r   r.     s     + +4+	+r   c                	sx  "   VP                   P                  \        P                  P                  P
                  4      pV'       d   \        VP                  V P                  P                  P                  4      pV'       d   W0P                  8w  d   W0P                  8  d>   V P                  P                  4       G R j  xL
  V ;P                  ^,          un        KM  W0P                  8  d>   V P                  P                  4       G R j  xL
  V ;P                  ^,          un        KM  R # R # R # R #  Lt L)5iN)Zchanged_settingsr   r3   rh   ri   rj   ry   Z	new_valuer6   rU   rV   rT   rW   releaserX   )rE   r   rV   Znew_max_streamss   &&  r   r   Z4AsyncHTTP2Connection._receive_remote_settings_change  s      "'!7!7!;!;KK$$;;"
 "!&00--DDO ?6G6G#G%(9(9955==???%%*%%(9(9955==???%%*% :	 $H " @ @s%   B?D:D6AD:D8(D:8D:c               r   )r   rH   ro   r   re   r   r   r   r   r   r.     s     ( ( ( (r   c                	s  "   V P                   P                  4       G R j  xL
  V P                  V V P                  ;_uu_4       GR j  xL
  V P                  '       d,   V P                  '       g   V P                  4       G R j  xL
  MV P                  \        P                  8X  d   V P                  '       gz   \        P                  V n        V P                  e-   \        P                  ! 4       pW P                  ,           V n        V P                  '       d   V P                  4       G R j  xL
  R R R 4      GR j  xL
  R #  EL( EL L L L  + GR j  xL 
 '       g   i     R # ; i5ir   )rW   r   rA   r;   rB   rS   r7   r    r%   r&   r2   time	monotonicr8   r?   )rE   rH   nows   && r   r^   Z%AsyncHTTP2Connection._response_closed  s     ))11333LL#####***4<<<kkm## 3 : ::4<<<166))5..*C&),B,B&BDO,,,++-'' $## 	4## ( $###s   E1E)E1
EE1$E3EE5E=A EE1E2E6E1EE1E1EEE1E.	E
E.	&E.	(	E1c                   V ^8  d   QhRR/# r   r   re   r   r   r   r   r   r.     s     , ,d ,r   c                	s   "   V P                   P                  4        \        P                  V n        V P
                  P                  4       G R j  xL
  R #  L5ir   )r6   Zclose_connectionr    r'   r7   r1   rS   rE   r   r   rS   ZAsyncHTTP2Connection.aclose  s<      	''))00""))+++s   AAAAc               r   )r   r   r   r   zlist[h2.events.Event]r   r   r   r   r   r.     s       =R r   c                	s  "   VP                   P                  R / 4      pVP                  RR4      pV P                  e   V P                  h V P                  P	                  V P
                  V4      G Rj  xL
 pVR8X  d   \        R4      h T P                  P                  T4      pT#  L4  \         d   pYPn        RT n        ThRp?ii ; i5i)timeoutreadNr   zServer disconnectedT)rL   r   rC   r1   r   READ_NUM_BYTESr   	Exceptionr@   r6   Zreceive_data)rE   r   timeoutsr   ru   r`   r|   s   &&     r   r   Z(AsyncHTTP2Connection._read_incoming_data  s     %%)))R8,,vt,+&&&	--2243F3FPPDs{)*?@@  )-(C(CD(I% Q  	 $' %)D"I	s<   A	C)B, 5B*6B, C*B, ,C7CCCc               r   rd   r   r   r   r   r   r.     s      ' d r   c                	s  "   VP                   P                  R / 4      pVP                  RR4      pV P                  ;_uu_4       GRj  xL
  V P                  P	                  4       pV P
                  e   V P
                  h V P                  P                  WC4      G Rj  xL
  RRR4      GRj  xL
  R#  Ln L  \         d   pYPn        RT n	        ThRp?ii ; i L,  + GRj  xL 
 '       g   i     R# ; i5i)r   writeNT)
rL   r   r=   r6   data_to_sendrD   r1   r   r   r@   )rE   r   r   r   r   r`   s   &&    r   rl   Z)AsyncHTTP2Connection._write_outgoing_data  s     %%)))R8,,w-####>>668L$$0+++**00GGG $## H  ),%)-&	 $###s~   AC=	B8
C=5C B<!B:"B<&C=1C2C=:B<<CCCC C= C:	&C)'
C:	2C:	4	C=c               s$    V ^8  d   QhRRRRRR/# )r   r   r   rH   ro   r   r   r   r   r   r   r.     s"      W  QT r   c                sF  "   V P                   P                  V4      pV P                   P                  p\        W44      pV^ 8X  dX   V P	                  V4      G Rj  xL
  V P                   P                  V4      pV P                   P                  p\        W44      pK^  V#  LD5i)z
Returns the maximum allowable outgoing flow for a given stream.

If the allowable flow is zero, then waits on the network until
WindowUpdated frames have increased the flow rate.
https://tools.ietf.org/html/rfc7540#section-6.9
N)r6   Zlocal_flow_control_windowZmax_outbound_frame_sizery   r   )rE   r   rH   Z
local_flowZmax_frame_sizeZflows   &&&   r   rx   Z,AsyncHTTP2Connection._wait_for_outgoing_flow  s      ..BB9M
"nnDD:.ai&&w///AA)LJ!^^CCNz2D	 0s   AB!BAB!c               r   )r   r+   r   r   r   r   r   r   r   r   r.     s     & & &D &r   c                	s    WP                   8H  # r   )r0   rE   r+   rm   r   rN   Z'AsyncHTTP2Connection.can_handle_request  s    %%r   c               r   r   r   r   r   r   r   r   r   r.     s     	
 	
d 	
r   c                	s>   V P                   \        P                  8g  ;'       dz    V P                  '       * ;'       da    V P                  '       * ;'       dH    V P
                  P                  P                  \        P                  P                  P                   8X  * # r   )r7   r    r'   r@   r?   r6   Zstate_machineZstater3   r4   ZConnectionStater   r   r   is_availableZ!AsyncHTTP2Connection.is_available  s    KK.555  *** ---  ,,22==00778		
r   c               r   r   r   r   r   r   r   r.   
  s     E ET Er   c                	st    \         P                  ! 4       pV P                  R J;'       d    WP                  8  # r   )r   r   r8   )rE   r      & r   has_expiredZ AsyncHTTP2Connection.has_expired
  s,    nnd*DDs__/DDr   c               r   r   r   r   r   r   r   r.     s     7 7 7r   c                	<    V P                   \        P                  8H  # r   )r7   r    r&   r   r   r   is_idleZAsyncHTTP2Connection.is_idle  s    {{16666r   c               r   r   r   r   r   r   r   r.     s     9 94 9r   c                	r   r   )r7   r    r'   r   r   r   	is_closedZAsyncHTTP2Connection.is_closed  s    {{18888r   c               r   r   r   strr   r   r   r   r   r.     s     
 
c 
r   c                	s~    \        V P                  4      pV: R V P                  P                   RV P                   2# )z
, HTTP/2, , Request Count: )r   r0   r7   namer9   r   r   r   infoZAsyncHTTP2Connection.info  sA    T\\"j
4;;#3#3"4 5"1124	
r   c               r   r   r   r   r   r   r   r.     s     
 
# 
r   c           	     	s    V P                   P                  p\        V P                  4      pR V RV: RV P                  P
                   RV P                   R2	# )Z<z [z, r   z]>)Z	__class__r!   r   r0   r7   r   r9   )rE   Z
class_namer+   r   r   __repr__ZAsyncHTTP2Connection.__repr__  sZ    ^^,,
T\\"
|2fZr$++*:*:); <"112"6	
r   c               r   )r   r   r)   r   r   r   r   r   r.   &  s      "6 r   c                	s   "   V # 5ir   r   r   r   r   
__aenter__ZAsyncHTTP2Connection.__aenter__&  s
     s   c               rw   )	r   exc_typeztype[BaseException] | None	exc_valuezBaseException | None	tracebackztypes.TracebackType | Noner   re   r   r   r   r   r   r.   )  s2      , ( .	
 
r   c                	sB   "   V P                  4       G R j  xL
  R #  L5ir   )rS   )rE   r   r   r   rF   r   	__aexit__ZAsyncHTTP2Connection.__aexit__)  s      kkms   )r@   rB   rA   r8   r6   r:   r2   rT   rW   r1   r0   rC   r<   r9   r>   r7   r;   r?   rD   r=   rf   r   )NNN)$r!   r"   r#   r$   r   r3   r/   ZH2Configurationr5   rG   rc   rQ   rY   rZ   rs   rt   r[   r   r{   r   r   r^   rS   r   rl   rx   rN   r   r   r   r   r   r   r   r   r(   r   r   r   r)   r)   *   s    NYY&&&FF%7NfP1B1>
851&,$.1`+&(,86(&	
E79

 r   r)   c                  s:    ] tR tRtR R ltR R ltR R ltRtR	# )
r]   i2  c               rw   )	r   r4   r)   r   r   rH   ro   r   re   r   r   r   r   r   &HTTP2ConnectionByteStream.__annotate__3  s,      .9@MP	r   c                	s8    Wn         W n        W0n        R V n        R# )FN)_connection_request
_stream_id_closed)rE   r4   r   rH   rF   r   rG   Z"HTTP2ConnectionByteStream.__init__3  s     &#r   c               r   )r   r   r   r   r   r   r   r   r   ;  s      !< r   c               	sB  "   R V P                   RV P                  /p \        R\        V P                   V4      ;_uu_4       GRj  xL
  V P                  P                  V P                   V P                  R7        Rj  xL
  pV5x  K   LF LDRRR4      GRj  xL 
  R#   + GRj  xL 
 '       g   i     R# ; i  \         dP   p\        4       ;_uu_ 4        T P                  4       G Rj  xL 
  RRR4       Th  + '       g   i     Th; iRp?ii ; i5i)r   rH   Zreceive_response_bodyNrI   )	r   r   r   rP   r   r   rR   r
   rS   )rE   ra   rz   r`   s   &   r   	__aiter__Z#HTTP2ConnectionByteStream.__aiter__;  s     T]]KI	4fdmmVTTT#'#3#3#J#J MMT__ $K $    %  K	 U  $ UTTTTT
  	 )**kkm## +I +*I	s   D(C BC 
2B%<B B
B	B%C BB%C B C #D%B?	+B.,
B?	7B?	9C =D?C DDD3C6
4D9
DD	DDDc               r   r   r   r   r   r   r   r   K  s     S Sd Sr   c                	s|  "   V P                   '       g   R V n         RV P                  /p\        R\        V P                  V4      ;_uu_4       GRj  xL
  V P
                  P                  V P                  R7      G Rj  xL
  RRR4      GRj  xL
  R# R#  LF L L  + GRj  xL 
 '       g   i     R# ; i5i)TrH   rM   NrJ   )r   r   r   rP   r   r   r^   )rE   ra   r   r   rS   Z HTTP2ConnectionByteStream.acloseK  s     |||DL!4??3F.vNNN&&77$//7RRR ONN  OR ONNNs`   AB<BB<*B BBB<B	B<BB<B9	%B(&
B9	1B9	3	B<)r   r   r   r   N)r!   r"   r#   r$   rG   r   rS   r(   r   r   r   r]   r]   2  s     S Sr   r]   )&Z
__future__r    ZenumZloggingr   ZtypesZtypingZ	h2.configr3   Zh2.connectionZ	h2.eventsZh2.exceptionsZh2.settingsZ_backends.baser   Z_exceptionsr   r   r   Z_modelsr   r   r   Z_synchronizationr   r	   r
   Z_tracer   Z
interfacesr   Z	getLoggerrP   r   ZIntEnumr    r)   r]   r   r   r   <module>r      s    "           / 
 0 / Q Q  0			+	,$,, E3 EPS Sr   