Ë
    ^ãj®#  ã                   ó,  — d dl Z d dlZd dlZd dlZd dlmZ ej                  dk(  r	 d dlZndZ	 d dlZd dlmZ eeefZ eed«      rej$                  Zd„ Znd„ Z	 ej*                  Zej,                  Zd
„ Zd&d„Zd„ ZdZej                  j9                  dez   «      rdZndZd„ Zd„ Zd&d„Z d„ Z!	 d dl"Z"d„ Z#ej                  dk(  rd„ Z$d„ Z%nd dlm&Z& d dl'm'Z'm(Z(m)Z) d„ Z%d„ Z$dZ*dZ+ej                  dk(  r		 d dl,Z,d„ Z-y	 d d lm.Z.m/Z/ d!ej                  v sej                  d"k(  rd#„ Z0nd$„ Z0d%„ Z-y# e$ r
 d dl	m
Z Y �Œw xY w# e$ r dZY �Œw xY w# e$ r d	„ Z e«       \  ZZ[Y Œòw xY w# e$ r d„ Z#Y Œ¼w xY w# e$ r dZ,Y d„ Z-yw xY w# e$ r dxZ.Z/Y ŒŠw xY w)'é    N)Úzip_longestÚwin32)r   )ÚUnsupportedOperationÚwritec                 ó    — t        | ||d  «      S ©N)Ú	__write__©ÚfdÚbufÚoffsets      úQ/var/www/html/metafoliadorv2/venv/lib/python3.12/site-packages/billiard/compat.pyÚsend_offsetr      s   € Ü˜˜S  ˜\Ó*Ð*ó    c                 ó   — t        d«      ‚)Nr   ©ÚNotImplementedErrorr
   s      r   r   r   !   s   € Ü! -Ó0Ð0r   c                  ób   ‡‡— t        j                  «       Š‰dk(  rdŠndŠˆˆfd„} ˆˆfd„}| |fS )NÚmbcsÚstrictÚsurrogateescapec                 ó®   •— t        | t        «      r| S t        | t        «      r| j                  ‰‰«      S t	        dt        | «      j                  z  «      ‚)a  
            Encode filename to the filesystem encoding with 'surrogateescape'
            error handler, return bytes unchanged. On Windows, use 'strict'
            error handler if the file system encoding is 'mbcs' (which is the
            default encoding).
            úexpect bytes or str, not %s)Ú
isinstanceÚbytesÚstrÚencodeÚ	TypeErrorÚtypeÚ__name__©ÚfilenameÚencodingÚerrorss    €€r   Úfsencodez_fscodec.<locals>.fsencode0   sQ   ø€ ô ˜(¤EÔ*Ø�Ü˜H¤cÔ*Ø—‘ x°Ó8Ð8äÐ =Ü"& x£.×"9Ñ"9ñ!:ó ;ð ;r   c                 ó®   •— t        | t        «      r| S t        | t        «      r| j                  ‰‰«      S t	        dt        | «      j                  z  «      ‚)a  
            Decode filename from the filesystem encoding with 'surrogateescape'
            error handler, return str unchanged. On Windows, use 'strict' error
            handler if the file system encoding is 'mbcs' (which is the default
            encoding).
            r   )r   r   r   Údecoder   r   r    r!   s    €€r   Úfsdecodez_fscodec.<locals>.fsdecode?   sQ   ø€ ô ˜(¤CÔ(Ø�Ü˜H¤eÔ,Ø—‘ x°Ó8Ð8äÐ =Ü"& x£.×"9Ñ"9ñ!:ó ;ð ;r   )ÚsysÚgetfilesystemencoding)r%   r(   r#   r$   s     @@r   Ú_fscodecr+   )   s:   ù€ Ü×,Ñ,Ó.ˆØ�vÒØ‰Fà&ˆFõ	;õ	;ð ˜Ð!Ð!r   c                 óz   — t        | t        j                  «      r| S 	 | j                  «       S # t        $ r Y yw xY w)z3Get object fileno, or :const:`None` if not defined.N)r   ÚnumbersÚIntegralÚfilenoÚFILENO_ERRORS)Úfs    r   Úmaybe_filenor2   T   s:   € ä�!”W×%Ñ%Ô&ØˆðØ�x‰x‹zÐøÜò Ùðús   ž. ®	:¹:c                 óÆ   — 	 t        j                  d«      S #  Y nxY wt        €| S t        j                  t        j                  «      d   }|t        j
                  k(  r| S |S )z­Return the maximum number of open file descriptors
    on this system.

    :keyword default: Value returned if there's no file
                      descriptor limit.

    ÚSC_OPEN_MAXé   )ÚosÚsysconfÚresourceÚ	getrlimitÚRLIMIT_NOFILEÚRLIM_INFINITY)ÚdefaultÚfdmaxs     r   Ú	get_fdmaxr>   ^   s^   € ðÜ�z‰z˜-Ó(Ð(øðÙúÜÐØˆÜ×Ñœx×5Ñ5Ó6°qÑ9€EØ”×&Ñ&Ò&ØˆØ€Ls   ‚ —c                 ó.   ‡— t        «       Šˆfd„| D «       S )z7Return all unique elements in ``it``, preserving order.c              3   óR   •K  — | ]  }|‰vsŒ‰j                  |«      xs |–— Œ  y ­wr   )Úadd)Ú.0ÚobjÚseens     €r   ú	<genexpr>zuniq.<locals>.<genexpr>u   s'   øè ø€ ÒB S°#¸T²/ˆD�H‰H�S‹MÒ ˜SÓ ÑBùs   ƒ	'�')Úset)ÚitrD   s    @r   ÚuniqrH   r   s   ø€ ä‹5€DÛB¨BÔBÐBr   )ÚfreebsdÚ	dragonfly)ÚcygwinÚdarwinz/dev/fdz/proc/self/fdc                  ó¨   — 	 t        j                  d«      j                  t        j                  t        «      j                  k7  S # t        $ r Y yw xY w)Nz/devF)r6   ÚstatÚst_devÚ_FD_DIRÚOSError© r   r   Ú_dev_fd_is_fdescfsrS   „   sA   € ðÜ�w‰w�v‹×%Ñ%¬¯©´Ó)9×)@Ñ)@Ñ@Ð@øÜò Ùðús   ‚AA Á	AÁAc                  óÔ   — t         j                  j                  t        «      rt	        «       sy	 t        j                  t        «      } t        d„ | D «       «      S # t        $ r Y yw xY w)z¯Return the descriptors open in this process, or None.

    None means this platform has no directory listing them, and the caller
    has to fall back to a numeric range.
    Nc              3   óT   K  — | ]   }|j                  «       sŒt        |«      –— Œ" y ­wr   )ÚisdigitÚint)rB   Únames     r   rE   z_open_fds.<locals>.<genexpr>š   s   è ø€ Ò@ °·±µ”#�d—)Ñ@ùs   ‚(˜()
r)   ÚplatformÚ
startswithÚ_BSD_WITH_FDESCFSrS   r6   ÚlistdirrP   rQ   Úsorted)Únamess    r   Ú	_open_fdsr_   Ž   sZ   € ô ‡|�|×ÑÔ0Ô1Ô:LÔ:NØðÜ—
‘
œ7Ó#ˆô Ñ@¨Ô@Ó@Ð@øô ò Ùðús   °A Á	A'Á&A'c                 óÂ  — t        t        t        d„ t        t        | xs g «      D «       «      «      «      } t        «       }|�.t        | «      } |D ]  }|| v rŒ	 t        j                  |«       Œ y t        d¬«      }t        dg| z   «      t        | |gz   «      }}t        ||«      D ]'  \  }}|dz   |k7  sŒt        j                  |dz   |«       Œ) y # t        $ r Y Œ�w xY w)Nc              3   ó&   K  — | ]	  }|€Œ|–— Œ y ­wr   rR   ©rB   r1   s     r   rE   z!close_open_fds.<locals>.<genexpr>Ÿ   s   è ø€ ò Ø°A±MŒñùó   ‚Ši   )r<   éÿÿÿÿr5   )ÚlistrH   r]   Úmapr2   r_   rF   r6   ÚcloserQ   r>   Úiterr   Ú
closerange)ÚkeepÚfdsr   ÚmaxfdÚkLÚkHÚlowÚhighs           r   Úclose_open_fdsrq   �   sí   € ä””Vñ Ü”| T¢Z¨RÓ0ôó ó ó €Dô ‹+€CØ
€ô �4‹yˆØò 	ˆBØ�T‰zØðÜ—‘˜•ð		ð 	Ü˜dÔ#€EÜ�2�$˜‘+Ó¤ T¨U¨G¡^Ó 4ˆ€BÜ   RÓ(ò )‰	ˆˆTØ�‰7�d‹?Ü�M‰M˜# ™' 4Õ(ñ)øô ò áðús   ÁCÃ	CÃCc                 ó:   — 	 | j                   S # t        $ r Y yw xY w)zV:exc:`socket.error` and :exc:`IOError` first got
    the ``.errno`` attribute in Py2.7r   )ÚerrnoÚAttributeError)Úexcs    r   Ú	get_errnorv   ·   s#   € ðØ�y‰yÐøÜò Ùðús   ‚ Ž	™c                 ó�  — t        |«      }t        j                  «       \  }}	 |t        | «      gdt	        |«      d d dddddd||ddg}t
        j                  dk\  r|j                  d«       t
        j                  dk\  r|j                  d«       |j                  d «       dt
        j                  cxk  rdk  r"n n|j                  t        j                  «       t        j                  |Ž t        j                  |«       t        j                  |«       S # t        j                  |«       t        j                  |«       w xY w)NTrd   F)é   é   )rx   é	   )NNNrd   )rx   é   )r]   r6   Úpiper%   Útupler)   Úversion_infoÚappendÚextendÚ
subprocessÚ
_USE_VFORKÚ_posixsubprocessÚ	fork_execrg   )ÚpathÚargsÚpassfdsÚerrpipe_readÚerrpipe_writes        r   Úspawnv_passfdsrŠ   Ñ   sþ   € Ü˜“/ˆÜ&(§g¡g£iÑ#ˆ�mð	$à”x “~Ð&¨¬e°G«n¸dÀDØ�B˜˜B  B¨°mØ�uðˆDô ×Ñ 7Ò*Ø—‘˜B”Ü×Ñ 6Ò)Ø—‘Ð2Ô3Ø�K‰K˜ÔØœ#×*Ñ*Ô4¨WÕ4Ø—‘œJ×1Ñ1Ô2Ü#×-Ñ-¨tÐ4ä�H‰H�\Ô"Ü�H‰H�]Õ#øô �H‰H�\Ô"Ü�H‰H�]Õ#ús   ¤C
D Ä,Ec                 ó8  — t         j                  dk7  r5|t        t         j                  «      t        t         j                  «      gz   }t        j                  «       }|s;t        t        d„ |D «       «      ¬«       t        j                  t        | «      |«       |S )Nr   c              3   ó&   K  — | ]	  }|sŒ|–— Œ y ­wr   rR   rb   s     r   rE   z!spawnv_passfds.<locals>.<genexpr>Í   s   è ø€ Ò&?¨QºQ¤qÑ&?ùrc   )rj   )r)   rY   r2   ÚstdoutÚstderrr6   Úforkrq   r]   Úexecvr%   )r…   r†   r‡   Úpids       r   rŠ   rŠ   Ã   sq   € Ü�<‰<˜7Ò"ð ÜœSŸZ™ZÓ(ÜœSŸZ™ZÓ(ð!ñ ˆGô �g‰g‹iˆÙÜ¤Ñ&?°'Ô&?Ó ?Õ@Ü�H‰H”X˜d“^ TÔ*Øˆ
r   c                 ó   — t        d«      ‚)Nz$setblocking not implemented on win32r   )ÚhandleÚblockings     r   Úsetblockingr•   è   s   € Ü!Ð"HÓIÐIr   c                 ó   — t        d«      ‚)Nz#isblocking not implemented on win32r   ©r“   s    r   Ú
isblockingr˜   ë   s   € Ü!Ð"GÓHÐHr   )Ú
O_NONBLOCK)ÚfcntlÚF_GETFLÚF_SETFLc                 ó2   — t        | t        «      t        z   S r   )rš   r›   r™   r—   s    r   r˜   r˜   ò   s   € Ü˜&¤'Ó*¬ZÑ7Ð8Ð8r   c                 óx   — t        | t        d«      }t        | t        |r|t         z  «       y |t        z  «       y )Nr   )rš   r›   rœ   r™   )r“   r”   Úflagss      r   r•   r•   õ   s6   € Ü�fœg qÓ)ˆÜØ”GÙ%-ˆE”j�[Ñ!õ	
à38¼:Ñ3Eõ	
r   z‡
On Windows, the ability to inspect memory usage requires the psutil library.

You can install it using pip:

    $ pip install psutil
z’
Your platform ({0}) does not seem to have the `resource.getrusage' function.

Please open an issue so that we can add support for this platform.
c                  óÐ   — t         €t        t        j                  «       «      ‚t	        t        j
                  t        j                  «       «      j                  «       d   dz  «      S )Nr   ç      �@)	ÚpsutilÚImportErrorÚE_PSUTIL_MISSINGÚstriprW   ÚProcessr6   ÚgetpidÚmemory_inforR   r   r   Úmem_rssr©     sI   € äˆ>ÜÔ.×4Ñ4Ó6Ó7Ð7Ü”6—>‘>¤"§)¡)£+Ó.×:Ñ:Ó<¸QÑ?À&ÑHÓIÐIr   )Ú	getrusageÚRUSAGE_SELFÚbsdrL   c                 ó   — t        | «      dz  S )Nr¡   ©rW   ©Úvs    r   Úmaxrss_to_kbr±   #  s   € ä�q“6˜F‘?Ð"r   c                 ó   — t        | «      S r   r®   r¯   s    r   r±   r±   *  s   € ä�q“6ˆMr   c                  óÆ   — t         €:t        t        j                  «       j	                  t
        j                  «      «      ‚t        t        t        «      j                  «      S r   )r8   r£   ÚE_RESOURCE_MISSINGr¥   Úformatr)   rY   r±   rª   r«   Ú	ru_maxrssrR   r   r   r©   r©   .  sB   € äÐÜÔ0×6Ñ6Ó8×?Ñ?ÄÇÁÓMÓNÐNÜœI¤kÓ2×<Ñ<Ó=Ð=r   r   )1r-   r6   r�   r)   Ú	itertoolsr   rY   Ú_winapir£   Ú_multiprocessingr   r8   Úior   rt   Ú
ValueErrorr0   Úhasattrr   r	   r   r%   r(   r+   r2   r>   rH   r[   rZ   rP   rS   r_   rq   rv   rƒ   rŠ   r•   r˜   r™   rš   r›   rœ   r¤   r´   r¢   r©   rª   r«   r±   rR   r   r   ú<module>r½      s	  ðÛ Û 	Û Û 
å !à‡<�<�7Òð6Üð €GðÛõ $Ø Ð-AÐB€ñ ˆ2ˆwÔØ—‘€Ió+ò
1ð,Ø�{‰{€HØ�{‰{€HòZóò(Cð -Ð Ø‡<�<×ÑÐ/Ð2CÑCÔDØ�Gà€GòòAó)ò4ð#$Ûò $ð* ‡<�<�7ÒòJóIõ ß-Ñ-ò9ò
ðÐ ðÐ ð ‡<�<�7ÒðÛóJð'ß3ð �—‘Ñ §¡°Ò 8ó	#ò	ó>øðG	 ò 6ß5Ð5ð6ûð ò ØƒHðûð, ò )ò%"ñN "›Ñ€HˆhÚðS)ûðt ò ôðûð^ ò Ø‰óJðûð ò 'Ø"&Ð&ˆ	’Kð'úsj   §D0 ¯E ÁE Â0E) Ã7E7 Ä F Ä0D?Ä>D?ÅEÅEÅE&Å%E&Å)E4Å3E4Å7FÆFÆ	FÆF