
    ⾙h,                        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j*                  d	cZZej0                  j3                  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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(y# e$ r Y w xY w)$ze
This module contains utilities added by billiard, to keep
"non-core" functionality out of ``.util``.    N   )RestartFreqExceeded)	monotonicBytesIOc              #   d   K   | ](  }|j                  d       st        t        |      |f * yw)SIGN)
startswithgetattrsignal).0ns     K/var/www/Befach/backend/env/lib/python3.12/site-packages/billiard/common.py	<genexpr>r      s,       !ALL4GWVQs   00)SIGHUPSIGABRTSIGTERMREMAP_SIGTERMSIGQUITF   r   SIGUSR1SIGTRAPr   SIGEMTSIGSYSSIGPIPESIGALRMSIGXCPUSIGXFSZ	SIGVTALRMSIGPROFSIGUSR2Fc                     | xs ddk  r	 dj                  |  t        |           S dj                  |       S # t        $ r dj                  |        cY S w xY w)Nr   zsignal {0} ({1})z
signal {0}zexitcode {0})formatSIGMAPKeyError)statuss    r   human_statusr'   M   se    !q	0%,,fWffWoFF   ((  	0&&w//	0s   7 AAc                 $     |t        |             S Nr   )sloads     r   pickle_loadsr,   V   s    
    c                 p    	 t        j                   | |       y # t        t        t        t        f$ r Y y w xY wr)   )r   OSErrorAttributeError
ValueErrorRuntimeError)signumhandlers     r   maybe_setsignalr5   [   s0    fg&^Z> s    55c                     t         d   rt        j                  t               t	        | t
        j                         dt         d<   t        j                  d| z
          y )Nr   T   )	_should_have_exitedos_exitEX_SOFTWAREr5   r   SIG_DFLsysexit)r3   frames     r   _shutdown_cleanupr@   b   sC     1
FFNN+!HHsV|_r-   c                 $    t        t        | d       S r)   )r   r   )sigs    r   r3   r3   m   s    63%%r-   c                 H    | t         v xs |d uxr |t        j                  k7  S r)   )TERMSIGS_FORCEr   SIG_IGN)rB   currents     r   _should_override_term_signalrG   q   s*    ~ 	<			:FNN!:r-   c                    |rt         nt        D ]<  }t        |      }|st        |t	        j
                  |            s1t        ||        > t        D ]*  }t        |      }|st        |t        j                         , y r)   )	TERMSIGS_FULLTERMSIGS_DEFAULTr3   rG   r   	getsignalr5   TERMSIGS_IGNORErE   )r4   fullrB   nums       r   reset_signalsrO   x   se     $}*::Sk+C1A1A#1FGW-	 ;
 SkC0 r-   c                       e Zd ZeZd ZddZy)restart_statec                 @    ||c| _         | _        d\  | _        | _        y )N)r   N)maxRmaxTRT)selfrS   rT   s      r   __init__zrestart_state.__init__   s    #T	49 r-   Nc                    |
t               n|}| j                  }| j                  r,|| j                  z
  | j                  k\  r|dc| _        | _        nY| j                  rM| j                  | j                  k\  r4| j                  r(d| _        | j                  |d| j                  d      | j                  || _        | xj                  dz  c_        y )Nr   z in r*   r   )r   rU   rV   rT   rS   r   )rW   nowrU   s      r   stepzrestart_state.step   s     [ikcFF66cDFFldii/ !NDFDFYY466TYY.
 vv..a/KLL66>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      su  . 
  
  + kk||  
 %([ 
 (J.8wvz*+ ( #NNI \

/& K "/9+CE -)35 	  , g ) % 
& ,% 	1 O  s   C77C?>C?