
    -hh                        S SK r \ R                  S:w  a  \" S5      eS SKrS SKrS SKrS SKrS SKrS SKrS SK	r	Sr
Sr\R                  r\R                  r\R                  " 5       rSS\S.S	 jr " S
 S5      r " S S\R$                  5      rg)    Nwin32z
win32 only)pipePopenPIPE
PipeHandlei    F)TT)duplex
overlappedbufsizec           
         [         R                  " SR                  [        R                  " 5       [        [        5      5      S9nU (       a4  [        R                  n[        R                  [        R                  -  nX"pvO#[        R                  n[        R                  nSUpvU[        R                  -  nUS   (       a  U[        R                  -  nUS   (       a  [        R                  nOSnS =p [        R                  " X4[        R                  SXg[        R                   [        R"                  5      n	[        R$                  " X5S[        R"                  [        R&                  U[        R"                  5      n
[        R(                  " U	SS9nUR+                  S5        X4$ !   U	b  [        R,                  " U	5        U
b  [        R,                  " U
5        e = f)Nz\\.\pipe\python-pipe-{:d}-{:d}-)prefixr      Tr	   )tempfilemktempformatosgetpidnext_mmap_counter_winapiPIPE_ACCESS_DUPLEXGENERIC_READGENERIC_WRITEPIPE_ACCESS_INBOUNDFILE_FLAG_FIRST_PIPE_INSTANCEFILE_FLAG_OVERLAPPEDCreateNamedPipe	PIPE_WAITNMPWAIT_WAIT_FOREVERNULL
CreateFileOPEN_EXISTINGConnectNamedPipeGetOverlappedResultCloseHandle)r   r	   r
   addressopenmodeaccessobsizeibsizeflags_and_attribsh1h2ovs               >/opt/python-3.13.8/usr/lib/python3.13/asyncio/windows_utils.pyr   r       sx   oo188IIKm,./G --%%(=(== ..&&G555H!}G000!}#88NB$$w00vw;;W\\K Qg.C.Cw||- %%bT:
t$v>#>#s   4B2F' '5Gc                       \ rS rSrS rS r\S 5       rS r\	R                  S.S jr\R                  4S jrS	 rS
 rSrg)r   Q   c                     Xl         g N_handleselfhandles     r/   __init__PipeHandle.__init__V   s        c                 |    U R                   b  SU R                   < 3nOSnSU R                  R                   SU S3$ )Nzhandle=closed< >)r5   	__class____name__r6   s     r/   __repr__PipeHandle.__repr__Y   sB    <<#t||./FF4>>**+1VHA66r;   c                     U R                   $ r3   r4   r7   s    r/   r8   PipeHandle.handle`   s    ||r;   c                 J    U R                   c  [        S5      eU R                   $ )NzI/O operation on closed pipe)r5   
ValueErrorrF   s    r/   filenoPipeHandle.filenod   s"    <<;<<||r;   )r%   c                R    U R                   b  U" U R                   5        S U l         g g r3   r4   )r7   r%   s     r/   closePipeHandle.closei   s$    <<#%DL $r;   c                 `    U R                   b!  U" SU < 3[        U S9  U R                  5         g g )Nz	unclosed )source)r5   ResourceWarningrM   )r7   _warns     r/   __del__PipeHandle.__del__n   s-    <<#IdX&EJJL $r;   c                     U $ r3    rF   s    r/   	__enter__PipeHandle.__enter__s   s    r;   c                 $    U R                  5         g r3   )rM   )r7   tvtbs       r/   __exit__PipeHandle.__exit__v   s    

r;   r4   N)rB   
__module____qualname____firstlineno__r9   rC   propertyr8   rJ   r   r%   rM   warningswarnrS   rW   r]   __static_attributes__rV   r;   r/   r   r   Q   sM    
7  
 $+#6#6  
 %MM 
r;   r   c                   ,   ^  \ rS rSrSU 4S jjrSrU =r$ )r   }   c                   > S =n=pxS =n	=pU[         :X  a2  [        SSS9u  p[        R                  " U[        R
                  5      nOUnU[         :X  a#  [        SS9u  p[        R                  " US5      nOUnU[         :X  a#  [        SS9u  p[        R                  " US5      nOU[        :X  a  UnOUn [        TU ]   " U4XgUS.UD6  U	b  [        U	5      U l
        U
b  [        U
5      U l        Ub  [        U5      U l        U[         :X  a  [        R                  " U5        U[         :X  a  [        R                  " U5        U[         :X  a  [        R                  " U5        g g !   XU4 H  nUc  M  [        R                  " U5        M      e = f! U[         :X  a  [        R                  " U5        U[         :X  a  [        R                  " U5        U[         :X  a  [        R                  " U5        f f = f)N)FTT)r	   r   )TFr   r   )stdinstdoutstderr)r   r   msvcrtopen_osfhandler   O_RDONLYSTDOUTsuperr9   r   ri   rj   rk   r   r%   rM   )r7   argsri   rj   rk   kwds	stdin_rfd
stdout_wfd
stderr_wfdstdin_wh	stdout_rh	stderr_rhstdin_rh	stdout_wh	stderr_whhrA   s                   r/   r9   Popen.__init__   s    /32	2J+///9D=!%t!LH--hDIIT>#'=#A I..y!<JJT>#'=#A I..y!<Jv#JJ	%GT 8$.8268 #'1
$(3$(3}#~$~$ #	95=''* 6  }#~$~$ s%   6E% 
9F %
F3FF A#G4)rk   ri   rj   )NNN)rB   r_   r`   ra   r9   re   __classcell__)rA   s   @r/   r   r   }   s    
+% +%r;   r   )sysplatformImportErrorr   	itertoolsrl   r   
subprocessr   rc   __all__BUFSIZEr   ro   countr   r   r   r   rV   r;   r/   <module>r      s    <<7
l
##    	    0 			! \7 +b& &X0%J 0%r;   