+
     Bi                        ^ RI t ] P                  R8w  d	   ]! R4      h^ RIt^ RIt^ RI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Ht ^RIHt ^RIHt ^RIHt ^R	IHt ^R
IHt ^RIHt ^RIHt ^RIHt R(t]P4                  t]P6                  tRtRtRtRt ! R R]P@                  4      t! ! R R]P@                  4      t" ! R R]"4      t# ! R R]"4      t$ ! R R]%4      t& ! R  R!]PN                  4      t( ! R" R]PR                  4      t* ! R# R4      t+ ! R$ R%]PX                  4      t-](t. ! R& R]P^                  4      t0 ! R' R]P^                  4      t1]1t2]*t3R# ))    Nwin32z
win32 only)partial)events)base_subprocess)futures)
exceptions)proactor_events)selector_events)tasks)windows_utils)loggerProactorEventLoopIocpProactor_WindowsSelectorEventLoopPolicy_WindowsProactorEventLoopPolicyi  i  gMbP?g?c                   t   a a ] tR t^1t oRR/V 3R lltV 3R ltR tR
V 3R lltV 3R ltV 3R lt	R	t
VtV ;t# )_OverlappedFutureloopNc               r   < \         SV `  VR 7       V P                  '       d   V P                  R Wn        R# r   N)super__init___source_traceback_ov)selfovr   	__class__s   &&$-/usr/lib/python3.14/asyncio/windows_events.pyr   _OverlappedFuture.__init__7   s2    d#!!!&&r*    c                   < \         SV `  4       pV P                  eO   V P                  P                  '       d   RMRpVP	                  ^RV RV P                  P
                  R R24       V# )Npending	completedzoverlapped=<z, #x>)r   
_repr_infor   r$   insertaddressr   infostater   s   &  r    r(   _OverlappedFuture._repr_info=   s_    w!#88!%!1!1!1I{EKK\%4883C3CB2GqIJr"   c                "   V P                   f   R #  V P                   P                  4        R V n         R #   \         dO   pRRRTRT /pT P                  '       d   T P                  TR&   T P                  P                  T4        R p?L]R p?ii ; i)Nmessagez&Cancelling an overlapped future failed	exceptionfuturesource_traceback)r   cancelOSErrorr   _loopcall_exception_handler)r   exccontexts   &  r    _cancel_overlapped$_OverlappedFuture._cancel_overlappedD   s    88
	7HHOO   	7CS$G
 %%%.2.D.D*+JJ--g66	7s   5 B AB		Bc                D   < V P                  4        \        SV `	  VR 7      # )msg)r:   r   r4   r   r>   r   s   &&r    r4   _OverlappedFuture.cancelT   s     !w~#~&&r"   c                F   < \         SV `  V4       V P                  4        R # N)r   set_exceptionr:   r   r1   r   s   &&r    rC   _OverlappedFuture.set_exceptionX   s    i(!r"   c                4   < \         SV `  V4       R V n        R # rB   )r   
set_resultr   r   resultr   s   &&r    rG   _OverlappedFuture.set_result\   s    6"r"   r   rB   )__name__
__module____qualname____firstlineno__r   r(   r:   r4   rC   rG   __static_attributes____classdictcell____classcell__r   __classdict__s   @@r    r   r   1   s/     4  '" r"   r   c                      a a ] tR t^at oRR/V 3R lltR tV 3R ltR tR tRV 3R llt	V 3R	 lt
V 3R
 ltRtVtV ;t# )_BaseWaitHandleFuturer   Nc                  < \         SV `  VR 7       V P                  '       d   V P                  R Wn        W n        W0n        RV n        R# )r   TNr   )r   r   r   r   _handle_wait_handle_registered)r   r   handlewait_handler   r   s   &&&&$r    r   _BaseWaitHandleFuture.__init__d   sI    d#!!!&&r* '  r"   c                f    \         P                  ! V P                  ^ 4      \         P                  8H  # r   )_winapiWaitForSingleObjectrX   WAIT_OBJECT_0r   s   &r    _poll_BaseWaitHandleFuture._pollr   s)    ++DLL!<%%& 	'r"   c                .  < \         SV `  4       pVP                  R V P                  R 24       V P                  e,   V P	                  4       '       d   RMRpVP                  V4       V P
                  e    VP                  RV P
                  R 24       V# )zhandle=r&   signaledwaitingzwait_handle=)r   r(   appendrX   rd   rY   r+   s   &  r    r(    _BaseWaitHandleFuture._repr_infow   s~    w!#gdll2./0<<#"&**,,JIEKK(KK,t'8'8&<=>r"   c                    R V n         R # rB   rK   )r   futs   &&r    _unregister_wait_cb)_BaseWaitHandleFuture._unregister_wait_cb   s     r"   c                   V P                   '       g   R # RV n         V P                  pR V n         \        P                  ! V4       V P                  R 4       R #   \         dt   pTP
                  \        P                  8w  dK   RRRTRT /pT P                  '       d   T P                  TR&   T P                  P                  T4        R p?R #  R p?LR p?ii ; iNFr0   z$Failed to unregister the wait handler1   r2   r3   )rZ   rY   _overlappedUnregisterWaitr5   winerrorERROR_IO_PENDINGr   r6   r7   rm   r   r\   r8   r9   s   &   r    _unregister_wait&_BaseWaitHandleFuture._unregister_wait   s     '' 	&&{3 	  &  
	||{;;;Ed
 )))262H2HG./

11': <
	s   A C$8C*CCc                D   < V P                  4        \        SV `	  VR 7      # r=   )rv   r   r4   r?   s   &&r    r4   _BaseWaitHandleFuture.cancel   s     w~#~&&r"   c                F   < V P                  4        \        SV `	  V4       R # rB   )rv   r   rC   rD   s   &&r    rC   #_BaseWaitHandleFuture.set_exception   s    i(r"   c                F   < V P                  4        \        SV `	  V4       R # rB   )rv   r   rG   rH   s   &&r    rG    _BaseWaitHandleFuture.set_result   s    6"r"   )rX   r   rZ   rY   rB   )rL   rM   rN   rO   r   rd   r(   rm   rv   r4   rC   rG   rP   rQ   rR   rS   s   @@r    rV   rV   a   s9        '

'0')# #r"   rV   c                   X   a a ] tR t^t oRR/V 3R lltR tV 3R ltV 3R ltRtVt	V ;t
# )_WaitCancelFuturer   Nc               8   < \         SV `  WW4R 7       RV n        R# )r   N)r   r   _done_callback)r   r   eventr\   r   r   s   &&&&$r    r   _WaitCancelFuture.__init__   s    K;"r"   c                    \        R 4      h)z'_WaitCancelFuture must not be cancelled)RuntimeErrorrc   s   &r    r4   _WaitCancelFuture.cancel   s    DEEr"   c                h   < \         SV `  V4       V P                  e   V P                  V 4       R # R # rB   )r   rG   r   rH   s   &&r    rG   _WaitCancelFuture.set_result   s/    6"*% +r"   c                h   < \         SV `  V4       V P                  e   V P                  V 4       R # R # rB   )r   rC   r   rD   s   &&r    rC   _WaitCancelFuture.set_exception   s/    i(*% +r"   )r   )rL   rM   rN   rO   r   r4   rG   rC   rP   rQ   rR   rS   s   @@r    r   r      s&     
#t #
F&
& &r"   r   c                   L   a a ] tR t^t oRR/V 3R lltV 3R ltR tRtVtV ;t	# )_WaitHandleFuturer   Nc                  < \         SV `  WW5R 7       W@n        RV n        \        P
                  ! RRRR4      V n        RV n        R# )r   TNF)r   r   	_proactor_unregister_proactorrq   CreateEvent_event
_event_fut)r   r   r[   r\   proactorr   r   s   &&&&&$r    r   _WaitHandleFuture.__init__   sA    [<!$(!!--dD%Fr"   c                   < V P                   e/   \        P                  ! V P                   4       R V n         R V n        V P                  P                  V P                  4       R V n        \        SV `!  V4       R # rB   )	r   r`   CloseHandler   r   _unregisterr   r   rm   )r   rl   r   s   &&r    rm   %_WaitHandleFuture._unregister_wait_cb   sY    ;;",DK"DO 	""488,#C(r"   c                   V P                   '       g   R # RV n         V P                  pR V n         \        P                  ! WP                  4       V P                  P                  V P                  V P                  4      V n        R #   \
         dt   pTP                  \        P                  8w  dK   RRRTRT /pT P                  '       d   T P                  TR&   T P                  P                  T4        R p?R #  R p?LR p?ii ; irp   )rZ   rY   rq   UnregisterWaitExr   r5   rs   rt   r   r6   r7   r   _wait_cancelrm   r   ru   s   &   r    rv   "_WaitHandleFuture._unregister_wait   s     '' 	((kkB ..55dkk6:6N6NP  
	||{;;;Ed
 )))262H2HG./

11': <
	s    B D8D *D  D)r   r   r   rZ   r   rY   )
rL   rM   rN   rO   r   rm   rv   rP   rQ   rR   rS   s   @@r    r   r      s"     $ )$P Pr"   r   c                   B   a  ] tR t^t o R tR tR tR tR t]t	Rt
V tR# )
PipeServerc                    Wn         \        P                  ! 4       V n        R V n        R V n        V P                  R4      V n        R # NT)_addressweakrefWeakSet_free_instances_pipe_accept_pipe_future_server_pipe_handle)r   r*   s   &&r    r   PipeServer.__init__   s9    &0 
#' --d3
r"   c                J    V P                   V P                  R 4      uqn         V# F)r   r   )r   tmps   & r    _get_unconnected_pipe PipeServer._get_unconnected_pipe  s#    
 **d&>&>u&EZ
r"   c           
     j   V P                  4       '       d   R # \        P                  \        P                  ,          pV'       d   V\        P                  ,          p\        P
                  ! V P                  V\        P                  \        P                  ,          \        P                  ,          \        P                  \        P                  \        P                  \        P                  \        P                  4      p\        P                  ! V4      pV P                   P#                  V4       V# rB   )closedr`   PIPE_ACCESS_DUPLEXFILE_FLAG_OVERLAPPEDFILE_FLAG_FIRST_PIPE_INSTANCECreateNamedPiper   PIPE_TYPE_MESSAGEPIPE_READMODE_MESSAGE	PIPE_WAITPIPE_UNLIMITED_INSTANCESr   BUFSIZENMPWAIT_WAIT_FOREVERNULL
PipeHandler   add)r   firstflagshpipes   &&   r    r   PipeServer._server_pipe_handle  s    ;;==**W-I-IIW:::E##MM5%%(E(EE,,!!=#8#8((',,8 ''*  &r"   c                    V P                   R J # rB   )r   rc   s   &r    r   PipeServer.closed   s    %&r"   c                   V P                   e"   V P                   P                  4        R V n         V P                  eN   V P                   F  pVP	                  4        K  	  R V n        R V n        V P                  P                  4        R # R # rB   )r   r4   r   r   closer   clear)r   r   s   & r    r   PipeServer.close#  sp    ##/$$++-'+D$==$,,

 -DJ DM  &&( %r"   )r   r   r   r   N)rL   rM   rN   rO   r   r   r   r   r   __del__rP   rQ   rT   s   @r    r   r      s%     
4$'
) Gr"   r   c                       ] tR tRtRtR# )_WindowsSelectorEventLoopi2   N)rL   rM   rN   rO   rP   r   r"   r    r   r   2  s    r"   r   c                   d   a a ] tR tRt oR	V 3R lltV 3R ltV 3R ltR tR tR	R lt	Rt
VtV ;t# )
r   i6  c                B   < Vf   \        4       p\        SV `	  V4       R # rB   )r   r   r   )r   r   r   s   &&r    r   ProactorEventLoop.__init__9  s    #~H"r"   c                Z   < V P                  V P                  4       \        SV `  4        R # rB   )	call_soon_loop_self_readingr   _run_forever_setup)r   r   s   &r    r   $ProactorEventLoop._run_forever_setup>  s     t../"$r"   c                  < \         SV `  4        V P                  ek   V P                  P                  pV P                  P	                  4        Ve.   VP
                  '       g   V P                  P                  V4       R V n        R # R # rB   )r   _run_forever_cleanup_self_reading_futurer   r4   r$   r   r   )r   r   r   s   & r    r   &ProactorEventLoop._run_forever_cleanupC  sk    $&$$0**..B%%,,. ~bjjj**2.(,D% 1r"   c                   "   V P                   P                  V4      pVG R j  xL
 pV! 4       pV P                  WERV/R7      pWe3#  L#5i)Naddrextra)r   connect_pipe_make_duplex_pipe_transport)r   protocol_factoryr*   fr   protocoltranss   &&&    r    create_pipe_connection(ProactorEventLoop.create_pipe_connectionR  sU     NN''0w#%008>7H 1 J	 s   !A	A$A	c                j   a aaaa"   \        S4      oRVVVV V3R lloS P                  S4       S.# 5i)Nc           	        < R p V '       dp   V P                  4       pSP                  P                  V4       SP                  4       '       d   VP	                  4        R # S! 4       pSP                  WRS/R7       SP                  4       pVf   R # SP                  P                  V4      p V Sn	        V P                  S4       R #   \         dC    T'       d&   TP                  4       R
8w  d   TP	                  4        SP                  S4        R # \         d   pT'       d>   TP                  4       R
8w  d)   SP                  RRRTRT/4       TP	                  4        M+SP                   '       d   \"        P$                  ! RTRR	7       SP                  S4        R p?R # R p?i\&        P(                   d     T'       d   TP	                  4         R #  R # i ; i)Nr   r   r0   zPipe accept failedr1   r   zAccept pipe failed on pipe %rT)exc_infor   )rI   r   discardr   r   r   r   r   accept_piper   add_done_callbackBrokenPipeErrorfilenor   r5   r7   _debugr   warningr   CancelledError)	r   r   r   r8   r*   loop_accept_piper   r   servers	   &   r    r   >ProactorEventLoop.start_serving_pipe.<locals>.loop_accept_pipe]  s}   D)688:D**2248}} 

/1H44vw.? 5 A 335<NN..t4* ./*##$45+ # 1DKKMR/JJL/0 1DKKMR///!#7#S1 
 JJL[[[NN#B#'$8/00,, !JJL !sZ   C A C C  0C C G6GGGAF$4*F$$G;GGGrB   )r   r   )r   r   r*   r   r   s   fff@@r    start_serving_pipe$ProactorEventLoop.start_serving_pipeZ  s1     G$+	6 +	6Z 	'(xs   ,3c	           
       "   V P                  4       p
\        WW#WEWg3R V
RV/V	B p V
G Rj  xL
  V#  L  \        \        3 d    h \         d,    TP                  4        TP                  4       G Rj  xL 
  h i ; i5i)waiterr   N)create_future_WindowsSubprocessTransport
SystemExitKeyboardInterruptBaseExceptionr   _wait)r   r   argsshellstdinstdoutstderrbufsizer   kwargsr   transps   &&&&&&&&&,  r    _make_subprocess_transport,ProactorEventLoop._make_subprocess_transport  s      ##%,TT-2F74:7BG7 067	LL  -. 	 	LLN,,.  	s7   $A?5 35 A?5 A<$A<4A75A<<A?)r   rB   )rL   rM   rN   rO   r   r   r   r   r   r  rP   rQ   rR   rS   s   @@r    r   r   6  s)     #
%
-1f r"   c                     a  ] tR tRt o ]3R ltR tR tR tR"R lt	R t
]R	 4       t]R
 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 tR tR tR tR tR"R ltR tR tR tR tR tR t R"R lt!R t"R t#R  t$R!t%V t&R# )%r   i  c                   R V n         . V n        \        P                  ! \        P                  \
        ^ V4      V n        / V n        \        P                  ! 4       V n
        . V n        \        P                  ! 4       V n        R # rB   )r6   _resultsrq   CreateIoCompletionPortINVALID_HANDLE_VALUEr   _iocp_cacher   r   rZ   _unregistered_stopped_serving)r   concurrencys   &&r    r   IocpProactor.__init__  s_    
 77,,dA{D
"??, ' 1r"   c                8    V P                   f   \        R4      hR # )NzIocpProactor is closed)r  r   rc   s   &r    _check_closedIocpProactor._check_closed  s    ::788 r"   c                   R \        V P                  4      ,          R\        V P                  4      ,          .pV P                  f   VP	                  R4       RV P
                  P                  : RRP                  V4      : R2# )zoverlapped#=%sz
result#=%sr   < r'   )lenr  r	  r  ri   r   rL   join)r   r,   s   & r    __repr__IocpProactor.__repr__  s_     3t{{#33s4==113::KK! NN33SXXd^DDr"   c                    Wn         R # rB   )r6   )r   r   s   &&r    set_loopIocpProactor.set_loop  s    
r"   Nc                    V P                   '       g   V P                  V4       V P                   p. V n          TR p#   R pi ; irB   )r	  rd   )r   timeoutr   s   && r    selectIocpProactor.select  s<    }}}JJwmm	 C$Cs	   < A c                \    V P                   P                  4       pVP                  V4       V# rB   )r6   r   rG   )r   valuerl   s   && r    _resultIocpProactor._result  s%    jj&&(u
r"   c                     VP                  4       #   \         dI   pTP                  \        P                  \        P
                  39   d   \        TP                  !  hh R p?ii ; irB   )	getresultr5   rs   rq   ERROR_NETNAME_DELETEDERROR_OPERATION_ABORTEDConnectionResetErrorr   )r   keyr   r8   s   &&& r    finish_socket_funcIocpProactor.finish_socket_func  sY    	<<>! 	|| A A + C C E E*CHH55	s    A%AA  A%c                    V P                  WV4      #   \         d/   pTP                  \        P                  8X  d
   TR 3u R p?# h R p?ii ; irB   )r-  r5   rs   rq   ERROR_PORT_UNREACHABLE)clsr   r,  r   empty_resultr8   s   &&&&$ r    _finish_recvfromIocpProactor._finish_recvfrom  sL    	))%b99 	 ||{AAA#T))	s     A"AAAAc                   V P                  V4       \        P                  ! \        4      p \	        V\
        P
                  4      '       d"   VP                  VP                  4       W#4       M!VP                  VP                  4       V4        V P                  WAV P                  4      #   \         d    T P                  R 4      u # i ; i)r"   )_register_with_iocprq   
Overlappedr   
isinstancesocketWSARecvr   ReadFiler   r%  	_registerr-  r   connnbytesr   r   s   &&&& r    recvIocpProactor.recv  s      &##D)	%$..

4;;=&8DKKM62 ~~b(?(?@@  	%<<$$	%   A B+ . B+ +C
	C
c                   V P                  V4       \        P                  ! \        4      p \	        V\
        P
                  4      '       d"   VP                  VP                  4       W#4       M!VP                  VP                  4       V4        V P                  WAV P                  4      #   \         d    T P                  ^ 4      u # i ; ir_   )r6  rq   r7  r   r8  r9  WSARecvIntor   ReadFileIntor   r%  r<  r-  r   r>  bufr   r   s   &&&& r    	recv_intoIocpProactor.recv_into  s      &##D)	#$..t{{}c9s3 ~~b(?(?@@  	#<<?"	#rB  c           	     ,   V P                  V4       \        P                  ! \        4      p VP	                  VP                  4       W#4       T P                  YA\        T P                  R R7      4      #   \         d    T P                  R4      u # i ; i)r"   r2  )r"   N)r6  rq   r7  r   WSARecvFromr   r   r%  r<  r   r3  r=  s   &&&& r    recvfromIocpProactor.recvfrom  s      &##D)	-NN4;;=&8 ~~b0E0E=@)B C 	C  	-<<,,	-    A4 4BBc           	     ,   V P                  V4       \        P                  ! \        4      p VP	                  VP                  4       W#4       T P                  YA\        T P                  ^ R7      4      #   \         d    T P                  R4      u # i ; i)r   rK  r   N)r6  rq   r7  r   WSARecvFromIntor   r   r%  r<  r   r3  rF  s   &&&& r    recvfrom_intoIocpProactor.recvfrom_into  s      &##D)	+t{{}c9 ~~b0E0E=>)@ A 	A  	+<<	**	+rO  c                    V P                  V4       \        P                  ! \        4      pVP	                  VP                  4       W#V4       V P                  WQV P                  4      # rB   )r6  rq   r7  r   	WSASendTor   r<  r-  )r   r>  rG  r   r   r   s   &&&&& r    sendtoIocpProactor.sendto  sM      &##D)
T[[]C5~~b(?(?@@r"   c                R   V P                  V4       \        P                  ! \        4      p\	        V\
        P
                  4      '       d"   VP                  VP                  4       W#4       M VP                  VP                  4       V4       V P                  WAV P                  4      # rB   )r6  rq   r7  r   r8  r9  WSASendr   	WriteFiler<  r-  rF  s   &&&& r    sendIocpProactor.send  sp      &##D)dFMM**JJt{{}c1LL,~~b(?(?@@r"   c                  aa V P                  S4       V P                  SP                  4      o\        P                  ! \
        4      pVP                  SP                  4       SP                  4       4       VV3R  lpR pV P                  VSV4      pV! VS4      p\        P                  ! W`P                  R7       V# )c                 .  < VP                  4        \        P                  ! R SP                  4       4      pSP	                  \
        P                  \        P                  V4       SP                  SP                  4       4       SSP                  4       3# )z@P)r(  structpackr   
setsockoptr9  
SOL_SOCKETrq   SO_UPDATE_ACCEPT_CONTEXT
settimeout
gettimeoutgetpeername)r   r,  r   rG  r>  listeners   &&& r    finish_accept*IocpProactor.accept.<locals>.finish_accept+  sl    LLN++dHOO$56COOF--'@@#GOOH//12))+++r"   c                 |   "    V G R j  xL
  R #  L  \         P                   d    TP                  4        h i ; i5irB   )r   r   r   )r2   r>  s   &&r    accept_coro(IocpProactor.accept.<locals>.accept_coro4  s1     ,, 

s    <  < '9<r   )r6  _get_accept_socketfamilyrq   r7  r   AcceptExr   r<  r   ensure_futurer6   )r   rh  r   ri  rl  r2   coror>  s   &f     @r    acceptIocpProactor.accept%  s      *&&x7##D)
HOO%t{{}5	,	 Hm<64(Dzz2r"   c                  a SP                   \        P                  8X  dS   \        P                  ! SP                  4       V4       V P                  P                  4       pVP                  R 4       V# V P                  S4        \        P                  ! SP                  4       SP                  4       \        P"                  ! \$        4      pVP'                  SP                  4       V4       V3R lpV P)                  VSV4      #   \         dH   pTP                  \        P                  8w  d   h SP!                  4       ^,          ^ 8X  d   h  R p?LR p?ii ; i)Nc                    < VP                  4        SP                  \        P                  \        P
                  ^ 4       S# r_   )r(  rb  r9  rc  rq   SO_UPDATE_CONNECT_CONTEXT)r   r,  r   r>  s   &&&r    finish_connect,IocpProactor.connect.<locals>.finish_connectW  s1    LLNOOF--'AA1FKr"   )typer9  
SOCK_DGRAMrq   
WSAConnectr   r6   r   rG   r6  	BindLocalro  r5   rs   errno	WSAEINVALgetsocknamer7  r   	ConnectExr<  )r   r>  r*   rl   er   rx  s   &f&    r    connectIocpProactor.connectA  s    99))) ""4;;=':****,CNN4 J  &	!!$++-= ##D)
T[[]G,	 ~~b$77!  	zzU__,!!$) *		s   /D E=EEc           	     N   V P                  V4       \        P                  ! \        4      pVR ,          pV^ ,	          R ,          pVP	                  VP                  4       \        P                  ! VP                  4       4      WgV^ ^ 4       V P                  WQV P                  4      # )l    )
r6  rq   r7  r   TransmitFiler   msvcrtget_osfhandler<  r-  )r   sockfileoffsetcountr   
offset_lowoffset_highs   &&&&&   r    sendfileIocpProactor.sendfile`  s      &##D)k)
|{2
,,T[[];"q!	%
 ~~b(?(?@@r"   c                   a V P                  S4       \        P                  ! \        4      pVP	                  SP                  4       4      pV'       d   V P                  S4      # V3R  lpV P                  VSV4      # )c                 (   < VP                  4        S# rB   )r(  )r   r,  r   r   s   &&&r    finish_accept_pipe4IocpProactor.accept_pipe.<locals>.finish_accept_pipew  s    LLNKr"   )r6  rq   r7  r   ConnectNamedPiper   r%  r<  )r   r   r   	connectedr  s   &f   r    r   IocpProactor.accept_pipel  sf      &##D)''6	 <<%%	 ~~b$(:;;r"   c                T  "   \         p  \        P                  ! V4      p \        P                  ! T4      #   \         d+   pTP                  \        P
                  8w  d   h  Rp?MRp?ii ; i\        T^,          \        4      p\        P                  ! T4      G Rj  xL 
  K  5i)TN)CONNECT_PIPE_INIT_DELAYrq   ConnectPiper5   rs   ERROR_PIPE_BUSYminCONNECT_PIPE_MAX_DELAYr   sleepr   r   )r   r*   delayr[   r8   s   &&   r    r   IocpProactor.connect_pipe}  s     '$009 ''//  <<;#>#>> ?
 	#9:E++e$$$s7   B(8 B(A- A(#B((A--3B( B#!B(c                &    V P                  WR 4      # r   )_wait_for_handle)r   r[   r   s   &&&r    wait_for_handleIocpProactor.wait_for_handle  s     $$Ve<<r"   c                8    V P                  VR R4      pW#n        V# r   )r  r   )r   r   done_callbackrl   s   &&& r    r   IocpProactor._wait_cancel  s#    ##E46 +
r"   c                  a V P                  4        Vf   \        P                  pM\        P                  ! VR,          4      p\
        P                  ! \        4      p\
        P                  ! WP                  VP                  V4      pV'       d   \        WQW`P                  R7      oM\        WQW`V P                  R7      oSP                  '       d   SP                  R V3R lpSV^ V3V P                  VP                  &   S# )N     @@r   c                 $   < SP                  4       # rB   )rd   )r   r,  r   r   s   &&&r    finish_wait_for_handle=IocpProactor._wait_for_handle.<locals>.finish_wait_for_handle  s     779r"   r   )r  r`   INFINITEmathceilrq   r7  r   RegisterWaitWithQueuer  r*   r   r6   r   r   r  )	r   r[   r   
_is_cancelmsr   r\   r  r   s	   &&&&    @r    r  IocpProactor._wait_for_handle  s    ?!!B 7S=)B ##D)!77JJ

B0!"k

KA!"k'+zz3A##B'	 $%b!-C"DBJJr"   c                    WP                   9  dO   V P                   P                  V4       \        P                  ! VP	                  4       V P
                  ^ ^ 4       R# R# rQ  )rZ   r   rq   r
  r   r  r   objs   &&r    r6   IocpProactor._register_with_iocp  sG     &&&  %..szz|TZZAN 'r"   c                t   V P                  4        \        WP                  R 7      pVP                  '       d   VP                  R VP                  '       g    V! RRV4      pVP                  V4       WAW#3V P                  VP                  &   V#   \         d   pTP                  T4        Rp?L>Rp?ii ; ir   )
r  r   r6   r   r$   rG   r5   rC   r  r*   )r   r   r  callbackr   r$  r  s   &&&&   r    r<  IocpProactor._register  s    
 bzz2##B'zzz
$ tR0 U# $%#"8BJJ  #""#s   
B B7B22B7c                \    V P                  4        V P                  P                  V4       R # rB   )r  r  ri   )r   r   s   &&r    r   IocpProactor._unregister  s$     	!!"%r"   c                T    \         P                   ! V4      pVP                  ^ 4       V# r_   )r9  re  )r   ro  ss   && r    rn  IocpProactor._get_accept_socket  s     MM&!	Qr"   c                v   Vf   \         pMEV^ 8  d   \        R4      h\        P                  ! VR,          4      pV\         8  d   \        R4      h \        P
                  ! V P                  V4      pVf   M^ pVw  rErg V P                  P                  V4      w  rrYP                   9   d   TP#                  4        Ko  TP%                  4       '       d   K   T! YVT	4      pTP'                  T4       T P(                  P+                  T4       R pK  V P0                   F)  p	V P                  P                  V	P2                  R 4       K+  	  V P0                  P5                  4        R #   \         d{    T P                  P                  4       '       d)   T P                  P                  RRRRYEYg3,          /4       T^ \        P                  39  d   \        P                  ! T4        EK  i ; i  \,         d8   pTP/                  T4       T P(                  P+                  T4        R p?ELR p?ii ; i  R pi ; i)Nznegative timeoutr  ztimeout too bigr0   z8GetQueuedCompletionStatus() returned an unexpected eventstatusz)err=%s transferred=%s key=%#x address=%#x)r  
ValueErrorr  r  rq   GetQueuedCompletionStatusr  r  popKeyErrorr6   	get_debugr7   r  r`   r   r  r4   donerG   r	  ri   r5   rC   r  r*   r   )r   r   r  r  errtransferredr,  r*   r   r   r  r  r$  r  s   &&            r    rd   IocpProactor._poll  s   ?Bq[/00 7S=)BX~ !233 ::4::rJF~B-3*Cc'+{{w'?$s  +++
 VVXX	$[r:E
 LL'MM((+A $$BKKOOBJJ- %  "E  ::''))JJ55! %7 #N&)%E$F7  q+"B"BCC'',,  ,OOA&MM((++, AsI    E' 	G/ ",H4 '*G,AG,+G,/H1:,H,&H4 ,H11H4 4H8c                <    V P                   P                  V4       R # rB   )r  r   r  s   &&r    _stop_servingIocpProactor._stop_serving3  s     	!!#&r"   c                   V P                   f   R # \        V P                  P                  4       4       FG  w  rr4VP	                  4       '       d   K  \        V\        4      '       d   K6   VP                  4        KI  	  Rp\        P                  ! 4       pW,           p	V P                  '       d|   V	\        P                  ! 4       8:  dO   \        P                  ! RV \        P                  ! 4       V,
          4       \        P                  ! 4       V,           p	V P!                  V4       K  . V n        \$        P&                  ! V P                   4       R V n         R #   \         df   pT P                  eL   RRRTRT/pTP                  '       d   TP                  TR&   T P                  P                  T4        R p?EK   R p?EK  R p?ii ; i)Nr0   zCancelling a future failedr1   r2   r3   g      ?z,%r is running after closing for %.1f seconds)r  listr  values	cancelledr8  r   r4   r5   r6   r   r7   time	monotonicr   debugrd   r	  r`   r   )
r   rl   r   r  r  r8   r9   
msg_update
start_timenext_msgs
   &         r    r   IocpProactor.close9  sb   :: '+4;;+=+=+?&@"CS}}C!233CJJL 'A0 
^^%
*kkk4>>++K!4>>#3j#@B>>+j8 JJz"DJJ'
;  	Czz-%'C'$c#
 000:=:O:OG$67

99'BB .	Cs   +EG&'G*GGc                &    V P                  4        R # rB   )r   rc   s   &r    r   IocpProactor.__del__h  s    

r"   )r  r  r6   rZ   r	  r  r  rB   r_   rQ  )'rL   rM   rN   rO   r  r   r  r  r  r!  r%  staticmethodr-  classmethodr3  r@  rH  rM  rS  rW  r\  rs  r  r  r   r   r  r   r  r6  r<  r   rn  rd   r  r   r   rP   rQ   r   s   @r    r   r     s      $, 29E	
   	 	AA	C	AAA88>
A<"0&= DO@&
7#r'-^ r"   c                   &   a  ] tR tRt o R tRtV tR# )r   il  c                  a  \         P                  ! V3R VRVRVRVRV/VB S n        V 3R lpS P                  P                  P                  \        S P                  P                  4      4      p	V	P                  V4       R# )r   r   r   r  r  c                 ^   < SP                   P                  4       pSP                  V4       R # rB   )_procpoll_process_exited)r   
returncoder   s   & r    r  4_WindowsSubprocessTransport._start.<locals>.callbacks  s!    *J  ,r"   N)	r   Popenr  r6   r   r  intrX   r   )
r   r   r   r   r   r  r  r  r  r   s
   f&&&&&&,  r    _start"_WindowsSubprocessTransport._startn  s    "((''%*'39'BH''%'
	- JJ  00TZZ5G5G1HI	H%r"   )r  N)rL   rM   rN   rO   r  rP   rQ   r   s   @r    r   r   l  s     
& 
&r"   r   c                       ] tR tRt]tRtR# )r   i~  r   N)rL   rM   rN   rO   SelectorEventLoop_loop_factoryrP   r   r"   r    r   r   ~      %Mr"   c                       ] tR tRt]tRtR# )r   i  r   N)rL   rM   rN   rO   r   r  rP   r   r"   r    r   r     r  r"   )r  r   r   _DefaultEventLoopPolicyr   r   	EventLoop)4sysplatformImportErrorrq   r`   r~  	functoolsr   r  r  r9  r`  r  r    r   r   r   r   r	   r
   r   r   logr   __all__r   r  ERROR_CONNECTION_REFUSEDERROR_CONNECTION_ABORTEDr  r  Futurer   rV   r   r   objectr   BaseSelectorEventLoopr   BaseProactorEventLoopr   r   BaseSubprocessTransportr   r  _BaseDefaultEventLoopPolicyr   r   r  r  r   r"   r    <module>r     s`   <<7
l
##                    ||       - -`G#GNN G#T&- &01P- 1Ph8 8v2 E E 2h== hVH HV&/"I"I & . &f&H&H &&f&H&H & : 	r"   