ó
    F\h¶  ã                   óÌ   • S SK r S SKrSSKJrJr  \R
                  (       d  \" S5      eSSKJr  SSKJ	r	  SSKJ
r
  SSKJr  S	/r " S
 S\5      r " S S	\	R                  5      rg)é    Né   )Ú	reductionÚset_spawning_popenz,No support for sending fds between processes)Ú
forkserver)Ú
popen_fork)Úspawn)ÚutilÚPopenc                   ó    • \ rS rSrS rS rSrg)Ú_DupFdé   c                 ó   • Xl         g ©N©Úind)Úselfr   s     Ú7/usr/lib/python3.13/multiprocessing/popen_forkserver.pyÚ__init__Ú_DupFd.__init__   s   € Ø�ó    c                 óF   • [         R                  " 5       U R                     $ r   )r   Úget_inherited_fdsr   )r   s    r   ÚdetachÚ_DupFd.detach   s   € Ü×+Ò+Ó-¨d¯h©hÑ7Ð7r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   Ú__static_attributes__© r   r   r   r      s   † òõ8r   r   c                   ó\   ^ • \ rS rSrSr\rU 4S jrS rS r	\
R                  4S jrSrU =r$ )r
   é   r   c                 ó2   >• / U l         [        TU ]	  U5        g r   )Ú_fdsÚsuperr   )r   Úprocess_objÚ	__class__s     €r   r   ÚPopen.__init__!   s   ø€ ØˆŒ	Ü‰Ñ˜Õ%r   c                 óh   • U R                   R                  U5        [        U R                   5      S-
  $ )Nr   )r$   ÚappendÚlen)r   Úfds     r   Úduplicate_for_childÚPopen.duplicate_for_child%   s'   € Ø�	‰	×Ñ˜ÔÜ�4—9‘9‹~ Ñ!Ð!r   c                 óÎ  • [         R                  " UR                  5      n[        R                  " 5       n[        U 5         [        R                  " X#5        [        R                  " X5        [        S 5        [        R                  " U R                  5      u  U l        n[        R                  " U5      n[        R                  " U [        R                   XPR                  45      U l        [%        USSS9 nUR'                  UR)                  5       5        S S S 5        [        R*                  " U R                  5      U l        g ! [        S 5        f = f! , (       d  f       ND= f)NÚwbT)Úclosefd)r   Úget_preparation_dataÚ_nameÚioÚBytesIOr   r   Údumpr   Úconnect_to_new_processr$   ÚsentinelÚosÚdupr	   ÚFinalizeÚ	close_fdsÚ	finalizerÚopenÚwriteÚ	getbufferÚread_signedÚpid)r   r&   Ú	prep_dataÚbufÚwÚ	_parent_wÚfs          r   Ú_launchÚPopen._launch)   sí   € Ü×.Ò.¨{×/@Ñ/@ÓAˆ	Ü�jŠj‹lˆÜ˜4Ô ð	%Ü�NŠN˜9Ô*Ü�NŠN˜;Ô,ä˜tÔ$ä%×<Ò<¸T¿Y¹YÓGÑˆŒ�qô —F’F˜1“Iˆ	ÜŸš t¬T¯^©^Ø(1·=±=Ð'AóCˆŒä�!�T 4Ò(¨AØ�G‰G�C—M‘M“OÔ$÷ )ä×)Ò)¨$¯-©-Ó8ˆ�øô ˜tÕ$ú÷ )Õ(ús   Á,E Ã8 EÅEÅ
E$c                 óX  • U R                   cj  SSKJn  U[        R                  :X  a  SOS nU" U R
                  /U5      (       d  g  [        R                  " U R
                  5      U l         U R                   $ U R                   $ ! [        [        4 a    SU l          U R                   $ f = f)Nr   )Úwaitéÿ   )
Ú
returncodeÚmultiprocessing.connectionrK   r9   ÚWNOHANGr8   r   rA   ÚOSErrorÚEOFError)r   ÚflagrK   Útimeouts       r   ÚpollÚ
Popen.poll=   s�   € Ø�?‰?Ñ"Ý7Ø¤2§:¡:Ó-‘a°4ˆGÙ˜Ÿ™˜¨×1Ñ1Øð&Ü",×"8Ò"8¸¿¹Ó"G�”ð �‰Ðˆt�‰Ðøô œXÐ&ó &ð #&�•à�‰Ðð&ús   Á%B ÂB)Â(B))r$   r=   rB   rM   r8   )r   r   r   r   Úmethodr   ÚDupFdr   r-   rH   r9   rO   rT   r   Ú__classcell__)r'   s   @r   r
   r
      s/   ø† Ø€FØ€Eõ&ò"ò9ð( Ÿ
™
÷ ò r   )r4   r9   Úcontextr   r   ÚHAVE_SEND_HANDLEÚImportErrorÚ r   r   r   r	   Ú__all__Úobjectr   r
   r    r   r   Ú<module>r_      sV   ðÛ 	Û 	ç 2Ø×!×!Ù
ÐDÓ
EÐEÝ Ý Ý Ý ð ˆ)€ô8ˆVô 8ô-ˆJ×Ñõ -r   