+
    XjЗ                   
  a  0 t $ ^ 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HtHtHtHtHtHt ^ RIHt ^ RIHtHt ^ RIHtHtHtHtHtH t H!t!H"t" ^ RIH#t# ^ RI$H%t% ^ R	IH&t&H't' ^ R
I(H)t)H*t* ^ RI+H,t,H-t- ^ RI.H/t/H0t0H1t1 ^ RI2H3t3 ^ RI	H4t4 ^ RI5H6t6 ^ RI7H8t8 ^ RI
H9t9H:t: ^ RIH;t; ^ RI<H=t=H>t> ^ RI?H@t@HAtAHBtBHCtCHDtDHEtEHFtF ^ RIHGtG ^RIHHItIHJtJHKtKHLtLHMtM ^RINHOtOHPtPHQtQ ^RIRHStSHTtTHUtUHVtVHWtWHXtX ^RIYHZtZ ^RI[H\t\ ^RI]H^t_ ^RI]H`ta ^RI]Hbtc ^RI]HdtdHete ^RI]Hftg ^R IhHitj ^R!IhHktk ^R"IMHltlHmtmHntnHotoHptp ^R#IqHrtr ^R$IsHtttHutu ^R%IvHwtw ^R&IxHytyHztz ]A'       d   ^ R'I{H|t| M]}t|]P                  R8  d   ^ R(IHt ^ R)I?HtHt MR^ RIt^ RIt^ RI7t7^ R*IHtHtHtHt ^ R+IHt ^ R)IHtHt  ! R, R-]EP                  4      t ! R. R/4      tR0 R1 ltR2 R3 lt]E! R44      t]E! R5R6R77      t]E! R8R6R97      t]! R:4      t]D! R;4      t]w! R<4      tR=]R<&   R> R? lt]G! 4       tR@]RA&   RB RC ltRD RE lt ! RF RG]j4      ti ! RH RI4      t]G! 4       tRJ]RK&    ! RL RM]MEP6                  4      t]P                  R8  d   ]EP:                  EP<                  tRN]RO&   MRt ! RP RQ]MEP@                  4      t]]R,          ]R,          3,          t ! RR RS];4      t]w! RT4      tRU]RT&   ]w! RV4      tRW]RV&   ])! RXRY7       ! RZ R[]MEPN                  4      4       t])! RXRY7       ! R\ R]]MEPR                  4      4       t])! RXRY7       ! R^ R_]MEPV                  4      4       tR` Ra ltRb Rc lt ! Rd Re]EP\                  4      t ! Rf Rg]EP`                  4      t ! Rh Ri]MEPb                  4      t ! Rj Rk4      t ! Rl Rm]]MEPf                  4      t ! Rn Ro]MP                  4      t ! Rp Rq]MP                  4      t ! Rr Rs]MEPl                  4      t ! Rt Ru]MEPn                  4      t ! Rv Rw]]MEPp                  4      t ! Rx Ry]]MEPr                  4      t]w! Rz4      tR{]R|&   ]w! R}4      tR{]R~&    ! R R]a4      t` ! R R]c4      tb ! R R]g4      tf ! R R]_4      t^]w! R4      tR]R&    ! R R4      t ! R R]L4      t ! R R]MEP~                  4      t ! R R]EP                  EP                  4      t ! R R]l4      t]tR# )    )annotationsN)AbstractEventLoopCancelledError	all_taskscreate_taskcurrent_taskget_running_loopsleep)_run_until_complete_cb)OrderedDictdeque)AsyncGeneratorAsyncIterator	AwaitableCallable
Collection	CoroutineIterableSequence)Future)AbstractContextManager)Contextcopy_context)	dataclassfield)partialwraps)CORO_RUNNINGCORO_SUSPENDEDgetcoroutinestate)IOBase)PathLike)Queue)Signals)AddressFamily
SocketKind)Thread)CodeTypeTracebackType)IOTYPE_CHECKINGAnyLiteral	ParamSpecTypeVarcast)WeakKeyDictionary)CapacityLimiterStatisticsEventStatisticsLockStatisticsTaskInfoabc)claim_worker_threadset_current_async_librarythreadlocals)BrokenResourceErrorBusyResourceErrorClosedResourceErrorEndOfStreamRunFinishedError
WouldBlock)convert_ipv6_sockaddr)create_memory_object_streamCapacityLimiterEventLock)ResourceGuardSemaphoreStatistics	SemaphoreCancelScope)
TaskHandle)AsyncBackendIPSockAddrTypeSocketListenerUDPPacketTypeUNIXDatagramPacketType)StrOrBytesPath)call_for_coroutineget_callable_name)RunVar)MemoryObjectReceiveStreamMemoryObjectSendStream)FileDescriptorLike)Runner)TypeVarTupleUnpack)
coroutinesevents
exceptionstasks)BaseExceptionGroupc                  "    ] tR t^}tRtRtRtRtR# )_Statecreatedinitializedclosed N)__name__
__module____qualname____firstlineno__CREATEDINITIALIZEDCLOSED__static_attributes__rh       t   /Users/wind/Downloads/Coruna-main学习资料A/backend/venv/lib/python3.14/site-packages/anyio/_backends/_asyncio.pyrd   rd   }   s    #rq   rd   c                      ] tR t^tRRRR/R R lltR R ltR R	 ltR
 R ltR R ltRR/R R llt	R R lt
R R ltRtR# )r[   debugNloop_factoryc                    V ^8  d   QhRRRR/# )   rt   bool | Noneru   &Callable[[], AbstractEventLoop] | Nonerh   )formats   "rr   __annotate__Runner.__annotate__   s!     	) 	) 	) A		)rq   c               	    \         P                  V n        Wn        W n        R V n        R V n        ^ V n        RV n        R # )NF)	rd   rm   _state_debug_loop_factory_loop_context_interrupt_count_set_event_loop)selfrt   ru   s   &$$rr   __init__Runner.__init__   s8     !..DKK!-37DJ DM$%D!#(D rq   c                   V ^8  d   QhRR/# )rw   returnr[   rh   )rz   s   "rr   r{   r|      s     	 	v 	rq   c                	&    V P                  4        V # N)
_lazy_initr   s   &rr   	__enter__Runner.__enter__   s    OOKrq   c               (    V ^8  d   QhRRRRRRRR/# 	rw   exc_typetype[BaseException] | Noneexc_valBaseException | Noneexc_tbTracebackType | Noner   Nonerh   )rz   s   "rr   r{   r|      s2     	 	0	 *	 )		
 	rq   c                	&    V P                  4        R # r   )closer   r   r   r   s   &&&&rr   __exit__Runner.__exit__   s     JJLrq   c                   V ^8  d   QhRR/# rw   r   r   rh   )rz   s   "rr   r{   r|      s     	, 	,4 	,rq   c                   V P                   pV P                  \        P                  Jg   Vf   R#  \	        V4       VP                  VP                  4       4       \        VR4      '       d!   VP                  VP                  4       4       MVP                  \        V4      4       V P                  '       d   \        P                  ! R4       VP                  4        RV n         \        P                  V n        R#   T P                  '       d   \        P                  ! R4       TP                  4        RT n         \        P                  T n        i ; i)zShutdown and close event loop.Nshutdown_default_executor)r   r~   rd   rn   _cancel_all_tasksrun_until_completeshutdown_asyncgenshasattrr   _shutdown_default_executorr   r_   set_event_loopr   ro   r   loops   & rr   r   Runner.close   s    ::D{{&"4"44,!$'''(?(?(AB4!<==++D,J,J,LM++,Ft,LM'''))$/

!
$mm	 '''))$/

!
$mms   A6C> >AEc                   V ^8  d   QhRR/# rw   r   r   rh   )rz   s   "rr   r{   r|      s     	 	/ 	rq   c                :    V P                  4        V P                  # )zReturn embedded event loop.)r   r   r   s   &rr   get_loopRunner.get_loop   s    OO::rq   contextc                    V ^8  d   QhRRRR/# )rw   corozCoroutine[T_Retval]r   T_Retvalrh   )rz   s   "rr   r{   r|      s     .	M .	M/ .	MX .	Mrq   c                  \         P                  ! V4      '       g   \        RV: 24      h\        P                  ! 4       e   \        R4      hV P                  4        Vf   V P                  pVP                  V P                  P                  V4      p\        P                  ! 4       \        P                  ! 4       J du   \        P                  ! \        P                   4      \        P"                  J d?   \%        V P&                  VR7      p \        P                  ! \        P                   V4       MRp^ V n         V P                  P+                  V4      Ve^   \        P                  ! \        P                   4      VJ d5   \        P                  ! \        P                   \        P"                  4       # # #   \         d    Rp Li ; i  \,        P.                   d7    T P(                  ^ 8  d$   \1        TRR4      pTe   T! 4       ^ 8X  d   \2        hh i ; i  Te^   \        P                  ! \        P                   4      TJ d5   \        P                  ! \        P                   \        P"                  4       i i i ; i)z/Run a coroutine inside the embedded event loop.za coroutine was expected, got Nz7Runner.run() cannot be called from a running event loop)	main_taskuncancel)r^   iscoroutine
ValueErrorr_   _get_running_loopRuntimeErrorr   r   runr   r   	threadingcurrent_threadmain_threadsignal	getsignalSIGINTdefault_int_handlerr   
_on_sigintr   r   r`   r   getattrKeyboardInterrupt)r   r   r   tasksigint_handlerr   s   &&$   rr   r   
Runner.run   s   ))$// #A$!JKK'')5"M  OO--;;tzz55t<D ((*i.C.C.EE$$V]]3v7Q7QQ!(D!I*MM&--@ "&$%D!Mzz44T: #.((7>IMM&--1K1KL J /' " * &*N	* ,, ((1,&tZ>H+
a// #.((7>IMM&--1K1KL J /s,   %F: >G :G
	G
AHH A#I>c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r|      s     	- 	- 	-rq   c                	J   V P                   \        P                  J d   \        R 4      hV P                   \        P                  J d   R# V P
                  fU   \        P                  ! 4       V n        V P                  '       g(   \        P                  ! V P                  4       RV n	        MV P                  4       V n        V P                  e&   V P                  P                  V P                  4       \        P                  ! 4       V n        \        P                  V n         R# )zRunner is closedNT)r~   rd   ro   r   rn   r   r_   new_event_loopr   r   r   r   	set_debugcontextvarsr   r   r   s   &rr   r   Runner._lazy_init   s    {{fmm+"#566{{f000!!)#224
+++ ))$**5+/D(!//1
{{&

$$T[[1'446DM ,,DKrq   c                    V ^8  d   QhRRRR/# )rw   r   asyncio.Taskr   r   rh   )rz   s   "rr   r{   r|      s     	& 	&| 	& 	&rq   c                	    V ;P                   ^,          un         V P                   ^8X  dE   VP                  4       '       g/   VP                  4        V P                  P	                  R 4       R# \        4       h)   c                     R # r   rh   rh   rq   rr   <lambda>#Runner._on_sigint.<locals>.<lambda>   s    rq   N)r   donecancelr   call_soon_threadsafer   )r   signumframer   s   &&&&rr   r   Runner._on_sigint   sW    !!Q&!$$))..2B2B  "

//=#%%rq   )r   r   r   r   r   r   r~   )ri   rj   rk   rl   r   r   r   r   r   r   r   r   rp   rh   rq   rr   r[   r[      sO    	) "&	) DH		)			,&	
.	MD .	M`	-&	& 	&rq   r[   c                    V ^8  d   QhRRRR/# rw   r   r   r   r   rh   )rz   s   "rr   r{   r{     s       1 d rq   c           	     v   \         P                  ! V 4      pV'       g   R # V F  pVP                  4        K  	  V P                  \         P                  ! VRR/ 4       V FT  pVP                  4       '       d   K  VP                  4       f   K/  V P                  RRRVP                  4       RV/4       KV  	  R # )Nreturn_exceptionsTmessagez1unhandled exception during asyncio.run() shutdown	exceptionr   )ra   r   r   r   gather	cancelledr   call_exception_handler)r   	to_cancelr   s   &  rr   r   r     s    OOD)	DKKM  	i P4 PQD~~~~+++!#V#T^^%5	 rq   c                    V ^8  d   QhRRRR/# r   rh   )rz   s   "rr   r{   r{     s      /@ T rq   c                $  a "   R V 3R llpRS n         S P                  f   R# S P                  4       p\        P                  ! W3R7      pVP                  4         VG Rj  xL
  VP                  4        R#  L  TP                  4        i ; i5i)z.Schedule the shutdown of the default executor.c                    V ^8  d   QhRRRR/# )rw   futurezasyncio.futures.Futurer   r   rh   )rz   s   "rr   r{   0_shutdown_default_executor.<locals>.__annotate__  s     	D 	D!7 	DD 	Drq   c                   <  SP                   P                  R R7       SP                  V P                  R4       R#   \         d(   pSP                  T P
                  T4        Rp?R# Rp?ii ; i)T)waitN)_default_executorshutdownr   
set_result	Exceptionset_exception)r   exr   s   & rr   _do_shutdown0_shutdown_default_executor.<locals>._do_shutdown  sa    D&&//T/:))&*;*;TB D))&*>*>CCDs   8= A/A**A/TN)targetargs)_executor_shutdown_calledr   create_futurer   r'   startjoin)r   r   r   threads   f   rr   r   r     sx     	D 	D *.&!!)##%!!IF	LLKKM KKMs0   ABA; "A9#A; 'B9A; ;BBr   T_coT)	covariantT_contra)contravariantPosArgsTP
_root_taskzRunVar[asyncio.Task | None]c                   V ^8  d   QhRR/# )rw   r   r   rh   )rz   s   "rr   r{   r{   7  s       rq   c                    \         P                  R 4      p V e   V P                  4       '       g   V # \        4        F  pVP                  '       g   K  VP                  4       '       d   K/  VP                   UUu. uF  w  r#VNK	  	  pppV F:  pV\
        J g   \        VRR 4      R8X  g   K!  \         P                  V4       Vu u # 	  K  	  \        \        P                  \        4       4      p\        P                  V4      pV'       dY   VP                  pV'       d   VP                  e   VP                  pK$  Ve%   \        \        P                  VP                  4      # V# u uppi )Nrj   zuvloop.loop)r  getr   r   
_callbacksr   r   setr0   asyncioTaskr   _task_statescancel_scope_parent_scope
_host_task)	root_taskr   cbr   	callbacksstater  s          rr   find_root_taskr  7  s   t$IY^^%5%5 ???499;;/3?I?00r<6-GNN4(K    ln-DT"E))|99E'55L#l&=&=>>K) @s   :E'z1WeakKeyDictionary[asyncio.AbstractEventLoop, Any]	_run_varsc                    V ^8  d   QhRRRR/# )rw   r   r   r   boolrh   )rz   s   "rr   r{   r{   ]  s     E E E Erq   c                ^    V P                  4       pVf   Q h\        V4      \        \        39   # )zBReturn ``True`` if the task has been started and has not finished.)get_coror    r   r   )r   r   s   & rr   _task_startedr  ]  s0     ==?DT"|^&DDDrq   c                    V ^8  d   QhRRRR/# )rw   excr   r   r  rh   )rz   s   "rr   r{   r{   k  s      ~ $ rq   c                *    V P                   '       dR   \        V P                   ^ ,          \        4      '       d+   V P                   ^ ,          P                  R4      '       d   R # \        V P                  \
        4      '       d   V P                  p K  R# )TCancelled via cancel scope F)r   
isinstancestr
startswith__context__r   r  s   &rr   is_anyio_cancellationr"  k  sb     HHH388A;,,&&'DEEcoo~66//Crq   c                     ] tR tRtR&tR]P                  RR/R R llt]P                  R3R R lltR	 R
 lt	R R lt
]R R l4       t]R R l4       tR R ltR R ltR R ltR'R R llt]R R l4       t]P&                  R R l4       t]R R l4       t]R  R! l4       t]R" R# l4       t]P&                  R$ R% l4       tR&tR# )(rM   i~  deadlineshieldFc               $    V ^8  d   QhRRRRRR/# rw   r$  floatr%  r  r   rM   rh   )rz   s   "rr   r{   CancelScope.__annotate__  s$     # ##48#	#rq   c               	,    \         P                  V 4      # r   object__new__clsr$  r%  s   &$$rr   r-  CancelScope.__new__  s     ~~c""rq   c                    V ^8  d   QhRRRR/# )rw   r$  r(  r%  r  rh   )rz   s   "rr   r{   r)    s     1 1 14 1rq   c                	   Wn         W n        R V n        \        4       V n        RV n        R V n        RV n        RV n        R V n	        R V n
        \        4       V n        R V n        \        P                  R8  d
   ^ V n        R # R V n        R # )NF      )	_deadline_shieldr  r  _child_scopes_cancel_called_cancel_reason_cancelled_caught_active_timeout_handle_cancel_handle_tasksr  sysversion_info_pending_uncancellations)r   r$  r%  s   &&&rr   r   CancelScope.__init__  s{    !15/2u#*.!&;?59),/3w&89D),0D)rq   c                   V ^8  d   QhRR/# )rw   r   rM   rh   )rz   s   "rr   r{   r)    s      ; rq   c                	   V P                   '       d   \        R 4      h\        \        P                  \        4       4      ;V n        pV P                  P                  V4        \        V,          pVP                  V n        Wn
        V P                  eK   V P                  P                  P                  V 4       V P                  P                  P                  V4       T P!                  4        RT n         T P"                  '       d   T P%                  T 4       T #   \         d    \        RT 4      pT\        T&    L^i ; i)z;Each CancelScope may only be used for a single 'with' blockNT)r<  r   r0   r  r	  r   r  r?  addr
  r  r  r8  discardKeyError	TaskState_timeoutr9  _deliver_cancellation)r   	host_task
task_states   &  rr   r   CancelScope.__enter__  s   <<<M  '+7<<&HH)	"	=%i0J
 ",!8!8D&*#!!- ""0044T:""))11)< &&t,'  	1"4.J&0L#	1s   #D  D>=D>c               (    V ^8  d   QhRRRRRRRR/# 	rw   r   r   r   r   r   r   r   r  rh   )rz   s   "rr   r{   r)    s8     ` `,` &` %	`
 
`rq   c                	(   ?V P                   '       g   \        R 4      h\        4       V P                  Jd   \        R4      hV P                  f   Q h\        P                  V P                  4      pVe   VP                  V Jd   \        R4      h RV n         V P                  '       d"   V P                  P                  4        RV n        V P                  P                  V P                  4       V P                  eU   V P                  P                  P                  V 4       V P                  P                  P                  V P                  4       V P                  Vn        V P                  4        V P                  '       d   V P                   '       g   V P"                  '       d6   V P                  P%                  4        V ;P"                  ^,          un        KG  \'        V\(        4      '       dI   VP+                  R 4      w  rVVf    RV n        ?R# RV n        Vf    RV n        ?R# VP.                  p Vh\'        V\0        4      '       d$   \3        V4      '       d   RV n         RV n        ?R#  RV n        ?R# V P"                  '       d_   V P                  f   Q hV P                  P"                  f   Q hV P                  ;P"                  V P"                  ,          un        ^ V n         RV n        ?R#   Yvn        ?i ; i  RT n        ?i ; i)zThis cancel scope is not activezIAttempted to exit cancel scope in a different task than it was entered inNzTAttempted to exit a cancel scope that isn't the current tasks's current cancel scopeFc                H    \        V \        4      ;'       d    \        V 4      # r   )r  r   r"  r!  s   &rr   r   &CancelScope.__exit__.<locals>.<lambda>  s#    &sN; ; ; 5c :;rq   T)r<  r   r   r  r
  r  r  r=  r   r?  remover  r8  rF  _restart_cancellation_in_parentr9  %_parent_cancellation_is_visible_to_usrB  r   r  rb   splitr;  r   r   r"  )r   r   r   r   host_task_statecancelleds_caught	remainingr   s   &&&&    rr   r   CancelScope.__exit__  s    |||@AA>0 
 ***&**4??;"o&B&B$&N' 
H	 DL###$$++-'+$KKt/!!-""0077=""))--doo>+/+=+=O( 002
 """4+U+U+U333OO,,.11Q61 g'9::3:==40% )0$F #DOE .2D* (#< #DO; (33G$ ( "'>::?T@ @ 26.# #DO  % #DO 000--999--FFRRR&&??55? 56D1"DO- 18-#( #DOsW   L *CL L L )A#L L -L :K; <.L  L AL ;	LL 
Lc                   V ^8  d   QhRR/# rw   r   r  rh   )rz   s   "rr   r{   r)  (  s       rq   c                	~    T pVe7   VP                   '       d   R# VP                  '       d   R# VP                  pK:  R# )NTF)r9  r%  r  )r   r  s   & rr   _effectively_cancelled"CancelScope._effectively_cancelled'  s9    +/&***"""'55Lrq   c                   V ^8  d   QhRR/# r]  rh   )rz   s   "rr   r{   r)  6  s     
 
t 
rq   c                	    V P                   R J;'       d0    V P                  '       * ;'       d    V P                   P                  # r   )r  r%  r_  r   s   &rr   rV  1CancelScope._parent_cancellation_is_visible_to_us5  sC     d* : :KK: :""99	
rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r)  =  s     S S$ Srq   c                	   V P                   \        P                  8w  dj   \        4       pVP	                  4       V P                   8  d   V P                  R 4       R# VP                  V P                   V P                  4      V n        R# R# )zdeadline exceededN)	r6  mathinfr	   timer   call_atrJ  r=  r   s   & rr   rJ  CancelScope._timeout=  sY    >>TXX%#%Dyy{dnn,/0'+||DNNDMM'R$ &rq   c                    V ^8  d   QhRRRR/# )rw   originrM   r   r  rh   )rz   s   "rr   r{   r)  E  s     0 0K 0D 0rq   c                N   Rp\        4       pV P                   F  pVP                  4       '       d   K  RpVP                  '       d   K1  WCJg   K8  W@P                  J g   \        V4      '       g   KZ  VP                  p\        V\        P                  4      '       d   VP                  4       '       d   K  VP                  VP                  4       WAP                  J g   K  VP                  f   K  V;P                  ^,          un        K  	  V P                   FF  pVP                  '       d   K  VP                  '       d   K+  VP!                  V4      ;'       g    TpKH  	  WJ d;   V'       d,   \#        4       P%                  V P                   V4      V n        V# RV n        V# )a*  
Deliver cancellation to directly contained tasks and nested cancel scopes.

Schedule another run at the end if we still have tasks eligible for
cancellation.

:param origin: the cancel scope that originated the cancellation
:return: ``True`` if the delivery needs to be retried on the next cycle

FTN)r   r?  r   _must_cancelr  r  _fut_waiterr  r  r   r   r:  rB  r8  r7  cancel_calledrK  r	   	call_soonr>  )r   rl  should_retrycurrentr   waiterscopes   &&     rr   rK  !CancelScope._deliver_cancellationE  s>    .KKDyy{{L    "(?=QUCVCV))!&'..99KK 5 56 1 11";;G771<7%  , ''E===)<)<)<$::6BRRl (
 >&6&8&B&B..'#  '+#rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r)  w  s     ( ( (rq   c                    V P                   pVeV   VP                  '       d"   VP                  f   VP                  V4       R# VP                  '       d   R# VP                   pKY  R# )zR
Restart the cancellation effort in the closest directly cancelled parent scope.

N)r  r9  r>  rK  r7  )r   ru  s   & rr   rU  +CancelScope._restart_cancellation_in_parentw  s\    
 ""###''///6 }}}''E  rq   Nc                    V ^8  d   QhRRRR/# )rw   reasonz
str | Noner   r   rh   )rz   s   "rr   r{   r)    s     1 1Z 14 1rq   c                	   V P                   '       g   V P                  '       d"   V P                  P                  4        R V n        RV n         R\        V 4      R 2V n        \        4       ;p'       d   V ;P                  RV 2,          un        V'       d   V ;P                  RV 2,          un        V P                  e   V P                  V 4       R # R # R # )NTr  xz by z
; reason: )r9  r=  r   idr:  r   r  rK  )r   r{  r   s   && rr   r   CancelScope.cancel  s    """###$$++-'+$"&D$?4|"LD#~%t%##dV}4###F8'<<#***40 + #rq   c                   V ^8  d   QhRR/# rw   r   r(  rh   )rz   s   "rr   r{   r)    s      % rq   c                	    V P                   # r   )r6  r   s   &rr   r$  CancelScope.deadline  s    ~~rq   c                    V ^8  d   QhRRRR/# rw   valuer(  r   r   rh   )rz   s   "rr   r{   r)    s      e  rq   c                	    \        V4      V n        V P                  e"   V P                  P                  4        R V n        V P                  '       d'   V P
                  '       g   V P                  4        R # R # R # r   )r(  r6  r=  r   r<  r9  rJ  r   r  s   &&rr   r$  r    sW    u+  '')#'D <<< 3 3 3MMO !4<rq   c                   V ^8  d   QhRR/# r]  rh   )rz   s   "rr   r{   r)    s     # #t #rq   c                	    V P                   # r   )r9  r   s   &rr   rp  CancelScope.cancel_called  s    """rq   c                   V ^8  d   QhRR/# r]  rh   )rz   s   "rr   r{   r)    s     & &$ &rq   c                	    V P                   # r   )r;  r   s   &rr   cancelled_caughtCancelScope.cancelled_caught  s    %%%rq   c                   V ^8  d   QhRR/# r]  rh   )rz   s   "rr   r{   r)    s       rq   c                	    V P                   # r   )r7  r   s   &rr   r%  CancelScope.shield      ||rq   c                    V ^8  d   QhRRRR/# )rw   r  r  r   r   rh   )rz   s   "rr   r{   r)    s     7 7D 7T 7rq   c                	l    V P                   V8w  d#   Wn         V'       g   V P                  4        R # R # R # r   )r7  rU  r  s   &&rr   r%  r    s,    <<5  L446  !rq   )r<  r9  r>  r:  r;  r8  r6  r  r  rB  r7  r?  r=  r   )ri   rj   rk   rl   	__slots__rf  rg  r-  r   r   r   propertyr_  rV  rJ  rK  rU  r   r$  setterrp  r  r%  rp   rh   rq   rr   rM   rM   ~  s    I #"&((#;@#
 *.% 1$>`D   
 
S0d(&1"   __  # # & &   ]]7 7rq   rM   c                  *    ] tR tRtRtRtR R ltRtR# )rI  i  z
Encapsulates auxiliary task information that cannot be added to the Task instance
itself because there are no guarantees about its implementation.
c                    V ^8  d   QhRRRR/# )rw   	parent_id
int | Noner  CancelScope | Nonerh   )rz   s   "rr   r{   TaskState.__annotate__  s     ) )* )<N )rq   c                	    Wn         W n        R # r   r  r  )r   r  r  s   &&&rr   r   TaskState.__init__  s    "(rq   )r  r  N)r  r  __weakref__)ri   rj   rk   rl   __doc__r  r   rp   rh   rq   rr   rI  rI    s    
 ;I) )rq   rI  z*WeakKeyDictionary[asyncio.Task, TaskState]r
  c                  2    ] tR tRtR R ltRR R lltRtR# )	_AsyncioTaskStatusi  c                    V ^8  d   QhRRRR/# )rw   r   asyncio.Futurer  intrh   )rz   s   "rr   r{   _AsyncioTaskStatus.__annotate__  s     $ $~ $# $rq   c                	    Wn         W n        R # r   _future
_parent_id)r   r   r  s   &&&rr   r   _AsyncioTaskStatus.__init__  s    #rq   Nc                    V ^8  d   QhRRRR/# )rw   r  zT_contra | Noner   r   rh   )rz   s   "rr   r{   r    s     
7 
7_ 
7 
7rq   c                	H    V P                   P                  V4       \        \        P                  \        4       4      pV P                  \        V,          n        R#   \        P                   d0    T P                   P	                  4       '       g   \        R 4      Rh Li ; i)z.called 'started' twice on the same task statusN)r  r   r  InvalidStateErrorr   r   r0   r	  r   r  r
  r  )r   r  r   s   && rr   started_AsyncioTaskStatus.started  s    	LL##E* GLL,.1'+T$ (( 	<<))++"D ,	s   A 4B!B! B!r  r   )ri   rj   rk   rl   r   r  rp   rh   rq   rr   r  r    s    $
7 
7rq   r  zCodeType | None_eager_task_factory_codec                  z    ] tR tRtR R ltR R ltR R ltRR	 R
 lltRRRR/R R lltRRRR/R R llt	Rt
R# )	TaskGroupi  c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   TaskGroup.__annotate__  s     C C$ Crq   c                	l    \        4       V n        R V n        . V n        \	        4       V n        RV n        R# FN)rM   r  _entered_exceptionsr  r?  _on_completed_futr   s   &rr   r   TaskGroup.__init__  s,    )402),>Brq   c                   V ^8  d   QhRR/# )rw   r   r  rh   )rz   s   "rr   r{   r    s      ) rq   c                	   "   V P                   '       d   \        R 4      hRV n         V P                  P                  4        V # 5i)z*TaskGroup cannot be entered more than onceT)r  r   r  r   r   s   &rr   
__aenter__TaskGroup.__aenter__  s8     ===KLL##%s   AAc               (    V ^8  d   QhRRRRRRRR/# rP  rh   )rz   s   "rr   r{   r     s2     <2 <2,<2 &<2 %	<2
 
<2rq   c                	:  "    VeL   V P                   P                  4        \        V\        4      '       g   V P                  P                  V4       \        4       p V P                  '       dc   \        4       ;_uu_ 4       pV P                  '       d4   VP                  4       V n
         V P                  G R j  xL
  R V n
        KE   R R R 4       M\        P                  4       G R j  xL
  V P                  '       d   \        RV P                  4      R hV'       d   Vh T P                   P#                  YT4      ??T =#  L  \         dY   pRTn        T P                   P                  4        Te(   \        T\        4      '       d   \        T4      '       g   Tp R p?LR p?ii ; i  + '       g   i     L; i L  \          dF   pT P                   P#                  \%        T4      YfP&                  4      '       d    R p???T =R# h R p?ii ; i  ??T =i ; i5i)NTzunhandled errors in a TaskGroup)r  r   r  r   r  appendr	   r?  rM   r   r  r%  r"  AsyncIOBackendcancel_shielded_checkpointrb   BaseExceptionr   type__traceback__)r   r   r   r   r   
wait_scoper  s   &&&&   rr   	__aexit__TaskGroup.__aexit__   s    6	2"!!((*!'>::$$++G4#%D+;;;$*"kkk595G5G5ID22&*&<&< < <  6:D2) * '2 )CCEEE###
 -94;K;K  !M  $$--hH!1Q !=#1 2 59
 1 $ 1 1 8 8 :
 $+?$.w$G$G,A#,F,F.1G2 '2 F ! $$--d3i>O>OPP !1	 	 !1s   HAH $F? F*F*+E:E;E?	F*	 F? )F=*F?  F? F? !H =HEF'AF"F*"F''F**F:	5	F? ?H
5H
?H H	H

HH HHNc               (    V ^8  d   QhRRRRRRRR/# )	rw   r   Coroutine[Any, Any, T_co]namer,  task_status_futureasyncio.Future | Noner   TaskHandle[T_co]rh   )rz   s   "rr   r{   r  >  s8     Q Q'Q Q 2	Q
 
Qrq   c                	  a aa R  V VV3R llpS'       d   \        \        4       4      pM\        S P                  P                  4      p\	        W4      p\
        P                  ! 4       pVP                  4       pVP                  4       ;p	'       dS   \        V	RR4      \        J d>   \        V	RR4      ;p
'       d)   V
^ ,          P                  pV! WVP                  R7      oMVP                  WP                  R7      o\        VS P                  R7      \        S&   S P                  P                   P#                  S4       S P                   P#                  S4       \$        P&                  R8  dD   S P                  P                  e,   \
        P(                  ! SS P                  P                  4       SP+                  V4       V# )	c                    V ^8  d   QhRRRR/# )rw   _taskr   r   r   rh   )rz   s   "rr   r{   &TaskGroup._spawn.<locals>.__annotate__D  s     -	 -	\ -	d -	rq   c                  < \         P                  R8  dD   SP                  P                  e,   \        P
                  ! V SP                  P                  4       \        V ,          pVP                  f   Q hWP                  P                  9   g   Q hVP                  P                  P                  V 4       SP                  P                  S4       \        V  SP                  e/   SP                  '       g    SP                  P                  R4        V P                  4       pVe   Se   SP!                  4       '       d   R# Se   SP#                  4       '       dl   \        V\        4      '       g   SP$                  P'                  V4       SP                  P(                  '       g   SP                  P+                  4        R# R# SP-                  V4       R# Se5   SP#                  4       '       g   SP-                  \/        R4      4       R# R# R#   \        P                   d     ELi ; i  \         d<   p\        TP                  \        4      '       d   TP                  pK.  Tp Rp?ELORp?ii ; i)r4  Nz2Child exited without calling task_status.started()r4     )r@  rA  r  r  r  future_discard_from_awaited_byr
  r?  rT  r  r   r  r   r   r  r   r   r   r  r  r_  r   r   r   )r  rM  r  er   r   r  s   &   rr   	task_done#TaskGroup._spawn.<locals>.task_doneD  s   7*t/@/@/K/K/W664,,77 &e,J**66633:::::##**11%8KKt$U#%%1$+++**55d;oo'  &16H6R6R6T6T%-1C1H1H1J1J%c>::((//4,,CCC))002 D '44S9#/8J8O8O8Q8Q"00 !UV 9R/5 00 
 "  ??A	s*   ;H H5 H21H25I; 0I66I;__code__N__closure__)r   r  r  r  r  )r~  r   r  r  rN   r  r	   	_run_coroget_task_factoryr   r  cell_contentsr  r   rI  r
  r?  rF  r@  rA  future_add_to_awaited_byadd_done_callback)r   r   r  r  r  r  handler   wrapper_corofactoryclosurecustom_task_constructorr   s   f&&f        @rr   _spawnTaskGroup._spawn>  sb   -	 -	^ <>*I4,,778ID''')'')--//W/T26NN#G]DAAA&-aj&>&>#*<UD##L{{#CD 'd.?.?
T 	  $$T*w&4+<+<+G+G+S,,T43D3D3O3OPy)rq   r  r   c               (    V ^8  d   QhRRRRRRRR/# )	rw   r   r  r  r,  r   zContext | Noner   r  rh   )rz   s   "rr   r{   r    s2     0 0'0 	0
  0 
0rq   c               	j   \        V\        4      '       g#   \        R VP                  P                   24      hV P
                  '       d   V P                  P                  '       g   VP                  4        \        R4      hVe   VP                  V P                  WR7      # V P                  WR7      # )zexpected a coroutine, got ;This task group is not active; no new tasks can be started.r  )r  r   	TypeError	__class__rk   r  r  r<  r   r   r   r  )r   r   r  r   s   &&$$rr   r   TaskGroup.create_task  s     $	**89T9T8UVWW}}}D$5$5$=$=$=JJLM  ;;t{{D;<<;;t;//rq   return_handleFc          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )rw   func7Callable[[Unpack[PosArgsT]], Coroutine[Any, Any, T_co]]r   zUnpack[PosArgsT]r  r,  r  zLiteral[False] | Literal[True]r   r,   rh   )rz   s   "rr   r{   r    s<     %# %#E%#  %# 	%#
 6%# 
%#rq   c               	  "   V P                   '       d   V P                  P                  '       g   \        R 4      h\        P
                  ! 4       p\        W4      p\        V\        V P                  P                  4      4      p\        WVR7      pV P                  WV4      p	 VG Rj  xL
  T'       d   TP)                  4       T	n        T	# TP)                  4       #  L3  \         d    T	P                  \        P                  P                   J d[   T	P#                  4        \%        RR7      ;_uu_ 4        T	P'                  4       G Rj  xL 
  RRR4       h   + '       g   i     h ; ih i ; i5i)r  )task_statusNTr%  )r  r  r<  r   r  r   rV   r  r~  r  rU   r  r  statusrN   StatusPENDINGr   rM   r   result_start_value)
r   r  r  r  r   r   
final_namer  r   r  s
   &&$$*     rr   r   TaskGroup.start  s     }}}D$5$5$=$=$=M  ")!1&t2
(D4E4E4P4P1QR!$+FTv6		LL "(--/FM==?"  	}}
 1 1 9 99 -- ++-'' .  .- E	s`   .E2A3E2%C  *C+C  /E27'E2C   AE/7EE
E	E/E*%
E//E2)r  r  r  r?  r  r   )ri   rj   rk   rl   r   r  r  r  r   r   rp   rh   rq   rr   r  r    sQ    C<2|Qf0 	0
 #'0*%# 	%#
 9>%# %#rq   r  c                  Z   a  ] tR tRt^
tR V 3R lltR R ltR R ltRR R	 lltR
t	V ;t
# )WorkerThreadi  c               $    V ^8  d   QhRRRRRR/# )rw   r  r   workerszset[WorkerThread]idle_workerszdeque[WorkerThread]rh   )rz   s   "rr   r{   WorkerThread.__annotate__  s(       # *	rq   c                	   < \         SV `  R R7       Wn        W n        W0n        VP
                  V n        \        ^4      V n        \        P                  4       V n        RV n        R# )zAnyIO worker threadr  FN)superr   r  r  r  r   r   r#   queuer  current_time
idle_sincestopping)r   r  r  r  r  s   &&&&rr   r   WorkerThread.__init__  sZ     	34"(OO	 !H 	
 )557rq   c               (    V ^8  d   QhRRRRRRRR/# )	rw   r   r  r  r,   r  r   r   r   rh   )rz   s   "rr   r{   r    s,     * *$*.1*8L*	*rq   c                	d   \         P                  4       V n        V P                  '       g   V P                  P                  V 4       VP                  4       '       gT   Ve=   \        V\        4      '       d   \        R4      pW4n
        TpVP                  V4       R # VP                  V4       R # R # )Nzcoroutine raised StopIteration)r  r  r  r  r  r  r   r  StopIterationr   	__cause__r   r   )r   r   r  r  new_excs   &&&& rr   _report_resultWorkerThread._report_result  s     )557}}}$$T*!!c=11*+KLG(+%!C$$S)!!&) "rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r    s     D DT Drq   c                	p   \        \        V P                  4      ;_uu_ 4         V P                  P	                  4       pVf    RRR4       R# Vw  r#rEpVP                  4       '       gt   RpRpV\        n         VP                  ! V.VO5!  p\        =V P                  P                  4       '       g(   V P                  P                  V P                  WWV4       ??V P                  P                  4        ??????K    \         d   p	T	p Rp	?	LRp	?	ii ; i  \        =i ; i  + '       g   i     R# ; iTN)r7   r  r   r
  r  r   r9   current_cancel_scoper   r  	is_closedr   r  r  )
r   itemr   r  r   r   r  r  r   r  s
   &         rr   r   WorkerThread.run  s    ;;zz~~'< <; =A9t\''))!F6:I8DL5>!(T!9D!9 )=99..00		66 // 	

$$&'4v| ) ($'	( )=# <;;sN   !D$+D$:C?%D$4AD$?D
DDDDD!!D$$D5	c                    V ^8  d   QhRRRR/# )rw   fzasyncio.Task | Noner   r   rh   )rz   s   "rr   r{   r    s      ) T rq   c                	    R V n         V P                  P                  R4       V P                  P	                  V 4        V P
                  P                  V 4       R#   \         d     R# i ; ir  )r  r
  
put_nowaitr  rG  r  rT  r   )r   r  s   &&rr   stopWorkerThread.stop  sX    

d#T"	$$T* 		s   A A+*A+)r  r  r   r
  r  r  r  r   )ri   rj   rk   rl   MAX_IDLE_TIMEr   r  r   r!  rp   __classcell__r  s   @rr   r  r    s'    M "*$D< rq   r  _threadpool_idle_workerszRunVar[deque[WorkerThread]]_threadpool_workerszRunVar[set[WorkerThread]]F)eqc                  >    ] tR tRt$ R]R&   R
R R lltR R ltRtR	# )StreamReaderWrapperi.  zasyncio.StreamReader_streamc                    V ^8  d   QhRRRR/# rw   	max_bytesr  r   bytesrh   )rz   s   "rr   r{    StreamReaderWrapper.__annotate__2  s      s u rq   c                	   "   V^8  d   \        R4      hV P                  P                  V4      G Rj  xL
 pV'       d   V# \        h L5ir   z$max_bytes must be a positive integerN)r   r+  readr=   )r   r.  datas   && rr   receiveStreamReaderWrapper.receive2  sB     q=CDD\\&&y11K	 2s   1A
AA
 	A
c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r0  <  s     * *d *rq   c                	   "   V P                   P                  \        4       4       \        P	                  4       G R j  xL
  R #  L5ir   )r+  r   r<   r  
checkpointr   s   &rr   acloseStreamReaderWrapper.aclose<  s-     ""#6#89'')))s   ;AAArh   N   )ri   rj   rk   rl   __annotations__r5  r:  rp   rh   rq   rr   r*  r*  .  s    !!* *rq   r*  c                  X    ] tR tRt$ R]R&   ]! RRR7      tR]R&   R R	 ltR
 R ltRt	R# )StreamWriterWrapperiA  zasyncio.StreamWriterr+  F)initdefaultr  _closedc                    V ^8  d   QhRRRR/# rw   r  r/  r   r   rh   )rz   s   "rr   r{    StreamWriterWrapper.__annotate__F  s     > >u > >rq   c                	  "   \         P                  4       G R j  xL
  V P                  P                  P                  p V P                  P                  V4       V P                  P                  4       G R j  xL
  T'       g   \         P                  4       G R j  xL
  R # R #  L L.  \        \        \        3 dG   pT P                  '       d   \        ThT P                  P                  4       '       d   \        Thh R p?ii ; i Lk5ir   )r  checkpoint_if_cancelledr+  	_protocol_pausedwritedrainConnectionResetErrorBrokenPipeErrorr   rC  r<   
is_closingr:   r  )r   r  stream_pausedr  s   &&  rr   sendStreamWriterWrapper.sendF  s     44666..66	LLt$,,$$&&&  ;;=== ! 	7 '$o|D 		 |||)s2((**)s2		 >s]   D
B%$D
 8B) 8B'9B) =D
D
D	D
'B) )D?8D 8D  DD
c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   rF  Z  s     * *d *rq   c                	   "   R V n         V P                  P                  4        \        P	                  4       G Rj  xL
  R#  L5ir  )rC  r+  r   r  r9  r   s   &rr   r:  StreamWriterWrapper.acloseZ  s.     '')))s   9AAA)rC  N)
ri   rj   rk   rl   r>  r   rC  rQ  r:  rp   rh   rq   rr   r@  r@  A  s(    !!ue4GT4>(* *rq   r@  c                      ] tR tRt$ R]R&   R]R&   R]R&   R]R&   R	]R
&   R]R&   R R ltR R ltR R ltR R ltR R lt	]
R R l4       t]
R R l4       t]
R R l4       t]
R R l4       t]
R R  l4       tR!tR"# )#Processi`  zasyncio.subprocess.Process_processzStreamWriterWrapper | None_stdinzStreamReaderWrapper | None_stdout_stderrasyncio.Event_exitedzasyncio.SubprocessTransport
_transportc                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   Process.__annotate__i  s      d rq   c                	  "   \        R R7      ;_uu_ 4       pV P                  '       dV   V P                  P                  4       G Rj  xL
  V P                  P	                  ^ 4      ;p'       d   VP                  4        V P                  '       dV   V P                  P                  4       G Rj  xL
  V P                  P	                  ^4      ;p'       d   VP                  4        V P                  '       dV   V P                  P                  4       G Rj  xL
  V P                  P	                  ^4      ;p'       d   VP                  4        RVn         V P                  4       G Rj  xL
   RRR4       R#  EL1 L Lg L  \         d=    R Tn        T P                  P                  4        T P                  4       G Rj  xL 
  h i ; i  + '       g   i     R# ; i5i)Tr  NF)rM   rY  r:  r^  get_pipe_transportr   rZ  r[  r%  r   r  )r   ru  pipes   &  rr   r:  Process.aclosei  sT    %% {{{kk((***??==a@@4@JJL|||ll))+++??==a@@4@JJL|||ll))+++??==a@@4@JJL ELiik!!% &% + , , "  #%%'iik!!' &%%s   G0GE8&G/!GG.E;/&G!G8GE=&G=GF(E?)F.
G8G;G=G?F?G G
GGG		Gc                   V ^8  d   QhRR/# rw   r   r  rh   )rz   s   "rr   r{   r`    s     ( (C (rq   c                	   "   V P                   P                  4       G R j  xL
  V P                  P                  f   Q hV P                  P                  #  L45ir   )r]  r   rX  
returncoder   s   &rr   r   Process.wait  sF     ll!!!}}''333}}''' 	"s   AA5Ac                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r`    s     " "4 "rq   c                	:    V P                   P                  4        R # r   )rX  	terminater   s   &rr   rl  Process.terminate  s    !rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r`    s      d rq   c                	:    V P                   P                  4        R # r   )rX  killr   s   &rr   rp  Process.kill  s    rq   c                    V ^8  d   QhRRRR/# )rw   r   r  r   r   rh   )rz   s   "rr   r{   r`    s     * *# *$ *rq   c                	<    V P                   P                  V4       R # r   )rX  send_signal)r   r   s   &&rr   rt  Process.send_signal  s    !!&)rq   c                   V ^8  d   QhRR/# rf  rh   )rz   s   "rr   r{   r`    s     ! !S !rq   c                	.    V P                   P                  # r   )rX  pidr   s   &rr   rx  Process.pid  s    }}   rq   c                   V ^8  d   QhRR/# rw   r   r  rh   )rz   s   "rr   r{   r`    s     ( (J (rq   c                	.    V P                   P                  # r   )rX  rh  r   s   &rr   rh  Process.returncode  s    }}'''rq   c                   V ^8  d   QhRR/# )rw   r   zabc.ByteSendStream | Nonerh   )rz   s   "rr   r{   r`    s      0 rq   c                	    V P                   # r   )rY  r   s   &rr   stdinProcess.stdin      {{rq   c                   V ^8  d   QhRR/# rw   r   zabc.ByteReceiveStream | Nonerh   )rz   s   "rr   r{   r`          4 rq   c                	    V P                   # r   )rZ  r   s   &rr   stdoutProcess.stdout  r  rq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r`    r  rq   c                	    V P                   # r   )r[  r   s   &rr   stderrProcess.stderr  r  rq   rh   N)ri   rj   rk   rl   r>  r:  r   rl  rp  rt  r  rx  rh  r  r  r  rp   rh   rq   rr   rW  rW  `  s    ((&&''''++6(
"* ! ! ( (      rq   rW  c               $    V ^8  d   QhRRRRRR/# )rw   r  zset[Process]r  r,  r   r   rh   )rz   s   "rr   r{   r{     s$     < <<"(<	<rq   c                j   Rp\         P                  R8  d%    \        P                  ! 4       P	                  4       pV P                  4        F  pVP                  e   K  VP                  P                  P                  P                  4        VP                  P                  P                  P                  4        VP                  P                  P                  P                  4        VP                  4        V'       g   K  VP                  VP                   4       K  	  R#   \
         d     Li ; i)zC
Forcibly shuts down worker processes belonging to this event loop.Nr4     )r@  rA  r  get_event_loop_policyget_child_watcherNotImplementedErrorcopyrh  rY  r+  r^  r   rZ  r[  rp  remove_child_handlerrx  )r  r  child_watcherprocesss   &&  rr   '_forcibly_shutdown_process_pool_on_exitr    s    
 :>M
'!	#99;MMOM
 <<>)))//1**002**002=..w{{; "	 # 		s   #D$ $D21D2c                    V ^8  d   QhRRRR/# rw   r  zset[abc.Process]r   r   rh   )rz   s   "rr   r{   r{     s     # #2B #t #rq   c                D  "    \        \        P                  4      G Rj  xL
  R#  L  \        P                   d`    T P                  4       p T  F#  pTP                  e   K  TP                  4        K%  	  T  F  pTP                  4       G Rj  xL 
  K  	   R# i ; i5i)z
Shuts down worker processes belonging to this event loop.

NOTE: this only works when the event loop was started using asyncio.run() or
anyio.run().

N)	r
   rf  rg  r  r   r  rh  rp  r:  )r  r  s   & rr   _shutdown_process_pool_on_exitr    su     	#DHHo!! #,,.G!!)  G..""" #sC   B ) ') B ) 5B#,BB	BB BB c                      ] tR tRt$ R]R&   R]R&   R]R&   RtR]R	&   R
tR]R&   R R ltR R ltR R lt	R R lt
R R ltR R ltRtR# )StreamProtocoli  zdeque[bytes]
read_queuer\  
read_eventwrite_eventNException | Noner   Fr  	is_at_eofc                    V ^8  d   QhRRRR/# rw   	transportzasyncio.BaseTransportr   r   rh   )rz   s   "rr   r{   StreamProtocol.__annotate__  s     F F)> F4 Frq   c                	   \        4       V n        \        P                  ! 4       V n        \        P                  ! 4       V n        V P
                  P                  4        \        \        P                  V4      P                  ^ 4       R# r   N)
r   r  r  rE   r  r  r  r0   	Transportset_write_buffer_limitsr   r  s   &&rr   connection_madeStreamProtocol.connection_made  sS    '!--/"==?W	*BB1Erq   c                    V ^8  d   QhRRRR/# rw   r  r  r   r   rh   )rz   s   "rr   r{   r    s      #3  rq   c                	    V'       d   Wn         V P                  P                  4        V P                  P                  4        R # r   )r   r  r  r  r   r  s   &&rr   connection_lostStreamProtocol.connection_lost  s,     Nrq   c                    V ^8  d   QhRRRR/# )rw   r4  r/  r   r   rh   )rz   s   "rr   r{   r    s      % D rq   c                	    V P                   P                  \        V4      4       V P                  P	                  4        R # r   )r  r  r/  r  r  )r   r4  s   &&rr   data_receivedStreamProtocol.data_received  s(    uT{+rq   c                   V ^8  d   QhRR/# )rw   r   rx   rh   )rz   s   "rr   r{   r    s      k rq   c                	H    R V n         V P                  P                  4        R # )T)r  r  r  r   s   &rr   eof_receivedStreamProtocol.eof_received  s    rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r    s     + +t +rq   c                	:    \         P                  ! 4       V n        R # r   )r  rE   r  r   s   &rr   pause_writingStreamProtocol.pause_writing  s    "==?rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r           rq   c                	:    V P                   P                  4        R # r   r  r  r   s   &rr   resume_writingStreamProtocol.resume_writing      rq   )r   r  r  r  r  )ri   rj   rk   rl   r>  r   r  r  r  r  r  r  r  rp   rh   rq   rr   r  r    sM    "&I&ItF

+ rq   r  c                      ] tR tRt$ R]R&   R]R&   R]R&   R]R&   RtR	]R
&   R R ltR R ltR R ltR R lt	R R lt
R R ltRtR# )DatagramProtocoli   z#deque[tuple[bytes, IPSockAddrType]]r  r\  r  r  closed_eventNr  r   c                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   DatagramProtocol.__annotate__  s      )> 4 rq   c                	    \        ^dR7      V n        \        P                  ! 4       V n        \        P                  ! 4       V n        \        P                  ! 4       V n        V P
                  P                  4        R# )d   )maxlenN)r   r  r  rE   r  r  r  r  r  s   &&rr   r   DatagramProtocol.connection_made  sI    s+!--/"==?#MMOrq   c                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   r    s        #3    rq   c                	    V P                   P                  4        V P                  P                  4        V P                  P                  4        R # r   )r  r  r  r  r  s   &&rr   r   DatagramProtocol.connection_lost  s6    rq   c               $    V ^8  d   QhRRRRRR/# )rw   r4  r/  addrrP   r   r   rh   )rz   s   "rr   r{   r    s!      e > d rq   c                	    \        V4      pV P                  P                  W34       V P                  P	                  4        R # r   )r@   r  r  r  r  )r   r4  r  s   &&&rr   datagram_received"DatagramProtocol.datagram_received  s0    $T*|,rq   c                    V ^8  d   QhRRRR/# )rw   r  r   r   r   rh   )rz   s   "rr   r{   r    s      )  rq   c                	    Wn         R # r   )r   r  s   &&rr   error_receivedDatagramProtocol.error_received  s    rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r    s     ! !t !rq   c                	:    V P                   P                  4        R # r   )r  clearr   s   &rr   r  DatagramProtocol.pause_writing  s     rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r    r  rq   c                	:    V P                   P                  4        R # r   r  r   s   &rr   r  DatagramProtocol.resume_writing  r  rq   )r  r   r  r  r  )ri   rj   rk   rl   r>  r   r  r  r  r  r  r  rp   rh   rq   rr   r  r     sH    33"&I& 

! rq   r  c                  l    ] tR tRtR R lt]R R l4       tRR R lltR R	 ltR
 R lt	R R lt
RtR# )SocketStreami"  c                    V ^8  d   QhRRRR/# )rw   r  zasyncio.Transportprotocolr  rh   )rz   s   "rr   r{   SocketStream.__annotate__#  s      "3 ~ rq   c                	l    Wn         W n        \        R 4      V n        \        R4      V n        RV n        R# reading from
writing toFNr^  rI  rH   _receive_guard_send_guardrC  r   r  r  s   &&&rr   r   SocketStream.__init__#  s-    #!+N;(6rq   c                   V ^8  d   QhRR/# rw   r   socket.socketrh   )rz   s   "rr   r{   r  +       8 8] 8rq   c                	8    V P                   P                  R 4      # socketr^  get_extra_infor   s   &rr   _raw_socketSocketStream._raw_socket*      --h77rq   c                    V ^8  d   QhRRRR/# r-  rh   )rz   s   "rr   r{   r  .  s     $ $s $u $rq   c                	r  "   V^8  d   \        R4      hV P                  ;_uu_ 4        V P                  P                  P	                  4       '       g   V P
                  P                  4       '       g~   V P                  P                  '       gb   V P
                  P                  4        V P                  P                  P                  4       G Rj  xL
  V P
                  P                  4        M\        P                  4       G Rj  xL
   V P                  P                  P                  4       p\+        T4      T8  d.   TRT Y!R r2T P                  P                  P-                  T4       T P                  P                  '       g%   T P                  P                  P/                  4        RRR4       T#  L L  \         dY    T P                   '       d   \"        RhT P                  P$                  '       d   \&        T P                  P$                  h\(        Rhi ; i  + '       g   i     X# ; i5ir2  )r   r  rI  r  is_setr^  rO  r  resume_readingr   pause_readingr  r9  r  popleft
IndexErrorrC  r<   r   r:   r=   len
appendleftr  )r   r.  chunkleftovers   &&  rr   r5  SocketStream.receive.  s    q=CDD   NN--44662244000..0nn//44666--/$//11101199; 5zI%"'
"3U:5Fx))44X> >>,,,))//1= !@ 3 7 2  0<<<-47^^----4>>3K3KK%4/0 ! @ sy   'H7A
H#4H#AH#F96H#F;	H#$F=2AH#$H#/
H79H#;H#=H "H =#H  H##H4	.	H7c                    V ^8  d   QhRRRR/# rE  rh   )rz   s   "rr   r{   r  T  s     4 4u 4 4rq   c                	L  "   V P                   ;_uu_ 4        \        P                  4       G R j  xL
  V P                  '       d   \        hV P
                  P                  e   \        V P
                  P                  h V P                  P                  V4       T P
                  P                  P                  4       G R j  xL
  R R R 4       R #  L  \         d.   pT P                  P                  4       '       d   \        Thh R p?ii ; i LK  + '       g   i     R # ; i5ir   )r  r  r9  rC  r<   rI  r   r:   r^  rK  r   rO  r  r   )r   r  r  s   && rr   rQ  SocketStream.sendT  s      ++---|||))))5)t~~/G/GG%%d+ ..,,11333! -   ??--//-36	 4! sb   D$DCD9D C'DDD
D$DD(DDDD!		D$c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  g  s       rq   c                	h   "    V P                   P                  4        R #   \         d     R # i ; i5ir   )r^  	write_eofOSErrorr   s   &rr   send_eofSocketStream.send_eofg  s+     	OO%%' 		s   2  2/2/2c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  m  s     
$ 
$d 
$rq   c                	J  "   R V n         V P                  P                  4       '       ge    V P                  P                  4        V P                  P                  4        \        ^ 4      G Rj  xL
  V P                  P                  4        R# R#   \         d     LXi ; i L35ir  )rC  r^  rO  r  r  r   r
   abortr   s   &rr   r:  SocketStream.aclosem  s     ))++))+ OO!!#(NNOO!!# ,   s4   (B#B (B#-B!."B#BB#BB#rC  rI  r  r  r^  Nr<  )ri   rj   rk   rl   r   r  r  r5  rQ  r  r:  rp   rh   rq   rr   r  r  "  s5     8 8$L4&
$ 
$rq   r  c                  ~    ] tR tRt$ RtR]R&   RtR]R&   RtR R lt]	R	 R
 l4       t
R R ltR R ltR R ltRtR# )_RawSocketMixiniz  Nr  _receive_future_send_futureFc                   V ^8  d   QhRR/# rw   
raw_socketr  rh   )rz   s   "rr   r{   _RawSocketMixin.__annotate__  s     7 7= 7rq   c                	R    Wn         \        R 4      V n        \        R4      V n        R# )r  r  N)_RawSocketMixin__raw_socketrH   r  r  r   r  s   &&rr   r   _RawSocketMixin.__init__  s"    &+N;(6rq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r         ! !] !rq   c                	    V P                   # r   )r!  r   s   &rr   r  _RawSocketMixin._raw_socket         rq   c                    V ^8  d   QhRRRR/# rw   r   asyncio.AbstractEventLoopr   r  rh   )rz   s   "rr   r{   r          )B ~ rq   c                	   a a R  VV 3R llp\         P                  ! 4       ;pS n        SP                  S P                  VP
                  R4       VP                  V4       V# )c                    V ^8  d   QhRRRR/# rw   r  r,  r   r   rh   )rz   s   "rr   r{   :_RawSocketMixin._wait_until_readable.<locals>.__annotate__       	2 	2 	24 	2rq   c                B   < S= SP                  SP                  4       R # r   )r  remove_readerr!  r  r   r   s   &rr   callback6_RawSocketMixin._wait_until_readable.<locals>.callback  s    $t001rq   N)r  r   r  
add_readerr!  r   r  r   r   r5  r  s   ff  rr   _wait_until_readable$_RawSocketMixin._wait_until_readable  sP    	2 	2 $+>>#33D ))1<<>	H%rq   c                    V ^8  d   QhRRRR/# r*  rh   )rz   s   "rr   r{   r    r,  rq   c                	   a a R  VV 3R llp\         P                  ! 4       ;pS n        SP                  S P                  VP
                  R4       VP                  V4       V# )c                    V ^8  d   QhRRRR/# r/  rh   )rz   s   "rr   r{   :_RawSocketMixin._wait_until_writable.<locals>.__annotate__  r1  rq   c                B   < S= SP                  SP                  4       R # r   )r  remove_writerr!  r4  s   &rr   r5  6_RawSocketMixin._wait_until_writable.<locals>.callback  s    !t001rq   N)r  r   r  
add_writerr!  r   r  r8  s   ff  rr   _wait_until_writable$_RawSocketMixin._wait_until_writable  sP    	2 	2 !( 00D))1<<>	H%rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r    s     	3 	3d 	3rq   c                	n  "   V P                   '       g   R V n         V P                  P                  4       R8w  d   V P                  P                  4        V P                  '       d   V P                  P                  R4       V P                  '       d   V P                  P                  R4       R# R# R# 5i)TN)_closingr!  filenor   r  r   r  r   s   &rr   r:  _RawSocketMixin.aclose  s     }}} DM  '')R/!!'')###$$//5   !!,,T2 ! s   A$B5',B5!B5)__raw_socketrH  r  r  r  r  )ri   rj   rk   rl   r  r>  r  rH  r   r  r  r9  rC  r:  rp   rh   rq   rr   r  r  z  sJ    -1O*1*.L'.H7
 ! !	3 	3rq   r  c                  V    ] tR tRtR R ltRR R lltR R ltR R	 ltR
 R ltRt	R# )UNIXSocketStreami  c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   UNIXSocketStream.__annotate__  s     6 6 6rq   c                	   "   V P                   ;_uu_ 4        V P                  P                  \        P                  4       R R R 4       R #   + '       g   i     R # ; i5ir   )r  r  r   r  SHUT_WRr   s   &rr   r  UNIXSocketStream.send_eof  s7     %%fnn5 s   A*A
AA		Ac                    V ^8  d   QhRRRR/# r-  rh   )rz   s   "rr   r{   rO    s        s  u  rq   c                	  "   V^8  d   \        R4      h\        4       p\        P                  4       G Rj  xL
  V P                  ;_uu_ 4          V P
                  P                  V4      pV'       g   \        hVuuRRR4       #  LP  \         d    T P                  T4      G Rj  xL 
   Ka  \         d&   pT P                  '       d   \        Rh\        ThRp?ii ; i  + '       g   i     R# ; i5ir2  )r   r	   r  r9  r  r  recvr=   BlockingIOErrorr9  r  rH  r<   r:   )r   r.  r   r4  r  s   &&   rr   r5  UNIXSocketStream.receive  s     q=CDD!'')))    ++00;D  )) !  	*
 ' :33D999 ;}}}1t;1s:	; !  si   4C7BC7C#B	-C#<C7	C (B+
)C .C#1C :C ; CC  C##C4	.	C7c                    V ^8  d   QhRRRR/# rE  rh   )rz   s   "rr   r{   rO    s     - -u - -rq   c                	  "   \        4       p\        P                  4       G R j  xL
  V P                  ;_uu_ 4        \	        V4      pV'       d#    V P
                  P                  V4      pW4R  pK*   R R R 4       R #  LY  \         d    T P                  T4      G R j  xL 
   K_  \         d&   pT P                  '       d   \        R h\        ThR p?ii ; i  + '       g   i     R # ; i5ir   )r	   r  r9  r  
memoryviewr  rQ  rV  rC  r  rH  r<   r:   )r   r  r   view
bytes_sentr  s   &&    rr   rQ  UNIXSocketStream.send  s     !'')))d#D
-!%!1!1!6!6t!<J  ,D   	* ' :33D999 ;}}}1t;1s:	; sh   "C.A>C.CB -C4C. CB"
 C%C(C1C2 CCCC+	%	C.c               $    V ^8  d   QhRRRRRR/# )rw   msglenr  maxfdsr   ztuple[bytes, list[int]]rh   )rz   s   "rr   r{   rO    s"     %" %" %"S %"=T %"rq   c           	     	$  "   \        V\        4      '       d   V^ 8  d   \        R4      h\        V\        4      '       d   V^8  d   \        R4      h\        4       p\        P                  ! R4      p\
        P                  4       G Rj  xL
  V P                  ;_uu_ 4          V P                  P                  V\        P                  ! W$P                  ,          4      4      w  rVrxV'       g   V'       g   \        h RRR4       X F  w  rpT
\        P(                  8w  g   T\        P*                  8w  d   \-        RX: RT
 RT 24      hTP/                  TR\1        T4      \1        T4      TP                  ,          ,
           4       K  	  X\3        T4      3#  EL  \         d     T P                  T4      G Rj  xL 
   EK&  \          d&   p	T P"                  '       d   \$        Rh\&        T	hRp	?	ii ; i  + '       g   i     EL; i5i)r   z%msglen must be a non-negative integerz!maxfds must be a positive integeriNz.Received unexpected ancillary data; message = z, cmsg_level = z, cmsg_type = )r  r  r   r	   arrayr  r9  r  r  recvmsgr  CMSG_LENitemsizer=   rV  r9  r  rH  r<   r:   
SOL_SOCKET
SCM_RIGHTSr   	frombytesr  list)r   r_  r`  r   fdsr   ancdataflagsr  r  
cmsg_level	cmsg_type	cmsg_datas   &&&          rr   receive_fdsUNIXSocketStream.receive_fds  s    &#&&&1*DEE&#&&&1*@AA!kk#'')))   484D4D4L4L0E F51Ge #7))# !& 18,J9V...)v?P?P2P"DWK P$$.<~i[J 
 MM)$Vc)nI8U&VWX 18 S	!!; 	* ' :33D999 ;}}}1t;1s:	; !  st   BH
FH#G<&AF!)G<9G< BH!G9 G
G9G<
G9G9 G44G99G<<H		Hc               $    V ^8  d   QhRRRRRR/# )rw   r   r/  rk  zCollection[int | IOBase]r   r   rh   )rz   s   "rr   r{   rO    s"     ; ;e ;2J ;t ;rq   c                	D  "   V'       g   \        R 4      hV'       g   \        R4      h\        4       p. pV Fc  p\        V\        4      '       d   VP	                  V4       K,  \        V\
        4      '       g   KD  VP	                  VP                  4       4       Ke  	  \        P                  ! RV4      p\        P                  4       G Rj  xL
  V P                  ;_uu_ 4          V P                  P                  V.\        P                  \        P                  V3.4        RRR4       R#  Lc  \          d    T P#                  T4      G Rj  xL 
   Kt  \$         d&   pT P&                  '       d   \(        Rh\*        ThRp?ii ; i  + '       g   i     R# ; i5i)zmessage must not be emptyzfds must not be emptyrb  N)r   r	   r  r  r  r!   rI  rc  r  r9  r  r  sendmsgr  rg  rh  rV  rC  r  rH  r<   r:   )r   r   rk  r   filenosfdfdarrayr  s   &&&     rr   send_fdsUNIXSocketStream.send_fds  sA    899455!B"c""r"B''ryy{+	  ++c7+''))); $$,, 	V%6%68I8I7$S#T   	* ' :33D999 ;}}}1t;1s:	; sx   F AF ;AF D0F %F(=D2%F&F 2F	E
F	FF	#F	$ FF		FF		F rh   Nr<  )
ri   rj   rk   rl   r  r5  rQ  rq  ry  rp   rh   rq   rr   rM  rM    s!    6 .-$%"N; ;rq   rM  c                  d    ] tR tRt$ RtR]R&   RtR R lt]R R	 l4       t	R
 R lt
R R ltRtR# )TCPSocketListeneri  Nr  _accept_scopeFc                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   TCPSocketListener.__annotate__#  s     I I= Irq   c                	    Wn         \        \        P                  \	        4       4      V n        \        R 4      V n        R# )accepting connections fromN)_TCPSocketListener__raw_socketr0   r  BaseEventLoopr	   r   rH   _accept_guardr"  s   &&rr   r   TCPSocketListener.__init__#  s.    &'//1A1CD
*+GHrq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r  )  r%  rq   c                	    V P                   # r   )r  r   s   &rr   r  TCPSocketListener._raw_socket(  r(  rq   c                   V ^8  d   QhRR/# rw   r   abc.SocketStreamrh   )rz   s   "rr   r{   r  ,  s     1 1. 1rq   c           	     	z  "   V P                   '       d   \        hV P                  ;_uu_ 4        \        P	                  4       G R j  xL
  \        4       ;_uu_ 4       V n         V P                  P                  V P                  4      G R j  xL
 w  r R T n         R R R 4       R R R 4       XP                  \         P"                  \         P$                  ^4       T P                  P'                  \(        T4      G R j  xL
 w  r4\+        Y44      #  L L  \        P                   dZ     T P                  P                  T P                  4       M  \        \        3 d     Mi ; iT P                   '       d   \        R hh i ; i  R T n        i ; i  + '       g   i     L; i  + '       g   i     EL	; i L5ir   )rC  r<   r  r  r9  rM   r}  r   sock_acceptr  r  r   r3  r   r  
setsockoptr  IPPROTO_TCPTCP_NODELAYconnect_accepted_socketr  r  )r   client_sock_addrr  r  s   &    rr   acceptTCPSocketListener.accept,  sV    <<<%% ++---$"4./3zz/E/EdFVFV/W)W&K *.D&   & 	v1163E3EqI$(JJ$F$FK%
 
	 I00- . *X-- 


001A1AB&(;<  |||1t;
 *.D&   (
s   -F;F%DF%F	%(DDDF	F%%AF;?F9 F;F%DF+%E
FE%"F$E%%F:	FF	FF	F"F%%F6	0
F;c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  I  s     ! !d !rq   c                	t  "   V P                   '       d   R # RV n         V P                  '       dT    V P                  P                  V P                  4       V P                  P                  4        \        ^ 4      G R j  xL
  V P                  P                  4        R #   \
        \        3 d     L\i ; i L75i)NT)
rC  r}  r   r3  r  r   r  r   r
   r   r   s   &rr   r:  TCPSocketListener.acloseI  s     <<<

(()9)9: %%'(NN   34  s4   -B8%B (B8>B6? B8B30B82B33B8)rK  r  r}  rC  r   )ri   rj   rk   rl   r}  r>  rC  r   r  r  r  r:  rp   rh   rq   rr   r|  r|    s;    (,M%,GI
 ! !1:! !rq   r|  c                  P    ] tR tRtR R ltR R ltR R lt]R R	 l4       tR
t	R# )UNIXSocketListeneri[  c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   UNIXSocketListener.__annotate__\  s      = rq   c                	^    Wn         \        4       V n        \        R 4      V n        RV n        R# )r  FN)_UNIXSocketListener__raw_socketr	   r   rH   r  rC  r"  s   &&rr   r   UNIXSocketListener.__init__\  s'    &%'
*+GHrq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r  b  s     ; ;. ;rq   c                	n  a "   \         P                  4       G R j  xL
  S P                  ;_uu_ 4          S P                  P	                  4       w  rVP                  R4       \        V4      uuR R R 4       #  L]  \         dk    \        P                  ! 4       pS P                  P                  S P                  TP                  R 4       TP                  T 3R l4       TG R j  xL 
   K  \         d&   pS P                  '       d   \         R h\"        ThR p?ii ; i  + '       g   i     R # ; i5i)NFc                N   < SP                   P                  SP                  4      # r   )r   r3  r  )_r   s   &rr   r   +UNIXSocketListener.accept.<locals>.<lambda>n  s    $**":":4;L;L"Mrq   )r  r9  r  r  r  setblockingrM  rV  r  r   r   r7  r   r  r  rC  r<   r:   )r   r  r  r  r  s   f    rr   r  UNIXSocketListener.acceptb  s     '')));%)%6%6%=%=%?NK++E2+K8   	* ' (/(8AJJ))$*;*;Q\\4P''M GG ;|||1t;1s:	;  sb   D5A9D5D!7A;.D5;A+D&C)
'D,D!/D8D9 DDD!!D2	,	D5c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  w  s     " "d "rq   c                	P   "   R V n         V P                  P                  4        R# 5ir  )rC  r  r   r   s   &rr   r:  UNIXSocketListener.aclosew  s     !s   $&c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r  |  r%  rq   c                	    V P                   # r   )r  r   s   &rr   r  UNIXSocketListener._raw_socket{  r(  rq   )rK  r  rC  r   N)
ri   rj   rk   rl   r   r  r:  r  r  rp   rh   rq   rr   r  r  [  s%    ;*" ! !rq   r  c                  \    ] tR tRtR R lt]R R l4       tR R ltR R	 ltR
 R lt	Rt
R# )	UDPSocketi  c                    V ^8  d   QhRRRR/# rw   r  zasyncio.DatagramTransportr  r  rh   )rz   s   "rr   r{   UDPSocket.__annotate__        2>Nrq   c                	l    Wn         W n        \        R 4      V n        \        R4      V n        RV n        R# r  r  r  s   &&&rr   r   UDPSocket.__init__  /     $!+N;(6rq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r    r  rq   c                	8    V P                   P                  R 4      # r  r  r   s   &rr   r  UDPSocket._raw_socket  r  rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r         1 1d 1rq   c                	   "   R V n         V P                  P                  4       '       g   V P                  P                  4        V P                  P
                  P                  4       G Rj  xL
  R#  L5ir  rC  r^  rO  r   rI  r  r   r   s   &rr   r:  UDPSocket.aclose  K     ))++OO!!#nn))..000   A)A4+A2,A4c                   V ^8  d   QhRR/# )rw   r   ztuple[bytes, IPSockAddrType]rh   )rz   s   "rr   r{   r    s     8 8; 8rq   c                	p  "   V P                   ;_uu_ 4        \        P                  4       G R j  xL
  V P                  P                  '       gq   V P
                  P                  4       '       gQ   V P                  P                  P                  4        V P                  P                  P                  4       G R j  xL
   V P                  P                  P                  4       uuR R R 4       #  L L5  \         d"    T P                  '       d   \        R h\        R hi ; i  + '       g   i     R # ; i5ir   r  r  r9  rI  r  r^  rO  r  r  r   r  r  rC  r<   r:   r   s   &rr   r5  UDPSocket.receive  s         ++--- >>,,,T__5O5O5Q5Q))//1nn//446668~~0088: ! -
 7  8<<<-47-47	8 !  sc   D6D"C/D"D"0AD";C1<D"#C3$D6/D"1D"3DDD""D3	-	D6c                    V ^8  d   QhRRRR/# )rw   r  rR   r   r   rh   )rz   s   "rr   r{   r    s     	. 	.} 	. 	.rq   c                	  "   V P                   ;_uu_ 4        \        P                  4       G R j  xL
  V P                  P                  P                  4       G R j  xL
  V P                  '       d   \        hV P                  P                  4       '       d   \        hV P                  P                  ! V!    R R R 4       R #  L Li  + '       g   i     R # ; i5ir   r  r  r9  rI  r  r   rC  r<   r^  rO  r:   sendtor   r  s   &&rr   rQ  UDPSocket.send  s      ++---..,,11333|||))++--))&&- -3 sJ   CCC+CCC2%C C9
CCCC		Cr  Nri   rj   rk   rl   r   r  r  r:  r5  rQ  rp   rh   rq   rr   r  r    s/     8 818"	. 	.rq   r  c                  \    ] tR tRtR R lt]R R l4       tR R ltR R	 ltR
 R lt	Rt
R# )ConnectedUDPSocketi  c                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   ConnectedUDPSocket.__annotate__  r  rq   c                	l    Wn         W n        \        R 4      V n        \        R4      V n        RV n        R# r  r  r  s   &&&rr   r   ConnectedUDPSocket.__init__  r  rq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r    r  rq   c                	8    V P                   P                  R 4      # r  r  r   s   &rr   r  ConnectedUDPSocket._raw_socket  r  rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r    r  rq   c                	   "   R V n         V P                  P                  4       '       g   V P                  P                  4        V P                  P
                  P                  4       G Rj  xL
  R#  L5ir  r  r   s   &rr   r:  ConnectedUDPSocket.aclose  r  r  c                   V ^8  d   QhRR/# rw   r   r/  rh   )rz   s   "rr   r{   r    s      u rq   c                	  "   V P                   ;_uu_ 4        \        P                  4       G R j  xL
  V P                  P                  '       gq   V P
                  P                  4       '       gQ   V P                  P                  P                  4        V P                  P                  P                  4       G R j  xL
   V P                  P                  P                  4       pT^ ,          uuR R R 4       #  L L>  \         d"    T P                  '       d   \        R h\        R hi ; i  + '       g   i     R # ; i5ir   r  )r   packets   & rr   r5  ConnectedUDPSocket.receive  s         ++--- >>,,,T__5O5O5Q5Q))//1nn//44666822::< !9! ! -
 7  8<<<-47-47	8 !  si   D?D+C8D+D+0AD+;C:<D+$C<%D+-D?8D+:D+<D(D((D++D<	6	D?c                    V ^8  d   QhRRRR/# rE  rh   )rz   s   "rr   r{   r    s     	- 	-u 	- 	-rq   c                	  "   V P                   ;_uu_ 4        \        P                  4       G R j  xL
  V P                  P                  P                  4       G R j  xL
  V P                  '       d   \        hV P                  P                  4       '       d   \        hV P                  P                  V4        R R R 4       R #  L Lj  + '       g   i     R # ; i5ir   r  r  s   &&rr   rQ  ConnectedUDPSocket.send  s      ++---..,,11333|||))++--))&&t, -3 sJ   CCC+CCC2%C!C:
CCCC		Cr  Nr  rh   rq   rr   r  r    s/     8 81&	- 	-rq   r  c                  .    ] tR tRtR R ltR R ltRtR# )UNIXDatagramSocketi  c                   V ^8  d   QhRR/# )rw   r   rS   rh   )rz   s   "rr   r{   UNIXDatagramSocket.__annotate__  s        5  rq   c                	  "   \        4       p\        P                  4       G R j  xL
  V P                  ;_uu_ 4          V P                  P                  R4      pVuuR R R 4       #  LB  \         d    T P                  T4      G R j  xL 
   KS  \         d&   pT P                  '       d   \        R h\        ThR p?ii ; i  + '       g   i     R # ; i5iNr=  )r	   r  r9  r  r  recvfromrV  r9  r  rH  r<   r:   r   r   r4  r  s   &   rr   r5  UNIXDatagramSocket.receive  s     !'')))   
 ++44U;D   !  	*
 ' :33D999 ;}}}1t;1s:	; !  h   "CA'CC A)CC)C B
	C CC C  B;;C  CC		Cc                    V ^8  d   QhRRRR/# )rw   r  rS   r   r   rh   )rz   s   "rr   r{   r    s      5 $ rq   c                	  "   \        4       p\        P                  4       G R j  xL
  V P                  ;_uu_ 4          V P                  P
                  ! V!    R R R 4       R #  L@  \         d    T P                  T4      G R j  xL 
   KQ  \         d&   pT P                  '       d   \        R h\        ThR p?ii ; i  + '       g   i     R # ; i5ir   )r	   r  r9  r  r  r  rV  rC  r  rH  r<   r:   r   r  r   r  s   &&  rr   rQ  UNIXDatagramSocket.send  s     !'')))
$$++T2   	*
 ' :33D999 ;}}}1t;1s:	; sh   "CA%CC A'CC'B>B	
B>CB>B> B99B>>CC		Crh   Nri   rj   rk   rl   r5  rQ  rp   rh   rq   rr   r  r         " rq   r  c                  .    ] tR tRtR R ltR R ltRtR# )ConnectedUNIXDatagramSocketi
  c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   (ConnectedUNIXDatagramSocket.__annotate__  s        u  rq   c                	  "   \        4       p\        P                  4       G R j  xL
  V P                  ;_uu_ 4          V P                  P                  R4      pVuuR R R 4       #  LB  \         d    T P                  T4      G R j  xL 
   KS  \         d&   pT P                  '       d   \        R h\        ThR p?ii ; i  + '       g   i     R # ; i5ir  )r	   r  r9  r  r  rU  rV  r9  r  rH  r<   r:   r  s   &   rr   r5  #ConnectedUNIXDatagramSocket.receive  s     !'')))   
 ++007D   !  	*
 ' :33D999 ;}}}1t;1s:	; !  r  c                    V ^8  d   QhRRRR/# rE  rh   )rz   s   "rr   r{   r    s      u  rq   c                	  "   \        4       p\        P                  4       G R j  xL
  V P                  ;_uu_ 4          V P                  P                  V4        R R R 4       R #  LA  \         d    T P                  T4      G R j  xL 
   KR  \         d&   pT P                  '       d   \        R h\        ThR p?ii ; i  + '       g   i     R # ; i5ir   )r	   r  r9  r  r  rQ  rV  rC  r  rH  r<   r:   r  s   &&  rr   rQ   ConnectedUNIXDatagramSocket.send  s     !'')))
$$))$/   	*
 ' :33D999 ;}}}1t;1s:	; sh   "CA&CC A(CC(B?B

B?CB?B? B::B??CC		Crh   Nr  rh   rq   rr   r  r  
  r  rq   r  read_eventsz'RunVar[dict[int, asyncio.Future[bool]]]_read_eventswrite_events_write_eventsc                  b    ] tR tRtRtR R ltR R ltR R ltR R	 ltR
 R lt	R R lt
RtR# )rE   i7  c                   V ^8  d   QhRR/# )rw   r   rE   rh   )rz   s   "rr   r{   Event.__annotate__:  s     # # #rq   c                	,    \         P                  V 4      # r   r+  r/  s   &rr   r-  Event.__new__:      ~~c""rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  =  s     & &$ &rq   c                	:    \         P                  ! 4       V n        R # r   )r  rE   _eventr   s   &rr   r   Event.__init__=  s    mmorq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  @  s      T rq   c                	:    V P                   P                  4        R # r   )r  r  r   s   &rr   r  	Event.set@  s    rq   c                   V ^8  d   QhRR/# r]  rh   )rz   s   "rr   r{   r  C  s     $ $ $rq   c                	6    V P                   P                  4       # r   )r  r   r   s   &rr   r   Event.is_setC  s    {{!!##rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  F  s     % %D %rq   c                	   "   V P                  4       '       d   \        P                  4       G R j  xL
  R # V P                  P	                  4       G R j  xL
  R #  L* L5ir   )r   r  r9  r  r   r   s   &rr   r   
Event.waitF  s@     ;;== ++---++""$$$ .$s!   .AA#AAAAc                   V ^8  d   QhRR/# )rw   r   r3   rh   )rz   s   "rr   r{   r  L  s     : :O :rq   c                	R    \        \        V P                  P                  4      4      # r   )r3   r  r  _waitersr   s   &rr   
statisticsEvent.statisticsL  s    s4;;#7#7899rq   )r  N)ri   rj   rk   rl   r  r-  r   r  r   r   r  rp   rh   rq   rr   rE   rE   7  s*    I#&$%: :rq   rE   c                  ~    ] tR tRtRtRR/R R lltR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tR# )rG   iP  fast_acquireFc                    V ^8  d   QhRRRR/# )rw   r  r  r   rG   rh   )rz   s   "rr   r{   Lock.__annotate__S  s     # #d #t #rq   c               	,    \         P                  V 4      # r   r+  r/  r  s   &$rr   r-  Lock.__new__S  r  rq   c                    V ^8  d   QhRRRR/# )rw   r  r  r   r   rh   )rz   s   "rr   r{   r  V  s     L L L Lrq   c               	>    Wn         R V n        \        4       V n        R # r   )_fast_acquire_owner_taskr   r  )r   r  s   &$rr   r   Lock.__init__V  s    )04DIGrq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  [  s     " "t "rq   c                	  "   \        \        P                  \        4       4      pV P                  fh   V P
                  '       gV   \        P                  4       G R j  xL
  Wn        V P                  '       g     \        P                  4       G R j  xL
  R # R # V P                  V8X  d   \        R4      h\        P                  ! 4       pW3pV P
                  P                  V4        VG R j  xL
  R #  L Lf  \         d    T P                  4        h i ; i L*  \         dW    TP                  4       '       d/    T P
                  P!                  T4       h   \"         d     h i ; iT P                  4        h i ; i5iNz)Attempted to acquire an already held Lock)r0   r  r	  r   r  r  r  rH  r  r  r   releaser   r   r  r   rT  r   )r   r   futr  s   &   rr   acquireLock.acquire[  s?    GLL,.1#DMMM 88:::# %%%(CCEEE
 t#JKK$+NN$4yT"	II+ ; F% LLN  		}}MM((.  "   		s   AF F C6F :C: C8C: AF *D /D0D 4F 8C: :DF D  E=>EE=E(%E='E((E==F c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r    s     	 	 	rq   c                	    \        \        P                  \        4       4      pV P                  f   V P
                  '       g	   Wn        R # V P                  VJ d   \        R4      h\        hr#  )r0   r  r	  r   r  r  r   r?   )r   r   s   & rr   acquire_nowaitLock.acquire_nowait  sQ    GLL,.1#DMMM#t#JKKrq   c                   V ^8  d   QhRR/# r]  rh   )rz   s   "rr   r{   r    s     , , ,rq   c                	    V P                   R J# r   )r  r   s   &rr   lockedLock.locked  s    t++rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r    s          rq   c                	   V P                   \        4       8w  d   \        R 4      hV P                  '       dN   V P                  P	                  4       w  rVP                  4       '       d   KF  Wn         VP                  R4       R# RV n         R# )z)The current task is not holding this lockN)r  r   r   r  r  r   r   )r   r   r%  s   &  rr   r$  Lock.release  sh    |~-JKK
 mmm--/ID}}#NN4 rq   c                   V ^8  d   QhRR/# )rw   r   r4   rh   )rz   s   "rr   r{   r    s     L LN Lrq   c                	    V P                   '       d   \        V P                   4      MR p\        V P                  4       V\	        V P
                  4      4      # r   )r  AsyncIOTaskInfor4   r.  r  r  )r   	task_infos   & rr   r  Lock.statistics  s=    9=9I9I9IOD$4$45t	dkkmYDMM8JKKrq   )r  r  r  N)ri   rj   rk   rl   r  r-  r   r&  r*  r.  r$  r  rp   rh   rq   rr   rG   rG   P  sB    :I#U #Lu L
"H	, $L Lrq   rG   c                     a  ] tR tRtRtRRRR/R R lltRRRR/R V 3R	 llltR
 R ltR R ltR R lt	]
R R l4       t]
R R l4       tR R ltRtV ;t# )rK   i  	max_valueNr  Fc               (    V ^8  d   QhRRRRRRRR/# )	rw   initial_valuer  r9  r  r  r  r   rK   rh   )rz   s   "rr   r{   Semaphore.__annotate__  s2     # ## 	#
 # 
#rq   c               	,    \         P                  V 4      # r   r+  r/  r;  r9  r  s   &&$$rr   r-  Semaphore.__new__  s     ~~c""rq   c               $    V ^8  d   QhRRRRRR/# )rw   r;  r  r9  r  r  r  rh   )rz   s   "rr   r{   r<    s(     = == 	=
 =rq   c               	j   < \         SV `  WR 7       Wn        W n        W0n        \        4       V n        R# ))r9  N)r	  r   _value
_max_valuer  r   r  )r   r;  r9  r  r  s   &&$$rr   r   Semaphore.__init__  s.     	<##)5:Wrq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r<    s      t rq   c                	  "   V P                   ^ 8  d{   V P                  '       gi   \        P                  4       G Rj  xL
  V ;P                   ^,          un         V P                  '       g     \        P                  4       G Rj  xL
  R# R# \        P                  ! 4       pV P                  P                  V4        VG Rj  xL
  R#  L LG  \         d    T P                  4        h i ; i L*  \         dW    TP                  4       '       d/    T P                  P                  T4       h   \         d     h i ; iT P                  4        h i ; i5ir  )rB  r  r  rH  r  r  r   r$  r  r   r  r   rT  r   r   r%  s   & rr   r&  Semaphore.acquire  s    ;;?4=== 88:::KK1K %%%(CCEEE
 $+NN$4S!	II# ; F% LLN  		}}MM((-  "   		s   #EEC.E.C CC 
4E?C1 C/C1 	EC C,,E/C1 1 ED/.E/D=:E<D==EEc                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r<    s       rq   c                	f    V P                   ^ 8X  d   \        hV ;P                   ^,          un         R# r  )rB  r?   r   s   &rr   r*  Semaphore.acquire_nowait  s"    ;;!qrq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r<    s       rq   c                	N   V P                   e'   V P                  V P                   8X  d   \        R4      hV P                  '       dF   V P                  P	                  4       pVP                  4       '       d   KD  VP                  R 4       R # V ;P                  ^,          un        R # )Nz!semaphore released too many times)rC  rB  r   r  r  r   r   rG  s   & rr   r$  Semaphore.release  sm    ??&4;;$//+I@AAmmm--'')C}}NN4 qrq   c                   V ^8  d   QhRR/# rf  rh   )rz   s   "rr   r{   r<    s      s rq   c                	    V P                   # r   )rB  r   s   &rr   r  Semaphore.value  r  rq   c                   V ^8  d   QhRR/# r{  rh   )rz   s   "rr   r{   r<    s      : rq   c                	    V P                   # r   )rC  r   s   &rr   r9  Semaphore.max_value  s    rq   c                   V ^8  d   QhRR/# )rw   r   rI   rh   )rz   s   "rr   r{   r<    s     7 7/ 7rq   c                	>    \        \        V P                  4      4      # r   )rI   r  r  r   s   &rr   r  Semaphore.statistics  s    "3t}}#566rq   )r  rC  rB  r  )rB  rC  r  r  )ri   rj   rk   rl   r  r-  r   r&  r*  r$  r  r  r9  r  rp   r$  r%  s   @rr   rK   rK     s    CI# !%	#
 ##= !%	=
 #= =>    7 7rq   rK   c                     ] tR tRtR$tR R ltR R ltR R ltR R	 lt]	R
 R l4       t
]
P                  R R l4       t
]	R R l4       t]	R R l4       tR R ltR R ltR R ltR R ltR R ltR R ltR R ltR  R! ltR"tR## )%rC   i  c                    V ^8  d   QhRRRR/# )rw   total_tokensr(  r   rC   rh   )rz   s   "rr   r{   CapacityLimiter.__annotate__  s     # #5 #_ #rq   c                	,    \         P                  V 4      # r   r+  r/  rZ  s   &&rr   r-  CapacityLimiter.__new__  r  rq   c                   V ^8  d   QhRR/# )rw   rZ  r(  rh   )rz   s   "rr   r{   r[    s     ) )U )rq   c                	\    ^ V n         \        4       V n        \        4       V n        Wn        R# r  )_total_tokensr  
_borrowersr   _wait_queuerZ  )r   rZ  s   &&rr   r   CapacityLimiter.__init__  s#    $%$'E<GM(rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r[    s      $ rq   c                	B   "   V P                  4       G R j  xL
  R #  L5ir   )r&  r   s   &rr   r  CapacityLimiter.__aenter__  s     llns   c               (    V ^8  d   QhRRRRRRRR/# r   rh   )rz   s   "rr   r{   r[    s2      , & %	
 
rq   c                	.   "   V P                  4        R # 5ir   )r$  r   s   &&&&rr   r  CapacityLimiter.__aexit__  s      	s   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r[    s     " "e "rq   c                	    V P                   # r   )ra  r   s   &rr   rZ  CapacityLimiter.total_tokens  s    !!!rq   c                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   r[    s     # #% #D #rq   c                	   \        V\        4      '       g(   \        P                  ! V4      '       g   \	        R 4      hV^ 8  d   \        R4      h\        WP                  ,
          ^ 4      pWn        V P                  '       d_   V'       dU   V P                  P                  RR7      w  r4V P                  P                  V4       VP                  4        V^,          pKn  R# R# )z'total_tokens must be an int or math.infztotal_tokens must be >= 0FlastN)r  r  rf  isinfr  r   maxra  rc  popitemrb  rF  r  )r   r  waiters_to_notifyborrowerevents   &&   rr   rZ  rm    s    %%%djj.?.?EFF19899(:(: :A>" #4"..66E6BOHOO)IIK"	 $5rq   c                   V ^8  d   QhRR/# rf  rh   )rz   s   "rr   r{   r[  *  s     $ $ $rq   c                	,    \        V P                  4      # r   )r  rb  r   s   &rr   borrowed_tokensCapacityLimiter.borrowed_tokens)  s    4??##rq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r[  .  s     9 9% 9rq   c                	N    V P                   \        V P                  4      ,
          # r   )ra  r  rb  r   s   &rr   available_tokens CapacityLimiter.available_tokens-  s    !!C$888rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r[  1  s      T rq   c                   V P                   '       dr   \        V P                  4      V P                  8  dL   V P                   P	                  RR7      w  rV P                  P                  V4       VP                  4        R# R# R# )z3Hand a free token to the next task in line, if any.Frp  N)rc  r  rb  ra  rt  rF  r  r   rv  rw  s   &  rr   _notify_next_waiter#CapacityLimiter._notify_next_waiter1  sc    DOO 4t7I7I I"..66E6BOHOO)IIK !Jrq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r[  8  s     9 9 9rq   c                	8    V P                  \        4       4       R # r   )acquire_on_behalf_of_nowaitr   r   s   &rr   r*  CapacityLimiter.acquire_nowait8  s    ((8rq   c                    V ^8  d   QhRRRR/# rw   rv  r,  r   r   rh   )rz   s   "rr   r{   r[  ;  s     	& 	&F 	&t 	&rq   c                	    WP                   9   d   \        R 4      hV P                  '       g%   \        V P                   4      V P                  8  d   \
        hV P                   P                  V4       R# )zEthis borrower is already holding one of this CapacityLimiter's tokensN)rb  r   rc  r  ra  r?   rF  r   rv  s   &&rr   r  +CapacityLimiter.acquire_on_behalf_of_nowait;  sX    &W  s4??3t7I7IIH%rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r[  F  s     ? ?t ?rq   c                	P   "   V P                  \        4       4      G R j  xL
 #  L5ir   )acquire_on_behalf_ofr   r   s   &rr   r&  CapacityLimiter.acquireF  s     ..|~>>>>   &$&c                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   r[  I  s      6 d rq   c                	d  "   \         P                  4       G R j  xL
   V P                  V4        \         P                  4       G R j  xL
  R #  L5 L  \         d    T P                  4        h i ; i  \         d    \        P                  ! 4       pY P                  T&    TP                  4       G R j  xL 
   R #   \         d`    T P                  P                  TR 4       TP                  4       '       d,   T P                  P                  T4       T P                  4        h i ; ii ; i5ir   )r  rH  r  r  r  r$  r?   r  rE   rc  r   popr   rb  rG  r  r  s   && rr   r  $CapacityLimiter.acquire_on_behalf_ofI  s     44666	,,X6$??AAA# 	7" B    	MMOE).X&jjl""    $$Xt4<<>>OO++H5,,.	ss   D0AD0A4 A 	A
A D0A A11D04.D-#B?6B97B?<D0?<D)<-D))D--D0c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r[  `  s     2 2 2rq   c                	8    V P                  \        4       4       R # r   )release_on_behalf_ofr   r   s   &rr   r$  CapacityLimiter.release`  s    !!,.1rq   c                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   r[  c  s     # #V # #rq   c                	     V P                   P                  V4       T P	                  4        R#   \         d    \        R 4      Rhi ; i)z@this borrower isn't holding any of this CapacityLimiter's tokensN)rb  rT  rH  r   r  r  s   &&rr   r  $CapacityLimiter.release_on_behalf_ofc  sK    	OO""8, 	  "  	R	s	   / Ac                   V ^8  d   QhRR/# )rw   r   r2   rh   )rz   s   "rr   r{   r[  m  s     
 
5 
rq   c                	    \        V P                  V P                  \        V P                  4      \        V P                  4      4      # r   )r2   rz  rZ  tuplerb  r  rc  r   s   &rr   r  CapacityLimiter.statisticsm  s;    (  $//"  !	
 	
rq   )rb  ra  rc  rZ  N)ra  rb  rc  )ri   rj   rk   rl   r  r-  r   r  r  r  rZ  r  rz  r~  r  r*  r  r&  r  r$  r  r  rp   rh   rq   rr   rC   rC     s    <I#) " " # #" $ $ 9 99	&?.2#
 
rq   rC   _default_thread_limiterzRunVar[CapacityLimiter]c                  ^    ] tR tRtR R ltR R ltR R ltR R	 ltR
 R ltR R lt	Rt
R# )_SignalReceiveri~  c                   V ^8  d   QhRR/# )rw   signalsztuple[Signals, ...]rh   )rz   s   "rr   r{   _SignalReceiver.__annotate__  s     4 4 3 4rq   c                	    Wn         \        4       V n        \        4       V n        \
        P                  ! 4       V n        \        4       V n	        R # r   )
_signalsr	   r   r   _signal_queuer  r   r  r  _handled_signals)r   r  s   &&rr   r   _SignalReceiver.__init__  s3    %'
-2W'.~~'7.1erq   c                    V ^8  d   QhRRRR/# )rw   r   r$   r   r   rh   )rz   s   "rr   r{   r    s     * *w *4 *rq   c                	    V P                   P                  V4       V P                  P                  4       '       g   V P                  P	                  R 4       R # R # r   )r  r  r  r   r   )r   r   s   &&rr   _deliver_SignalReceiver._deliver  s@    !!&)||  ""LL##D) #rq   c                   V ^8  d   QhRR/# rw   r   r  rh   )rz   s   "rr   r{   r    s      ? rq   c                	    \        V P                  4       FD  pV P                  P                  WP                  V4       V P
                  P                  V4       KF  	  V # r   )r  r  r   add_signal_handlerr  r  rF  )r   sigs   & rr   r   _SignalReceiver.__enter__  sH    t}}%CJJ))#}}cB!!%%c* & rq   c               (    V ^8  d   QhRRRRRRRR/# r   rh   )rz   s   "rr   r{   r    s2     2 2,2 &2 %	2
 
2rq   c                	b    V P                    F  pV P                  P                  V4       K   	  R # r   )r  r   remove_signal_handler)r   r   r   r   r  s   &&&& rr   r   _SignalReceiver.__exit__  s&     ((CJJ,,S1 )rq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r    s      ? rq   c                	    V # r   rh   r   s   &rr   	__aiter___SignalReceiver.__aiter__  s    rq   c                   V ^8  d   QhRR/# )rw   r   r$   rh   )rz   s   "rr   r{   r    s     , , ,rq   c                	   "   \         P                  4       G R j  xL
  V P                  '       g/   \        P                  ! 4       V n        V P
                  G R j  xL
  V P                  P                  4       #  L^ L 5ir   )r  r9  r  r  r   r  r  r   s   &rr   	__anext___SignalReceiver.__anext__  s]     '')))!!!">>+DL,,!!))++ 	* s&   A=A9A=)A=A;A=;A=)r  r  r   r  r  N)ri   rj   rk   rl   r   r  r   r   r  r  rp   rh   rq   rr   r  r  ~  s%    4*
2, ,rq   r  c                  :   a  ] tR tRtR V 3R lltR R ltRtV ;t# )r5  i  c                   V ^8  d   QhRR/# )rw   r   r   rh   )rz   s   "rr   r{   AsyncIOTaskInfo.__annotate__  s     
' 
'\ 
'rq   c                	  < \         P                  V4      pVf   R pMVP                  pVP                  4       pVf   Q R4       h\        SV `  \        V4      W1P                  4       V4       \        P                  ! V4      V n
        R # )Nz&created TaskInfo from a completed Task)r
  r  r  r  r	  r   r~  get_nameweakrefrefr  )r   r   rM  r  r   r  s   &&   rr   r   AsyncIOTaskInfo.__init__  sq    !%%d+
I",,I}}I!IID9mmotD[[&
rq   c                   V ^8  d   QhRR/# r]  rh   )rz   s   "rr   r{   r    s      $ rq   c                	t   V P                  4       ;p'       g   R # VP                  '       d   R# \        VP                  \        P
                  4      '       d#   VP                  P                  4       '       d   R# \        P                  V4      ;p'       d!   VP                  ;p'       d   VP                  # R # )FT)r  rn  r  ro  r  r   r   r
  r  r  r_  )r   r   rM  r  s   &   rr   has_pending_cancellation(AsyncIOTaskInfo.has_pending_cancellation  s    

$$t''88  **,,%))$//:/)666|6#:::rq   )r  )ri   rj   rk   rl   r   r  rp   r$  r%  s   @rr   r5  r5    s    
' 
' rq   r5  c                      ] tR tRt$ R]R&   RRRRR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R!tR# )"
TestRunneri  zBMemoryObjectSendStream[tuple[Awaitable[Any], asyncio.Future[Any]]]_send_streamrt   N
use_uvloopFru   c               (    V ^8  d   QhRRRRRRRR/# )	rw   rt   rx   r  r  ru   ry   r   r   rh   )rz   s   "rr   r{   TestRunner.__annotate__  s4     6 6 6 	6
 =6 
6rq   c               	    V'       d;   Vf7   \         P                  R8w  d   ^ R IpVP                  pM^ R IpVP                  p\        WR7      V n        . V n        R V n        R # )Nwin32rt   ru   )	r@  platformuvloopr   winloopr[   _runnerr  _runner_task)r   rt   r  ru   r  r  s   &$$$  rr   r   TestRunner.__init__  sP     ,.||w&%44&55EE0215rq   c                   V ^8  d   QhRR/# )rw   r   r  rh   )rz   s   "rr   r{   r    s      : rq   c                	    V P                   P                  4        V P                  4       P                  V P                  4       V # r   )r  r   r   set_exception_handler_exception_handlerr   s   &rr   r   TestRunner.__enter__  s1     --d.E.EFrq   c               (    V ^8  d   QhRRRRRRRR/# r   rh   )rz   s   "rr   r{   r    s2     9 9,9 &9 %	9
 
9rq   c                	>    V P                   P                  WV4       R # r   )r  r   r   s   &&&&rr   r   TestRunner.__exit__  s     	h8rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r    s     ' '+ 'rq   c                	6    V P                   P                  4       # r   )r  r   r   s   &rr   r   TestRunner.get_loop  s    ||$$&&rq   c                   V ^8  d   QhRR/# r]  rh   )rz   s   "rr   r{   r    s      D rq   c                	V     \         P                  ! 4        R #   \         d     R# i ; i)TF)r  r	   r   r   s   &rr   
is_runningTestRunner.is_running  s(    	$$& 		s    ((c               $    V ^8  d   QhRRRRRR/# )rw   r   r+  r   dict[str, Any]r   r   rh   )rz   s   "rr   r{   r    s$     4 4-48F4	4rq   c                	    \        VP                  R 4      \        4      '       d%   V P                  P	                  VR ,          4       R# VP                  V4       R# )r   N)r  r  r   r  r  default_exception_handler)r   r   r   s   &&&rr   r  TestRunner._exception_handler  sA     gkk+.	::##GK$89**73rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  	  s     	 	 	rq   c                	    V P                   '       dC   V P                   . uqn         \        V4      ^8X  d
   V^ ,          hV'       d   \        RV4      hR# R# )r   z6Multiple exceptions occurred in asynchronous callbacksN)r  r  rb   )r   r`   s   & rr   _raise_async_exceptions"TestRunner._raise_async_exceptions	  sV    +/+;+;R(J(:!# m#(Lj  	 rq   c                    V ^8  d   QhRRRR/# )rw   receive_streamzOMemoryObjectReceiveStream[tuple[Awaitable[T_Retval], asyncio.Future[T_Retval]]]r   r   rh   )rz   s   "rr   r{   r  	  s      2 2
2
 
2rq   c                	  "   ^ RI Hp T;_uu_ 4        V P                  ;_uu_ 4        V  Rj  xL
  w  r4 VG Rj  xL
 pVP                  4       '       g   VP	                  V4       K@  KB   L= L1  \
         d7   pTP                  4       '       g   TP                  ! TP                  !   h Rp?i\         dL   pTP                  4       '       g   TP                  T4       \        T\        T34      '       g   h  Rp?K  Rp?ii ; iD RRR4       M  + '       g   i     M; iRRR4       R#   + '       g   i     R# ; i5ir   )OutcomeExceptionN)_pytest.outcomesr  r  r   r   r   r   r   r  r   r  r   )r   r  r  r   r   retvalr  s   &&     rr   _run_tests_and_fixtures"TestRunner._run_tests_and_fixtures	  s      	6^T...&4 2 2ld2#'ZF "++--))&1 .2'% !++--sxx0$ !++--,,S1%cI7G+HII J	 '5 /...^^^^s   ED1D	D	
A-D	
D	A1
A/A1
+D	-D	
/A1
1D<1B--D:D;A D;D	DD		D1D$D1'
E1E	<	Ec               (    V ^8  d   QhRRRRRRRR/# )	rw   r  z Callable[P, Awaitable[T_Retval]]r   zP.argskwargszP.kwargsr   r   rh   )rz   s   "rr   r{   r  *	  s2      . 	
  
rq   c               	  "   V P                   '       gy   \        \        \        \        ,          \
        P                  3,          ,          ! ^4      w  V n        pV P                  4       P                  V P                  V4      4      V n         V! V/ VB pV P                  4       P                  4       pV P                  P                  WV34       VG Rj  xL
 #  L5i)r   N)r  rA   r  r   r,   r  r   r  r   r   r  r   send_nowait)r   r  r   r   r  r   r   s   ""*,   rr   _call_in_runner_taskTestRunner._call_in_runner_task*	  s         0Kingnn4511-D~ !% ; ;,,^<!D T$V$+/==?+H+H+J%%tn5||s   CCCCc               $    V ^8  d   QhRRRRRR/# )rw   fixture_funcz,Callable[..., AsyncGenerator[T_Retval, Any]]r   r  r   zIterable[T_Retval]rh   )rz   s   "rr   r{   r  >	  s-     G GBG G 
	Grq   c              #  	  "   V! R/ VB pV P                  4       P                  V P                  VP                  R 4      4      pV P	                  4        Vx   V P                  4       P                  V P                  VP                  R 4      4       V P                  4       P                  VP                  4       4       \        R4      h  \         d    T P	                  4         R # i ; i5i)Nz$Async generator fixture did not stoprh   )r   r   r  asendr  r:  r   StopAsyncIteration)r   r  r   asyncgenfixturevalues   &&&  rr   run_asyncgen_fixtureTestRunner.run_asyncgen_fixture>	  s     
  )&)!%!C!C%%hnnd;"
 	$$&	GMMO..))(..$? MMO..x/@AEFF	 " 	+((*	+s*   AC,9C
 8C,
C)%C,(C))C,c               $    V ^8  d   QhRRRRRR/# )rw   r  z,Callable[..., Coroutine[Any, Any, T_Retval]]r   r  r   r   rh   )rz   s   "rr   r{   r  U	  s(     	 	B	 	 
		rq   c                	    V P                  4       P                  V P                  ! V3/ VB 4      pV P                  4        V# r   )r   r   r  r  )r   r  r   r  s   &&& rr   run_fixtureTestRunner.run_fixtureU	  s@    
 33%%l=f=
 	$$&rq   c               $    V ^8  d   QhRRRRRR/# )rw   	test_funcz'Callable[..., Coroutine[Any, Any, Any]]r   r  r   r   rh   )rz   s   "rr   r{   r  `	  s$     ' '@'JX'	'rq   c                	   ^ RI Hp  V P                  4       P                  V P                  ! V3/ VB 4       T P                  4        R#   \
         d&   pT P                  P                  T4        Rp?L=Rp?iT d    h \         d    T P                  e   T P                  P                  4       '       g   T P                  P                  4        T P                  P                  4         T P                  4       P                  T P                  4       M  \         d     Mi ; iRT n	        h   RT n	        i ; ih i ; ir  )r  r  r   r   r  r   r  r  r  r  r   r   r  r   r   r  )r   r  r   r  r  s   &&&  rr   run_testTestRunner.run_test`	  s    	6	MMO..)))>v>* 	$$&%  	)##C(( 	 	   ,T5F5F5K5K5M5M!!((*!!'')-MMO66t7H7HI%  )-D% )-D%	s_   0A
 
D>A55D>>
D>	.D>84D>-)DD0D%"D0$D%%D0(D>0	D99D>)r  r  r  r  )ri   rj   rk   rl   r>  r   r   r   r   r  r  r  r  r  r  r  r  rp   rh   rq   rr   r  r    sj    TT6 "6 !	6
 @D6*
9'4	26(G.	' 'rq   r  c                  D   a  ] tR tRtRtR V 3R lltR V 3R lltRtV ;t# )_ProcessStreamProtocoli~	  z
A subprocess protocol that allows us to be notified of ``process_exited``

asyncio's own ``Process.wait()`` only resolves once every pipe transport has
disconnected so to get same semantics as on trio and uvloop we need this.
c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   #_ProcessStreamProtocol.__annotate__	  s     & &$ &rq   c                	   < \         SV `  R\        P                  ! 4       R7       \        P                  ! 4       V n        R# )rw   )limitr   Nr=  )r	  r   r  r	   rE   exitedr   r  s   &rr   r   _ProcessStreamProtocol.__init__	  s+    u7+C+C+EFmmorq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r  	  s       rq   c                	X   < \         SV `  4        V P                  P                  4        R # r   )r	  process_exitedr  r  r  s   &rr   r"  %_ProcessStreamProtocol.process_exited	  s     rq   )r  )	ri   rj   rk   rl   r  r   r"  rp   r$  r%  s   @rr   r  r  ~	  s    & &
 rq   r  c            	      @   ] tR tRt]R R l4       t]R R l4       t]R R l4       t]R R	 l4       t]R
 R l4       t	]R R l4       t
]R R l4       t]R R l4       t]R]P                  RR/R R ll4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]RR R!R/R" R# ll4       t]R$ R% l4       t]RgR& R' ll4       t]R( R) l4       t]R* R+ l4       t]R, R- l4       t]R. R/ l4       t]R0 R1 l4       t]RhR2 R3 ll4       t]R4 R5 l4       t]R6 R7 l4       t]R8 R9 l4       t]R: R; l4       t ]R< R= l4       t!]R>^ R?^ R@^ RA^ /RB RC ll4       t"]RiRD RE ll4       t#]RF RG l4       t$]RH RI l4       t%]RJ RK l4       t&]RL RM l4       t']RN RO l4       t(]RP RQ l4       t)]RR RS l4       t*]RT RU l4       t+]RV RW l4       t,]RX RY l4       t-]RZ R[ l4       t.]R\ R] l4       t/]R^ R_ l4       t0]R` Ra l4       t1]Rb Rc l4       t2]Rd Re l4       t3Rft4R # )jr  i	  c          
     ,    V ^8  d   QhRRRRRRRRRR	/# )
rw   r  z1Callable[[Unpack[PosArgsT]], Awaitable[T_Retval]]r   tuple[Unpack[PosArgsT]]r   r  optionsr   r   rh   )rz   s   "rr   r{   AsyncIOBackend.__annotate__	  s<     ) )?) &) 	)
  ) 
)rq   c                	  aa \        S4      R  VV3R ll4       pVP                  RR4      pVP                  RR4      pVfO   VP                  RR4      '       d7   \        P                  R8w  d   ^ RIpVP
                  pM^ RIp	V	P
                  p\        WgR7      ;_uu_ 4       p
V
P                  V! 4       4      uuRRR4       #   + '       g   i     R# ; i)	c                   V ^8  d   QhRR/# )rw   r   r   rh   )rz   s   "rr   r{   (AsyncIOBackend.run.<locals>.__annotate__	  s     	' 	'x 	'rq   c                    <"   \        \        P                  \        4       4      p V P	                  \        S4      4       \        R R 4      \        V &    S! S!  G R j  xL
 \        V  #  L  \        T  i ; i5ir   )r0   r  r	  r   set_namerV   rI  r
  )r   r   r  s    rr   wrapper#AsyncIOBackend.run.<locals>.wrapper	  s`     ln5DMM+D12!*4!6L'!4[( & ) &s0   AA7	A+ A)A+ !A7)A+ +	A44A7rt   Nru   r  Fr  r  )	r   r  r@  r  r  r   r  r[   r   )r/  r  r   r   r'  r.  rt   ru   r  r  runners   &ff&&      rr   r   AsyncIOBackend.run	  s     
t	' 	' 
	' GT*{{>48GKKe$D$D||w&%44&55%;;v::gi( <;;;s   %CC	c                   V ^8  d   QhRR/# )rw   r   r,  rh   )rz   s   "rr   r{   r(  	  s     " "f "rq   c                	    \        4       # r   )r	   r   s   &rr   current_tokenAsyncIOBackend.current_token	  s    !!rq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r(  	  s     ) )U )rq   c                	2    \        4       P                  4       # r   )r	   rh  r   s   &rr   r  AsyncIOBackend.current_time	  s    !&&((rq   c                   V ^8  d   QhRR/# )rw   r   ztype[BaseException]rh   )rz   s   "rr   r{   r(  	  s      *= rq   c                	    \         # r   )r   r   s   &rr   cancelled_exception_class(AsyncIOBackend.cancelled_exception_class	  s    rq   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r(  	  s       rq   c                	8   "   \        ^ 4      G Rj  xL
  R#  L5ir  r
   r   s   &rr   r9  AsyncIOBackend.checkpoint	  s     Ah   c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r(  	  s     : :d :rq   c                	(  "   \        4       pVf   R #  \        V,          P                  pT'       dJ   TP                  '       d   \        ^ 4      G R j  xL
  K/  TP                  '       d   R # TP                  pKQ  R #   \         d     R # i ; i L<5ir   )r   r
  r  rH  rp  r
   r%  r  )r/  r   r  s   &  rr   rH  &AsyncIOBackend.checkpoint_if_cancelled	  s}     ~<	'-::L )))Ah$$$+99   		
 sD   BA> BBBBB,B>B	BBBc                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r(  	  s       rq   c                	   "   \        R R7      ;_uu_ 4        \        ^ 4      G Rj  xL
  RRR4       R#  L  + '       g   i     R# ; i5i)Tr  N)rM   r
   r   s   &rr   r  )AsyncIOBackend.cancel_shielded_checkpoint	  s1     %%(NN &% &%%s%   A757
A7A		Ac                    V ^8  d   QhRRRR/# )rw   delayr(  r   r   rh   )rz   s   "rr   r{   r(  	  s       $ rq   c                	8   "   \        V4      G R j  xL
  R #  L5ir   r?  )r/  rI  s   &&rr   r
   AsyncIOBackend.sleep	  s     ElrA  r$  r%  Fc               $    V ^8  d   QhRRRRRR/# r'  rh   )rz   s   "rr   r{   r(  	  s$     = ==48=	=rq   c               	    \        WR 7      # ))r$  r%  rL   r.  s   &$$rr   create_cancel_scope"AsyncIOBackend.create_cancel_scope	  s     H<<rq   c                   V ^8  d   QhRR/# r  rh   )rz   s   "rr   r{   r(  	  s      5 rq   c                	   \        4       ;pf   \        P                  #  \        V,          P                  p\        P                  pT'       d_   \        Y2P                  4      pTP                  '       d   \        P                  ) p T# TP                  '       d    T# TP                  pKf  T#   \
         d    \        P                  u # i ; ir   )r   rf  rg  r
  r  rH  minr$  r9  r%  r  )r/  r   r  r$  s   &   rr   current_effective_deadline)AsyncIOBackend.current_effective_deadline	  s     N"D+88O	'-::L 888%:%:;H*** HH9  $$$   ,99  	88O	s   B/ /CCc                   V ^8  d   QhRR/# )rw   r   zabc.TaskGrouprh   )rz   s   "rr   r{   r(  	  s      - rq   c                	    \        4       # r   )r  r   s   &rr   create_task_group AsyncIOBackend.create_task_group	  s
    {rq   c                   V ^8  d   QhRR/# )rw   r   z	abc.Eventrh   )rz   s   "rr   r{   r(  
  s      Y rq   c                	    \        4       # r   rD   r   s   &rr   create_eventAsyncIOBackend.create_event 
  s	    wrq   c                    V ^8  d   QhRRRR/# )rw   r  r  r   zabc.Lockrh   )rz   s   "rr   r{   r(  
  s     / /$ /8 /rq   c               	    \        VR 7      # ))r  rF   r  s   &$rr   create_lockAsyncIOBackend.create_lock
  s    ..rq   r9  Nr  c               (    V ^8  d   QhRRRRRRRR/# )	rw   r;  r  r9  r  r  r  r   zabc.Semaphorerh   )rz   s   "rr   r{   r(  	
  s8     X XX 	X
 X 
Xrq   c               	    \        WVR 7      # ))r9  r  rJ   r>  s   &&$$rr   create_semaphoreAsyncIOBackend.create_semaphore
  s     ,WWrq   c                    V ^8  d   QhRRRR/# )rw   rZ  r(  r   zabc.CapacityLimiterrh   )rz   s   "rr   r{   r(  
  s     - -5 -=P -rq   c                	    \        V4      # r   rB   r]  s   &&rr   create_capacity_limiter&AsyncIOBackend.create_capacity_limiter
  s    |,,rq   c          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )rw   r  &Callable[[Unpack[PosArgsT]], T_Retval]r   r&  abandon_on_cancelr  limiterzabc.CapacityLimiter | Noner   r   rh   )rz   s   "rr   r{   r(  
  s<     :$ :$4:$ &:$  	:$
 ,:$ 
:$rq   c                	  "   V P                  4       G R j  xL
   \        P                  4       p\        P                  4       pT;'       g    V P                  4       ;_uu_4       GR j  xL
  \        V'       * R7      ;_uu_ 4       p\        P                  \        ,          ! 4       p\        4       p	V'       g_   \        WV4      p
V
P                  4        VP                  V
4       V	P!                  V
P"                  \$        P&                  ! 4       R7       MVP)                  4       p
V P+                  4       pV'       du   W^ ,          P,                  ,
          \        P.                  8  d   MGVP1                  4       pVP2                  P5                  VP"                  4       VP#                  4        K|  \7        4       pVP9                  \:        R 4       V'       g   VP<                  f   TpMVP<                  pV
P>                  PA                  WW(V34       VG R j  xL
 uuR R R 4       uuR R R 4      GR j  xL
  #  EL(  \         dC    \        4       p\        4       p\        P                  T4       \        P                  T4        ELIi ; i EL' Lv L]  + '       g   i     M; iR R R 4      GR j  xL 
  R #   + GR j  xL 
 '       g   i     R # ; i5i)Nr  )r   )!r9  r&  r  r'  LookupErrorr   r  current_default_thread_limiterrM   r  r   r   r  r  r   rF  r  r!  r   r   r  r  r  r#  r  r  remove_done_callbackr   r   r8   r  r
  r   )r/  r  r   rk  rl  r  r  ru  r   r  workernowexpired_workerr   worker_scopes   &&&&&          rr   run_sync_in_worker_thread(AsyncIOBackend.run_sync_in_worker_thread
  s     nn	-3779L)--/G BBc@@BBBB(9$9::e 13*,	#))lKFLLNKK'//[-@-@-B 0  *--/F **,C&q/"<"<<*889 ")5)=)=)?&00EE*// '++-&.5t<$(;(;(C#(L#(#6#6L''l(ST#|K ;: CBB 	  	- 7LeG$((6##G,		- CL $M C:: CBBBBBs   KH>K(I KK*J+K.J>B8J	CJ	JJ	!
J>+K8J9KA	J
KJKJ	KJ(#J>+K6J97K>K	K
K	K		Kc                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r(  T
  s     	( 	( 	(rq   c                	    \         P                  pVeM   VP                  '       d   \        R\	        V4      R 24      hVP
                  '       d   R # VP                  pKP  R # )Nr  r}  )r9   r  rp  r   r~  r%  r  )r/  ru  s   & rr   check_cancelledAsyncIOBackend.check_cancelledS
  sT    $0$E$E"""$'B2e9Q-%PQQ|||''E  rq   c               (    V ^8  d   QhRRRRRRRR/# )	rw   r  r  r   r&  tokenr,  r   r   rh   )rz   s   "rr   r{   r(  `
  s2        E  &  	 
 
 rq   c                	  aaa R  VVV3R llp\        RT;'       g    \        P                  P                  4      pVP	                  4       '       d   \
        h\        4       pVP                  \        R4       \        \        RR4      oVP                  \        P                  V! 4       VR7      pVP                  4       # )c                   V ^8  d   QhRR/# )rw   r   r   rh   )rz   s   "rr   r{   :AsyncIOBackend.run_async_from_thread.<locals>.__annotate__f
  s     	/ 	/D 	/rq   c                   <"   R p SeQ   \        \        P                  \        4       4      p\	        RS4      \
        V&   SP                  P                  V4        S! S!  G Rj  xL
 Se   SP                  P                  X4       # #  L$  \         d/   p\        P                  P                  \        T4      4      RhRp?ii ; i  Se   SP                  P                  X4       i i ; i5ir  )r0   r  r	  r   rI  r
  r?  rF  rG  r   
concurrentfuturesr  )__tracebackhide__r   r  r   r  ru  s      rr   task_wrapper:AsyncIOBackend.run_async_from_thread.<locals>.task_wrapperf
  s      $ GLL,.9%.tU%;T"  &/!4[( $LL((. %	 )! L ((77CAtKL $LL((. %sH   AC,	B $B	%B (!C,	B C)B??CC "C))C,r   r  r  N)r   )r0   r9   r4  native_tokenr  r>   r   r   r8   r   r  run_coroutine_threadsafer  )	r/  r  r   r|  r  r   r   r  ru  s	   &ff&    @rr   run_async_from_thread$AsyncIOBackend.run_async_from_thread_
  s    	/ 	/ !Q!Q,*D*D*Q*Q
 >>"".-y9&<dC-4[[,,ln4 .9 .
 xxzrq   c               (    V ^8  d   QhRRRRRRRR/# )	rw   r  rj  r   r&  r|  r,  r   r   rh   )rz   s   "rr   r{   r(  
  s2      4 & 	
 
rq   c                	$  aaa \        S4      R  VVV3R ll4       p\        RT;'       g    \        P                  P                  4      pVP                  4       '       d   \        h\        4       oVP                  V4       SP                  4       # )c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   9AsyncIOBackend.run_sync_from_thread.<locals>.__annotate__
  s     	 	 	rq   c                    <  \        R 4       SP                  S! S!  4       R#   \         d4   p SP                  T 4       \	        T \
        4      '       g   h  Rp ? R# Rp ? ii ; i)r  N)r8   r   r  r   r  r   )r  r   r  r  s    rr   r.  4AsyncIOBackend.run_sync_from_thread.<locals>.wrapper
  sQ    ))4T4[)  $!#y11 2s    % A#(AA#r   )
r   r0   r9   r4  r  r  r>   r   r   r  )r/  r  r   r|  r.  r   r  s   &ff&  @rr   run_sync_from_thread#AsyncIOBackend.run_sync_from_thread
  s{     
t	 	 
	 !Q!Q,*D*D*Q*Q
 >>""17!!'*xxzrq   c               0    V ^8  d   QhRRRRRRRRRRR	R
/# )rw   commandz)StrOrBytesPath | Sequence[StrOrBytesPath]r  zint | IO[Any] | Noner  r  r   r,   r   rW  rh   )rz   s   "rr   r{   r(  
  sF     /
 /
:/
 $	/

 %/
 %/
 /
 
/
rq   c          	     	  "   V P                  4       G R j  xL
  \        V\        4      '       d   \        P                  ! V4      p\
        P                  ! 4       p\        V\        \        34      '       d*   VP                  ! \        V3RVRVRV/VB G R j  xL
 w  rxM*VP                  ! \        .VO5RVRVRV/VB G R j  xL
 w  rx\
        P                  P                  WxV4      p	V	P                  '       d   \        V	P                  4      MR p
V	P                   '       d   \#        V	P                   4      MR pV	P$                  '       d   \#        V	P$                  4      MR p\        V	V
VVVP&                  V4      #  ELj L L5i)Nr  r  r  )r9  r  r"   osfspathr  r	   r  r/  subprocess_shellr  subprocess_exec
subprocessrW  r  r@  r  r*  r  r  )r/  r  r  r  r  r   r   r  r  r  stdin_streamstdout_streamstderr_streams   &&$$$,       rr   open_processAsyncIOBackend.open_process
  s     nngx((ii(G
 '')gU|,,(,(=(=&) ) 	)
 ) ) #Ix )-(<(<&)) ) 	)
 ) ) #I $$,,Y$G=D]]]*7==9PT?F~~~+GNN;SW?F~~~+GNN;SWOO
 	
? 	##sA   FF BFF*FFA F&(F2FFFc                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   r(  
  s     
 
:J 
t 
rq   c                	    \        \        V4      R R7       \        4       P                  \	        \
        V4      4       R# )z AnyIO process pool shutdown taskr  N)r   r  r  r  r   r  )r/  r  s   &&rr   #setup_process_pool_exit_at_shutdown2AsyncIOBackend.setup_process_pool_exit_at_shutdown
  s3    *733	
 	**;WE	
rq   c               (    V ^8  d   QhRRRRRRRR/# )	rw   hostr  portr  local_addressIPSockAddrType | Noner   r  rh   )rz   s   "rr   r{   r(  
  s,     
1 
1
1!
12G
1	
1rq   c           
     	   "   \        \        \        P                  \        3,          \        4       P                  \        WVR 7      G Rj  xL
 4      w  rEVP                  4        \        WE4      #  L%5i))
local_addrN)	r0   r  r  r  r  r	   create_connectionr  r  )r/  r  r  r  r  r  s   &&&&  rr   connect_tcpAsyncIOBackend.connect_tcp
  sg      #'##^34"$66} 7  
	 	!I00s   A	A3A1
&A3c                    V ^8  d   QhRRRR/# )rw   pathzstr | bytesr   zabc.UNIXSocketStreamrh   )rz   s   "rr   r{   r(  
  s     4 4k 46J 4rq   c                	  aa"   V P                  4       G R j  xL
  \        4       o\        P                  ! \        P                  4      oSP	                  R4         SP                  V4       \        S4      #  La  \         dX    \        P                  ! 4       pSP                  STP                  R 4       TP                  TT3R l4       TG R j  xL 
   K  \         d    SP                  4        h i ; i5i)NFc                &   < SP                  S4      # r   r@  r  r   r  s   &rr   r   -AsyncIOBackend.connect_unix.<locals>.<lambda>
  s    d.@.@.Lrq   )r9  r	   r  AF_UNIXr  connectrM  rV  r  r   rB  r   r  r  r   )r/  r  r  r   r  s   && @@rr   connect_unixAsyncIOBackend.connect_unix
  s     nn!]]6>>2
u%4""4( (
33! 	 # $+NN$4
ALL$?##$LM    "sG   C<A:AC<A< /C<<AC9CC9C<C9&C99C<c                    V ^8  d   QhRRRR/# rw   sockr  r   rQ   rh   )rz   s   "rr   r{   r(  
  s     ' '} ' 'rq   c                	    \        V4      # r   )r|  r/  r  s   &&rr   create_tcp_listener"AsyncIOBackend.create_tcp_listener
  s     &&rq   c                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   r(  
  s     ( ( (. (rq   c                	    \        V4      # r   )r  r  s   &&rr   create_unix_listener#AsyncIOBackend.create_unix_listener
  s    !$''rq   c          
     ,    V ^8  d   QhRRRRRRRRRR	/# )
rw   familyr%   r  r  remote_address
reuse_portr  r   zUDPSocket | ConnectedUDPSocketrh   )rz   s   "rr   r{   r(    s<     ; ;; -; .	;
 ; 
(;rq   c                	   "   \        4       P                  \        VVVVR 7      G Rj  xL
 w  rVVP                  '       d   VP	                  4        VP                  hV'       g   \        WV4      # \        WV4      #  LR5i))r  remote_addrr  r  N)r	   create_datagram_endpointr  r   r   r  r  )r/  r  r  r  r  r  r  s   &&&&&  rr   create_udp_socket AsyncIOBackend.create_udp_socket  sy      %5$6$O$O$&! %P %
 
	 OO$$$Y11%i::
s   &A=A;;A=%A=c               $    V ^8  d   QhRRRRRR/# )rw   r  r  remote_pathzstr | bytes | Noner   z8abc.UNIXDatagramSocket | abc.ConnectedUNIXDatagramSocketrh   )rz   s   "rr   r{   r(    s$     2 2&25G2	A2rq   c                	  aa"   V P                  4       G R j  xL
  \        4       oV'       d     SP                  V4       \        S4      # \        S4      #  L?  \         dX    \
        P                  ! 4       pSP                  STP                  R 4       TP                  TT3R l4       TG R j  xL 
   K  \         d    SP                  4        h i ; i5i)Nc                &   < SP                  S4      # r   r  r  s   &rr   r   <AsyncIOBackend.create_unix_datagram_socket.<locals>.<lambda>(  s    $2D2DZ2Prq   )r9  r	   r  r  rV  r  r   rB  r   r  r  r   r  )r/  r  r  r  r   s   &f& @rr   create_unix_datagram_socket*AsyncIOBackend.create_unix_datagram_socket  s      nn!C&&{3 7zBB%j11% 	 ' (/(8AOOJdC''(PQGG$ $$&sE   CACA CAC2B53C8C;CCCr  r  protorm  c               4    V ^8  d   QhRRRRRRRRR	R
RR
RR/# )rw   r  zbytes | str | Noner  zstr | int | Noner  zint | AddressFamilyr  zint | SocketKindr  r  rm  r   zuSequence[tuple[AddressFamily, SocketKind, int, str, tuple[str, int] | tuple[str, int, int, int] | tuple[int, bytes]]]rh   )rz   s   "rr   r{   r(  3  sP     
 
 
 

 $
 
 
 


rq   c          	     	V   "   \        4       P                  WW4WVR 7      G Rj  xL
 #  L5i))r  r  r  rm  N)r	   getaddrinfo)r/  r  r  r  r  r  rm  s   &&&$$$$rr   r  AsyncIOBackend.getaddrinfo2  s3     & &'33v 4 
 
 	
 
s    )')c               $    V ^8  d   QhRRRRRR/# )rw   sockaddrrP   rm  r  r   ztuple[str, str]rh   )rz   s   "rr   r{   r(  J  s)     E E%E.1E	Erq   c                	P   "   \        4       P                  W4      G R j  xL
 #  L5ir   )r	   getnameinfo)r/  r  rm  s   &&&rr   r  AsyncIOBackend.getnameinfoI  s!      &'33HDDDDr  c                    V ^8  d   QhRRRR/# rw   objrZ   r   r   rh   )rz   s   "rr   r{   r(  P       2& 2&&8 2&T 2&rq   c                	  aaa	a
"    \         P                  4       o	\	        V\
        4      '       d   TMVP                  4       oS	P                  S4      '       d   \        R 4      h\        4       pVP                  4       oR VVV	V
3R llp VP                  SV4       VP                  o
SS	S&    SG Rj  xL
 p S	S S
! S4       T'       g   \         hR#   \         d    / o	\         P                  S	4        Li ; i  \         d/    ^ RIHp T! 4       pTP                  ST4       TP                  o
 Li ; i L  \         d     Li ; i   S	S S
! S4       i   \         d     i i ; i; i5i)r  c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   2AsyncIOBackend.wait_readable.<locals>.__annotate__^       	 	D 	rq   c                    <  SS  S! S 4        SP                  R 4       R#   \          d     L!i ; i  \        P                   d     R# i ; ir  rH  r   r  r  )rw  r%  r  r3  s   rr   r  (AsyncIOBackend.wait_readable.<locals>.cb^  sW    "O b!t$   ,,    " 3 00AAget_selectorN)r  r  rn  r  r  r  rI  r;   r	   r   r7  r3  r  $anyio._core._asyncio_selector_threadr  rH  r<   )r/  r  r   r  r  selectorsuccessrw  r%  r  r3  s   &&     @@@@rr   wait_readableAsyncIOBackend.wait_readableO  sc    	*&**,K
 sC((Scjjl??2#N33!$($6$6$8	 			/OOB# !..MB	"iG"O b!%% ]  	*K[)	*4 # 	3I#~HB'$22M	3    "O b!     E0C >E01E0C? E01E 6D;7E <D= ?E0E0"C<9E0;C<<E0?6D85E07D88E0;E =EE0
EE0E-E	E-E*'E-)E**E--E0c                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   r(    r  rq   c                	  aaa	a
"    \         P                  4       o
\	        V\
        4      '       d   TMVP                  4       oS
P                  S4      '       d   \        R 4      h\        4       pVP                  4       oR VVV	V
3R llp VP                  SV4       VP                  o	SS
S&    SG Rj  xL
 p S
S S	! S4       T'       g   \         hR#   \         d    / o
\         P                  S
4        Li ; i  \         d/    ^ RIHp T! 4       pTP                  ST4       TP                  o	 Li ; i L  \         d     Li ; i   S
S S	! S4       i   \         d     i i ; i; i5i)r  c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   2AsyncIOBackend.wait_writable.<locals>.__annotate__  r  rq   c                    <  SS  S! S 4        SP                  R 4       R#   \          d     L!i ; i  \        P                   d     R# i ; ir  r  )rw  r%  r@  r  s   rr   r  (AsyncIOBackend.wait_writable.<locals>.cb  sX    " $ b!t$   ,, r  r  N)r  r  rn  r  r  r  rI  r;   r	   r   rB  r@  r  r  r  rH  r<   )r/  r  r   r  r  r  r  rw  r%  r@  r  s   &&     @@@@rr   wait_writableAsyncIOBackend.wait_writable  sh    	,(,,.L
 sC((ScjjlB#L11!$($6$6$8	 			/OOB# !..MR	"iG" $ b!%% ]  	,Ll+	,4 # 	3I#~HB'$22M	3    " $ b!  r  c                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   r(    s     .5 .5!3 .5 .5rq   c                	D   \        V\        4      '       d   TMVP                  4       p\        4       p \        P                  4       p VP                  V4      p VP                  R 4        VP                  V4        \         P                  4       p TP                  T4      p TP                  R 4        TP#                  T4       R#   \        P                   d     Lvi ; i  \         d     ^ RIHp T! 4       P                  T4        Li ; i  \         d     Li ; i  \         d     Li ; i  \        P                   d     Li ; i  \         d!    ^ RIHp T! 4       P#                  T4        R# i ; i  \         d     R# i ; i  \         d     R# i ; i)Fr  N)r  r  rI  r	   r  r  r  r   r  r  r@  r  r  r  rH  rn  r  r3  )r/  r  rw  r   r  r%  r  r  s   &&      rr   notify_closingAsyncIOBackend.notify_closing  s   sC((Scjjl!	5(,,.L5"&&r*NN5)5&&r*	5&**,K5!oob)NN5)5&&r*5 00 
 + 5Q N0045    		@ 00 
 + 5Q N0045    		s   D$ 	D C -C& ?F E> &D5 8E C#"C#&'DDD! D!$D21D25EE'E;:E;>FFFFc                    V ^8  d   QhRRRR/# r  rh   )rz   s   "rr   r{   r(    s     ' 'm ' 'rq   c                	   "   \        \        R 4      '       d+   VP                  \        P                  8X  d   \	        V4      # \        V4      # 5i)r  )r   r  r  r  r  r|  r  s   &&rr   wrap_listener_socket#AsyncIOBackend.wrap_listener_socket  s7     69%%$++*G%d++ &&s   AAc                    V ^8  d   QhRRRR/# )rw   r  r  r   r  rh   )rz   s   "rr   r{   r(    s     1 1M 1l 1rq   c                	v   "   \        4       P                  \        VR 7      G Rj  xL
 w  r#\        W#4      #  L5i)r  N)r	   r  r  r  r/  r  r  r  s   &&  rr   wrap_stream_socket!AsyncIOBackend.wrap_stream_socket  s=     $4$6$H$H %I %
 
	 I00
   #979c                    V ^8  d   QhRRRR/# )rw   r  r  r   rM  rh   )rz   s   "rr   r{   r(    s     & & &CS &rq   c                	    "   \        V4      # 5ir   )rM  r  s   &&rr   wrap_unix_stream_socket&AsyncIOBackend.wrap_unix_stream_socket  s     %%   c                    V ^8  d   QhRRRR/# )rw   r  r  r   r  rh   )rz   s   "rr   r{   r(    s     . . .9 .rq   c                	v   "   \        4       P                  \        VR 7      G Rj  xL
 w  r#\        W#4      #  L5ir  )r	   r  r  r  r  s   &&  rr   wrap_udp_socketAsyncIOBackend.wrap_udp_socket  s=     $4$6$O$O4 %P %
 
	 --
r  c                    V ^8  d   QhRRRR/# )rw   r  r  r   r  rh   )rz   s   "rr   r{   r(    s     7 7= 7EW 7rq   c                	v   "   \        4       P                  \        VR 7      G Rj  xL
 w  r#\        W#4      #  L5ir  )r	   r  r  r  r  s   &&  rr   wrap_connected_udp_socket(AsyncIOBackend.wrap_connected_udp_socket  s=     $4$6$O$O4 %P %
 
	 ")66
r  c                    V ^8  d   QhRRRR/# )rw   r  r  r   r  rh   )rz   s   "rr   r{   r(    s     ( (= (EW (rq   c                	    "   \        V4      # 5ir   )r  r  s   &&rr   wrap_unix_datagram_socket(AsyncIOBackend.wrap_unix_datagram_socket
  s     !$''r  c                    V ^8  d   QhRRRR/# )rw   r  r  r   r  rh   )rz   s   "rr   r{   r(    s     1 1 1	$1rq   c                	    "   \        V4      # 5ir   )r  r  s   &&rr   #wrap_connected_unix_datagram_socket2AsyncIOBackend.wrap_connected_unix_datagram_socket  s      +400r  c                   V ^8  d   QhRR/# )rw   r   rC   rh   )rz   s   "rr   r{   r(    s       rq   c                	     \         P                  4       #   \         d&    \        ^(4      p\         P	                  T4       Tu # i ; i)(   )r  r  rn  rC   r  )r/  rl  s   & rr   ro  -AsyncIOBackend.current_default_thread_limiter  sB    	*..00 	%b)G#''0N	s    -AAc                    V ^8  d   QhRRRR/# )rw   r  r$   r   z.AbstractContextManager[AsyncIterator[Signals]]rh   )rz   s   "rr   r{   r(    s     ( ((	7(rq   c                	    \        V4      # r   )r  )r/  r  s   &*rr   open_signal_receiver#AsyncIOBackend.open_signal_receiver  s     w''rq   c                   V ^8  d   QhRR/# )rw   r   r5   rh   )rz   s   "rr   r{   r(  $  s     / / /rq   c                	(    \        \        4       4      # r   )r5  r   r   s   &rr   get_current_taskAsyncIOBackend.get_current_task#  s    |~..rq   c                   V ^8  d   QhRR/# )rw   r   zSequence[TaskInfo]rh   )rz   s   "rr   r{   r(  (  s     R R"4 Rrq   c                	    \        4        Uu. uF%  qP                  4       '       d   K  \        V4      NK'  	  up# u upi r   )r   r   r5  )r/  r   s   & rr   get_running_tasks AsyncIOBackend.get_running_tasks'  s*    2;+Q+$YY[%%+QQQs   ;;c                   V ^8  d   QhRR/# r   rh   )rz   s   "rr   r{   r(  ,  s      T rq   c                	  "   V P                  4       G R j  xL
  \        4       p \        4        FF  pW!J d   K
  VP                  pVe   VP	                  4       '       g   K2  \        R4      G R j  xL
   KS  	  R #  Le L5i)Ng?)r9  r   r   ro  r   r
   )r/  	this_taskr   rt  s   &   rr   wait_all_tasks_blocked%AsyncIOBackend.wait_all_tasks_blocked+  sm     nn N	!$))>V[[]]*$$ $  	 %s(   B A<AB "B 0A>1B >B c                    V ^8  d   QhRRRR/# )rw   r'  r  r   r  rh   )rz   s   "rr   r{   r(  <  s     % % %J %rq   c                	    \        R/ VB # )Nrh   )r  )r/  r'  s   &&rr   create_test_runner!AsyncIOBackend.create_test_runner;  s    $G$$rq   rh   r  r   )r   )5ri   rj   rk   rl   classmethodr   r4  r  r;  r9  rH  r  r
   rf  rg  rN  rS  rW  r[  r_  rc  rg  ru  ry  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r
  r  r  r  r  ro  r#  r'  r+  r0  r4  rp   rh   rq   rr   r  r  	  s   ) )B " " ) )     : :$     ="&((=;@= =
  ,     / / X !%	X
 #X X - - :$ :$x 	( 	(    D  4 /
 /
b 
 
 
1 
1 4 4& ' ' ( ( ; ;. 2 2. 

 '(
 "#
 
 
 
, E E
 2& 2&h 2& 2&h .5 .5` ' ' 1 1 & & . . 7 7 ( ( 1 1
   ( (
 / / R R   % %rq   r  r3  r  )__conditional_annotations__
__future__r   rc  r  concurrent.futuresr  r   rf  r  r  r@  r   r  r   r   r   r   r   r	   r
   asyncio.base_eventsr   collectionsr   r   collections.abcr   r   r   r   r   r   r   r   r   
contextlibr   r   r   dataclassesr   r   	functoolsr   r   inspectr   r   r    ior!   r"   r
  r#   r   r$   r%   r&   r'   typesr(   r)   typingr*   r+   r,   r-   r.   r/   r0   r1    r2   r3   r4   r5   r6   _core._eventloopr7   r8   r9   _core._exceptionsr:   r;   r<   r=   r>   r?   _core._socketsr@   _core._streamsrA   _core._synchronizationrC   BaseCapacityLimiterrE   	BaseEventrG   BaseLockrH   rI   rK   BaseSemaphore_core._tasksrM   BaseCancelScoperN   rO   rP   rQ   rR   rS   abc._eventlooprT   
abc._tasksrU   rV   lowlevelrW   streams.memoryrX   rY   	_typeshedrZ   r,  rA  r[   r\   r]   enumr^   r_   r`   ra   exceptiongrouprb   typing_extensionsEnumrd   r   r   r   r   r   r   r  r  r>  r  r  r  r"  rI  r
  
TaskStatusr  eager_task_factoryr  r  r  r  r  _Retval_Queue_Typer  r&  r'  ByteReceiveStreamr*  ByteSendStreamr@  rW  r  r  Protocolr  r  r  r  rM  r|  r  r  r  r  r  r  r  r  r  r5  r  r  SubprocessStreamProtocolr  r  backend_class)r7  s   @rr   <module>ra     s   " "      	  
     7 *	 	 	 & - - ( $ 
     ,  )   &  
  3 8 8 5 @ 9 %  , >  N,w++==16 
~& ~&@,, :v&:T2
#cN*0*>
' >F @Q?R	< RE&|7/ |7H

) 
) <M;N8 N7 7$ w070J0J0S0SoS#\# \#F 8d?MD,@@A K6 K\ 9?9 5  288M1N . N e*#// * *$ e*#,, * *< eCckk C CL<2#4#W%% #Lw// DU$3## U$p+3 +3\t;(<(< t;n9!** 9!x"!++ "!J/. /.d1-// 1-h!#*@*@ !H!/33R3R !H 9?}8M5 M9?9O6 O:I :2QL8 QLhU7 U7pw
) w
t 4::S3T 0 T&, &,\h Bn' n'bW//HH $m
%\ m
%` rq   