
    Sf:                        d Z ddlZddlZddlZddlZddlmZ ddlmZ ej	        Z
ej        ZddlmZ  ed  ee          D                       ZdD ]Z	 ee eee          <   # e$ r Y w xY wej        d	cZZej                            d
          Zer eee          ecZZerd	hn	 e            Zerdhn	 e            ZdZddeddhZddddddddeddddddhZ dgZ!d Z"e
fdZd Z#d Z$d Z%d  Z&e$dfd!Z' G d" d#          Z(dS )$ze
This module contains utilities added by billiard, to keep
"non-core" functionality out of ``.util``.    N   )RestartFreqExceeded)	monotonicBytesIOc              #   n   K   | ]0}|                     d           t          t          |          |fV  1dS )SIGN)
startswithgetattrsignal).0ns     A/var/www/html/env/lib/python3.11/site-packages/billiard/common.py	<genexpr>r      sV         !ALL4G4GVQ         )SIGHUPSIGABRTSIGTERMREMAP_SIGTERMSIGQUITF   r   SIGUSR1SIGUSR2SIGTRAPr   SIGEMTSIGSYSSIGPIPESIGALRMSIGXCPUSIGXFSZ	SIGVTALRMSIGPROFFc                     | pddk     rJ	 d                     |  t          |                     S # t          $ r d                     |            cY S w xY wd                     |           S )Nr   zsignal {0} ({1})z
signal {0}zexitcode {0})formatSIGMAPKeyError)statuss    r   human_statusr(   N   s    !q	0%,,fWffWoFFF 	0 	0 	0&&w/////	0  (((s   "-  AAc                 2     |t          |                     S Nr   )sloads     r   pickle_loadsr-   W   s    4

r   c                 z    	 t          j         | |           d S # t          t          t          t          f$ r Y d S w xY wr*   )r   OSErrorAttributeError
ValueErrorRuntimeError)signumhandlers     r   maybe_setsignalr5   \   sJ    fg&&&&&^Z>   s    ::c                     t           d         rt          j        t                     t	          | t
          j                   dt           d<   t          j        d| z
              d S )Nr   T   )	_should_have_exitedos_exitEX_SOFTWAREr5   r   SIG_DFLsysexit)r3   frames     r   _shutdown_cleanupr@   c   sZ     1 
FFN+++!HsV|_r   c                 .    t          t          | d           S r*   )r   r   )sigs    r   r3   r3   n   s    63%%%r   c                 <    | t           v p|d uo|t          j        k    S r*   )TERMSIGS_FORCEr   SIG_IGN)rB   currents     r   _should_override_term_signalrG   r   s(    ~ 	<			:FN!:r   c                    |rt           nt          D ]E}t          |          }|r2t          |t	          j        |                    rt          ||            Ft          D ]-}t          |          }|rt          |t          j                   .d S r*   )	TERMSIGS_FULLTERMSIGS_DEFAULTr3   rG   r   	getsignalr5   TERMSIGS_IGNORErE   )r4   fullrB   nums       r   reset_signalsrO   y   s     $:}}*: . .Skk 	.+C1A#1F1FGG .W--- 1 1Skk 	1C0001 1r   c                        e Zd ZeZd ZddZdS )restart_statec                 B    ||c| _         | _        d\  | _        | _        d S )N)r   N)maxRmaxTRT)selfrS   rT   s      r   __init__zrestart_state.__init__   s#    #T	49 r   Nc                 R   |t                      n|}| j        }| j        r#|| j        z
  | j        k    r|dc| _        | _        nE| j        r>| j        | j        k    r.| j        r'd| _        |                     |d| j        d          | j        || _        | xj        dz  c_        d S )Nr   z in r+   r   )r   rU   rV   rT   rS   r   )rW   nowrU   s      r   stepzrestart_state.step   s     [ikkkcF6 
	McDFldi// !NDFDFFY 	M46TY..
 v M..aaa/KLLL6>DF!r   r*   )__name__
__module____qualname__r   rX   r[    r   r   rQ   rQ      s=        -! ! !     r   rQ   ))__doc__r9   r   r=   pickle
exceptionsr   timer   r,   pickle_loadloadsr-   ior   dictdirr%   
_alias_sigr   r0   r   TERM_SIGNALTERM_SIGNAMEenvirongetr   setrL   rD   r;   rJ   rI   r8   r(   r5   r@   r3   rG   rO   rQ   r_   r   r   <module>ro      s  . . 
			  



  + + + + + +      k|       
  %(S[[   
 
 (  J.8wwvz**++    #NI \
// 7&& K "/99++CCEE -8)3355   , g ) ) ) %    
    & & &   ,% 	1 	1 	1 	1         s   A&&A.-A.