§
    »"½j~e  ã                   óD  — d Z ddl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Zddl	Zddl
ZddlmZ ddlmZ ddlmZ ddlmZmZ ddlmZ ddlmZ d	d
lmZmZ d	dlmZ d	dlmZ ddlmZ ddl Z!ddl"Z!ddl!m#Z# ddl m$Z$ ddl"m%Z& ddl'm(Z( ej)        j*        › dej)        j+        › �Z,d„ Z- G d„ d¦  «        Z. G d„ de.e¦  «        Z/ G d„ de&¦  «        Z% G d„ de¦  «        Z0d*d„Z1d*d„Z2d*d „Z3ej4        Z4ej5        Z5d*d!„Z6d*d"„Z7d+d$e8ddfd%„Z9d*d&„Z:d,d'„Z; G d(„ d)e¦  «        Z<dS )-zUsetuptools.command.egg_info

Create a distribution's .egg-info directory and contentsé    N)ÚCallable)ÚCommand)Ú	bdist_egg)ÚsdistÚwalk_revctrl)Úedit_config)Úglobé   )Ú_entry_pointsÚ_normalization)Úmetadata)ÚSetuptoolsDeprecationWarningé   )Ú_requirestxt)Úlog)ÚDistutilsInternalError)ÚFileList)Úconvert_pathú.c                 óÞ  — d} | j         t          j        j        ¦  «        }t	          j        t          j        ¦  «        }d|› d�}t          |¦  «        D �]f\  }}|t          |¦  «        dz
  k    }|dk    r|r|dz  }n|d|› d|› d	�z  }Œ7d
}t          |¦  «        }	||	k     �r||         }
|
dk    r	||dz   z  }ní|
dk    r||z  }ná|
dk    rÄ|dz   }||	k     r||         dk    r|dz   }||	k     r||         dk    r|dz   }||	k     r#||         dk    r|dz   }||	k     r||         dk    °||	k    r|t	          j        |
¦  «        z  }na||dz   |…         }d}|d
         dk    rd}|dd…         }|t	          j        |¦  «        z  }|d|› d�z  }|}n|t	          j        |
¦  «        z  }|dz  }||	k     �°|s||z  }�Œh|dz  }t	          j        |t          j	        t          j
        z  ¬¦  «        S )zö
    Translate a file path glob like '*.txt' in to a regular expression.
    This differs from fnmatch.translate which allows wildcards to match
    directory separators. It also knows about '**/' which matches any number of
    directories.
    Ú z[^ú]r   ú**z.*z(?:ú+z)*r   Ú*ú?ú[ú!ú^Nz\Z)Úflags)ÚsplitÚosÚpathÚsepÚreÚescapeÚ	enumerateÚlenÚcompileÚ	MULTILINEÚDOTALL)r	   ÚpatÚchunksr$   Ú
valid_charÚcÚchunkÚ
last_chunkÚiÚ	chunk_lenÚcharÚinner_iÚinnerÚ
char_classs                 ú[/home/spazio/kingdom_calls/venv/lib/python3.11/site-packages/setuptools/command/egg_info.pyÚtranslate_patternr9   &   s‰  € ð €Cð ˆTŒZ�œœÑ$Ô$€Få
Œ)•B”FÑ
Ô
€CØ�c���€Jå˜fÑ%Ô%ð >ñ >‰ˆˆ5Ø�#˜f™+œ+¨™/Ò)ˆ
ð �DŠ=ˆ=Øð 2à�t‘��ð Ð1˜ZÐ1Ð1¨#Ð1Ð1Ð1Ñ1�Øð ˆÝ˜‘J”Jˆ	Ø�)Šm‰mØ˜”8ˆDØ�sŠ{ˆ{à�z CÑ'Ñ'��Ø˜’�à�zÑ!��Ø˜’�à˜a™%�à˜YÒ&Ð&¨5°¬>¸SÒ+@Ð+@Ø%¨™k�GØ˜YÒ&Ð&¨5°¬>¸SÒ+@Ð+@Ø%¨™k�Gð  	Ò)Ð)¨e°G¬nÀÒ.CÐ.CØ%¨™k�Gð  	Ò)Ð)¨e°G¬nÀÒ.CÐ.Cð ˜iÒ'Ð'ð �2œ9 T™?œ?Ñ*�C�Cð " ! a¡%¨' /Ô2�EØ!#�Jð ˜Q”x 3’�Ø%(˜
Ø % a b b¤	˜à¥"¤)¨EÑ"2Ô"2Ñ2�JØÐ,˜zÐ,Ð,Ð,Ñ,�Cð  �A�Aà•r”y ‘”Ñ&�Ø�‰FˆAðU �)Šm‰mðZ ð 	Ø�3‰JˆCùàˆ5�L€CÝŒ:�c¥¤µ´	Ñ!9Ð:Ñ:Ô:Ð:ó    c                   óv   — e Zd ZdZdZed„ ¦   «         Zd„ Zd„ Zde	de
fd„Zde	fd„Zde	fd	„Z ee¦  «        ZdS )
Ú
InfoCommonNc                 óX   — t          j        | j                             ¦   «         ¦  «        S ©N)r   Ú	safe_nameÚdistributionÚget_name©Úselfs    r8   ÚnamezInfoCommon.name}   s"   € åÔ'¨Ô(9×(BÒ(BÑ(DÔ(DÑEÔEÐEr:   c                 ó‚   — |                       | j                             ¦   «         ¦  «        }t          j        |¦  «        S r>   )Ú
_maybe_tagr@   Úget_versionr   Úsafe_version)rC   Útaggeds     r8   Útagged_versionzInfoCommon.tagged_version�   s3   € Ø—’ Ô!2×!>Ò!>Ñ!@Ô!@ÑAÔAˆÝÔ*¨6Ñ2Ô2Ð2r:   c                 óR   — | j         r|                      |¦  «        r|n	|| j         z   S )z�
        egg_info may be called more than once for a distribution,
        in which case the version string already contains all tags.
        )ÚvtagsÚ_already_tagged©rC   Úversions     r8   rF   zInfoCommon._maybe_tag…   s7   € ð Œzð&Ø"×2Ò2°7Ñ;Ô;ð&ˆGˆGà˜4œ:Ñ%ð	
r:   rO   Úreturnc                 ó„   — |                      | j        ¦  «        p&|                      |                      ¦   «         ¦  «        S r>   )ÚendswithrL   Ú
_safe_tagsrN   s     r8   rM   zInfoCommon._already_tagged�   s7   € ð ×Ò ¤
Ñ+Ô+ÐR¨w×/?Ò/?ÀÇÂÑ@QÔ@QÑ/RÔ/RÐRr:   c                 óÚ   — 	 t          j        d| j        › �¦  «        dd …         S # t          j        j        $ r0 t          j        | j                             dd¦  «        ¦  «        cY S w xY w)NÚ0r   Ú r   )r   rH   rL   Ú	packagingrO   ÚInvalidVersionr?   ÚreplacerB   s    r8   rS   zInfoCommon._safe_tags•   s{   € ð	JÝ!Ô.Ð/?°4´:Ð/?Ð/?Ñ@Ô@ÀÀÀÔDÐDøÝÔ Ô/ð 	Jð 	Jð 	JÝ!Ô+¨D¬J×,>Ò,>¸sÀCÑ,HÔ,HÑIÔIÐIÐIÐIð	Jøøøs   ‚#& ¦AA*Á)A*c                 óh   — d}| j         r
|| j         z  }| j        r|t          j        d¦  «        z  }|S )Nr   z%Y%m%d)Ú	tag_buildÚtag_dateÚtimeÚstrftimerN   s     r8   ÚtagszInfoCommon.tags�   s@   € ØˆØŒ>ð 	&Ø�t”~Ñ%ˆGØŒ=ð 	/Ø•t”} XÑ.Ô.Ñ.ˆGØˆr:   )Ú__name__Ú
__module__Ú__qualname__r[   r\   ÚpropertyrD   rJ   rF   ÚstrÚboolrM   rS   r_   rL   © r:   r8   r<   r<   y   sÄ   € € € € € Ø€IØ€HàðFð Fñ „XðFð3ð 3ð 3ð	
ð 	
ð 	
ðS sð S¨tð Sð Sð Sð Sð
J˜Cð Jð Jð Jð Jð�cð ð ð ð ð ˆH�T‰NŒN€E€E€Er:   r<   c                   ó´   — e Zd ZdZg d¢ZdgZddiZd„ Zedd„¦   «         Z	e	j
        d	„ ¦   «         Z	dd
„Zdd„Zedfd„Zddeddfd„Zdd„Zdd„Zdd„Zdd„ZdS )Úegg_infoz+create a distribution's .egg-info directory))z	egg-base=ÚezLdirectory containing .egg-info directories [default: top of the source tree])útag-dateÚdz0Add date stamp (e.g. 20050528) to version number)z
tag-build=Úbz-Specify explicit tag to add to version number)úno-dateÚDz"Don't include date stamp [default]rj   rm   c                 óL   — d | _         d | _        d | _        d | _        d| _        d S )NF)Úegg_baseÚegg_namerh   Úegg_versionÚignore_egg_info_in_manifestrB   s    r8   Úinitialize_optionszegg_info.initialize_options¼   s-   € ØˆŒØˆŒØˆŒØˆÔØ+0ˆÔ(Ð(Ð(r:   rP   Nc                 ó   — d S r>   rf   rB   s    r8   Útag_svn_revisionzegg_info.tag_svn_revisionÆ   ó   € àˆr:   c                 ó   — d S r>   rf   )rC   Úvalues     r8   rv   zegg_info.tag_svn_revisionÊ   rw   r:   c                 óˆ   — t          |                      ¦   «         d¬¦  «        }t          |t          |¬¦  «        ¦  «         dS )z³
        Materialize the value of date into the
        build tag. Install build keys in a deterministic order
        to avoid arbitrary reordering on subsequent builds.
        r   )r[   r\   )rh   N)Údictr_   r   )rC   Úfilenamerh   s      r8   Úsave_version_infozegg_info.save_version_infoÐ   s?   € õ  $§)¢)¡+¤+¸Ð:Ñ:Ô:ˆÝ�H�d¨HÐ5Ñ5Ô5Ñ6Ô6Ð6Ð6Ð6r:   c                 óZ  — | j         | _        |                      ¦   «         | _        t          j                             | j        ¦  «        }	 t          |t          j        j        ¦  «        }|rdnd}t          j         	                    || j        | j        fz  ¦  «         nB# t          $ r5}t          j                             d| j        › d| j        › �¦  «        |‚d }~ww xY w| j        €3| j        j        }|pi                      dt$          j        ¦  «        | _        |                      d¦  «         t+          j        | j        ¦  «        dz   | _        | j        t$          j        k    r/t$          j                             | j        | j        ¦  «        | _        | j        | j        j        _        d S )Nz%s==%sz%s===%sz-Invalid distribution name or version syntax: Ú-r   rp   ú	.egg-info)rD   rq   rJ   rr   rW   rO   ÚVersionÚ
isinstanceÚrequirementsÚRequirementÚ
ValueErrorÚ	distutilsÚerrorsÚDistutilsOptionErrorrp   r@   Úpackage_dirÚgetr"   ÚcurdirÚensure_dirnamer   Úfilename_componentrh   r#   Újoinr   )rC   Úparsed_versionÚ
is_versionÚspecri   Údirss         r8   Úfinalize_optionszegg_info.finalize_optionsÛ   sƒ  € ð
 œ	ˆŒØ×.Ò.Ñ0Ô0ˆÔÝ"Ô*×2Ò2°4Ô3CÑDÔDˆð	Ý# NµIÔ4EÔ4MÑNÔNˆJØ)Ð8�8�8¨yˆDÝÔ"×.Ò.¨t°t´}ÀdÔFVÐ6WÑ/WÑXÔXÐXÐXøÝð 	ð 	ð 	ÝÔ"×7Ò7ØbÀÄÐbÐbÐPTÔP`ÐbÐbñô àðøøøøð	øøøð
 Œ=Ð ØÔ$Ô0ˆDØ!˜Z R×,Ò,¨Rµ´Ñ;Ô;ˆDŒMà×Ò˜JÑ'Ô'Ð'Ý&Ô9¸$¼-ÑHÔHÈ;ÑVˆŒØŒ=�BœIÒ%Ð%ÝœGŸLšL¨¬¸¼ÑFÔFˆDŒMð
 .2Ô-=ˆÔÔ"Ô*Ð*Ð*s   ÁAB Â
CÂ)0CÃCc                 ó:   — t          | j        | j        ||¦  «        S )ú0Compute filename of the output egg. Private API.)Ú_egg_basenamerq   rr   )rC   Ú
py_versionÚplatforms      r8   Ú_get_egg_basenamezegg_info._get_egg_basenameû   s   € å˜Tœ]¨DÔ,<¸jÈ(ÑSÔSÐSr:   FÚforcec                 óà   — |r|                       |||¦  «         dS t          j                             |¦  «        r3|€|st	          j        d||¦  «         dS |                      |¦  «         dS dS )a¹  Write `data` to `filename` or delete if empty

        If `data` is non-empty, this routine is the same as ``write_file()``.
        If `data` is empty but not ``None``, this is the same as calling
        ``delete_file(filename)`.  If `data` is ``None``, then this is a no-op
        unless `filename` exists, in which case a warning is issued about the
        orphaned file (if `force` is false), or deleted (if `force` is true).
        Nz$%s not set in setup(), but %s exists)Ú
write_filer"   r#   Úexistsr   ÚwarnÚdelete_file)rC   Úwhatr|   Údatarš   s        r8   Úwrite_or_delete_filezegg_info.write_or_delete_fileÿ   s…   € ð ð 	+Ø�OŠO˜D (¨DÑ1Ô1Ð1Ð1Ð1ÝŒW�^Š^˜HÑ%Ô%ð 	+Øˆ| Eˆ|Ý”Ð?ÀÀxÑPÔPÐPØ�à× Ò  Ñ*Ô*Ð*Ð*Ð*ð	+ð 	+r:   c                 óà   — t          j        d||¦  «         |                     d¦  «        }| j        s;t	          |d¦  «        }|                     |¦  «         |                     ¦   «          dS dS )zªWrite `data` to `filename` (if not a dry run) after announcing it

        `what` is used in a log message to identify what is being written
        to the file.
        zwriting %s to %súutf-8ÚwbN)r   ÚinfoÚencodeÚdry_runÚopenÚwriteÚclose)rC   r    r|   r¡   Úfs        r8   rœ   zegg_info.write_file  sm   € õ 	ŒÐ# T¨8Ñ4Ô4Ð4Ø�{Š{˜7Ñ#Ô#ˆØŒ|ð 	Ý�X˜tÑ$Ô$ˆAØ�GŠG�D‰MŒMˆMØ�GŠG‰IŒIˆIˆIˆIð	ð 	r:   c                 ój   — t          j        d|¦  «         | j        st          j        |¦  «         dS dS )z8Delete `filename` (if not a dry run) after announcing itzdeleting %sN)r   r¦   r¨   r"   Úunlink)rC   r|   s     r8   rŸ   zegg_info.delete_file  s>   € åŒ� Ñ)Ô)Ð)ØŒ|ð 	 ÝŒI�hÑÔÐÐÐð	 ð 	 r:   c           	      ó°  — t          t          j        d¬¦  «        ¦  «        }|                      | j        ¦  «         	 t          j        | j        d ¦  «         n=# t          $ r0}d| j        › d�}t          j	         
                    |¦  «        |‚d }~ww xY w|D ]P}|                     ¦   «         } || |j        t
          j                             | j        |j        ¦  «        ¦  «         ŒQt
          j                             | j        d¦  «        }t
          j                             |¦  «        r|                      |¦  «         |                      ¦   «          d S )Nzegg_info.writers)Úgroupz'Cannot update time stamp of directory 'ú'znative_libs.txt)Úlistr   Úentry_pointsÚmkpathrh   r"   ÚutimeÚOSErrorr†   r‡   ÚDistutilsFileErrorÚloadrD   r#   rŽ   r�   rŸ   Úfind_sources)rC   Úwritersri   ÚmsgÚepÚwriterÚnls          r8   Úrunzegg_info.run$  sH  € õ •xÔ,Ð3EÐFÑFÔFÑGÔGˆà�Š�D”MÑ"Ô"Ð"ð	BÝŒH�T”] DÑ)Ô)Ð)Ð)øÝð 	Bð 	Bð 	BØL¸D¼MÐLÐLÐLˆCÝÔ"×5Ò5°cÑ:Ô:ÀÐAøøøøð	Bøøøð ð 	Hð 	HˆBØ—W’W‘Y”YˆFØˆF�4˜œ¥"¤'§,¢,¨t¬}¸b¼gÑ"FÔ"FÑGÔGÐGÐGõ ŒW�\Š\˜$œ-Ð):Ñ;Ô;ˆÝŒ7�>Š>˜"ÑÔð 	!Ø×Ò˜RÑ Ô Ð à×ÒÑÔÐÐÐs   ¾A Á
BÁ#+BÂBc                 óÞ   — t           j                             | j        d¦  «        }t	          | j        ¦  «        }| j        |_        ||_        | 	                    ¦   «          |j
        | _
        dS )z"Generate SOURCES.txt manifest filezSOURCES.txtN)r"   r#   rŽ   rh   Úmanifest_makerr@   rs   Úignore_egg_info_dirÚmanifestr¿   Úfilelist)rC   Úmanifest_filenameÚmms      r8   r¹   zegg_info.find_sources:  sV   € åœGŸLšL¨¬¸ÑFÔFÐÝ˜DÔ-Ñ.Ô.ˆØ!%Ô!AˆÔØ'ˆŒØ
�Š‰ŒˆØœˆŒˆˆr:   ©rP   N©F)r`   ra   rb   ÚdescriptionÚuser_optionsÚboolean_optionsÚnegative_optrt   rc   rv   Úsetterr}   r“   ÚPY_MAJORr™   re   r¢   rœ   rŸ   r¿   r¹   rf   r:   r8   rh   rh   ¨   sM  € € € € € Ø?€Kð
ð 
ð 
€Lð "�l€Oà�:ð€Lð1ð 1ð 1ð ðð ð ñ „Xðð Ôðð ñ Ôðð
	7ð 	7ð 	7ð 	7ð>ð >ð >ð >ð@ ,4¸dð Tð Tð Tð Tð+ð +Àð +ÐQUð +ð +ð +ð +ð$ð ð ð ð ð  ð  ð  ðð ð ð ð,$ð $ð $ð $ð $ð $r:   rh   c                   ó†   ‡ — e Zd Z	 ddeddfˆ fd„Zdd„Zd„ Zd„ Zd	„ Zd
„ Z	d„ Z
d„ Zd„ Zd„ Zd„ Zdd„Zdd„Zd„ Zd„ Zˆ xZS )r   NFrÂ   rP   c                 óZ   •— t          ¦   «                              ||¦  «         || _        d S r>   )ÚsuperÚ__init__rÂ   )rC   rž   Údebug_printrÂ   Ú	__class__s       €r8   rÒ   zFileList.__init__G  s-   ø€ õ 	‰Œ×Ò˜˜{Ñ+Ô+Ð+Ø#6ˆÔ Ð Ð r:   c           	      óf  — |                       |¦  «        \  }}}}| j        | j        | j        | j        t          j        | j        |¦  «        t          j        | j        |¦  «        | j	        | j
        dœ}dddddddd	dœ}	 ||         }n&# t          $ r d
|›d|›�}	t          |	¦  «        d ‚w xY w|                     d¦  «        }
|dv r|g}|
r|fnd}||         }|                      d                     |g|
r|gng z   |z   ¦  «        ¦  «         |D ] } ||¦  «        st!          j        ||g|¢R Ž  Œ!d S )N)ÚincludeÚexcludezglobal-includezglobal-excludezrecursive-includezrecursive-excludeÚgraftÚprunez%warning: no files found matching '%s'z9warning: no previously-included files found matching '%s'z>warning: no files found matching '%s' anywhere in distributionzRwarning: no previously-included files matching '%s' found anywhere in distributionz:warning: no files found matching '%s' under directory '%s'zNwarning: no previously-included files matching '%s' found under directory '%s'z+warning: no directories found matching '%s'z6no previously-included directories found matching '%s'z$Invalid MANIFEST.in: unknown action z in z
recursive->   rØ   rÙ   rf   rV   )Ú_parse_template_linerÖ   r×   Úglobal_includeÚglobal_excludeÚ	functoolsÚpartialÚrecursive_includeÚrecursive_excluderØ   rÙ   ÚKeyErrorr   Ú
startswithrÓ   rŽ   r   rž   )rC   ÚlineÚactionÚpatternsÚdirÚdir_patternÚ
action_mapÚlog_mapÚprocess_actionr»   Úaction_is_recursiveÚextra_log_argsÚlog_tmplÚpatterns                 r8   Úprocess_template_linezFileList.process_template_lineM  sÓ  € ð 04×/HÒ/HÈÑ/NÔ/NÑ,ˆ�˜3 ð ”|Ø”|Ø"Ô1Ø"Ô1Ý!*Ô!2ØÔ&Øñ"ô "õ "+Ô!2ØÔ&Øñ"ô "ð ”ZØ”Zð+
ð +
ˆ
ð" ?ØSàPð6ð Mð2ð CØMð%
ð 
ˆð*	8Ø'¨Ô/ˆNˆNøÝð 	8ð 	8ð 	8ØO¸ÐOÐOÀtÐOÐOˆCÝ(¨Ñ-Ô-°4Ð7ð	8øøøð %×/Ò/°Ñ=Ô=ÐØÐ'Ð'Ð'Ø#�}ˆHØ#6Ð>˜#˜˜¸BˆØ˜6”?ˆà×ÒØ�HŠHØ�Ð%8Ð@˜S˜E˜E¸bÑAÀHÑLñô ñ	
ô 	
ð 	
ð
  ð 	=ð 	=ˆGØ!�> 'Ñ*Ô*ð =Ý”˜ 7Ð<¨^Ð<Ð<Ð<Ð<øð	=ð 	=s   Â B	 Â	#B,c                 óâ   — d}t          t          | j        ¦  «        dz
  dd¦  «        D ]E} || j        |         ¦  «        r-|                      d| j        |         z   ¦  «         | j        |= d}ŒF|S )z†
        Remove all files from the file list that match the predicate.
        Return True if any matching files were removed
        Fr   éÿÿÿÿz
 removing T)Úranger(   ÚfilesrÓ   )rC   Ú	predicateÚfoundr2   s       r8   Ú_remove_fileszFileList._remove_files“  s|   € ð
 ˆÝ•s˜4œ:‘”¨Ñ*¨B°Ñ3Ô3ð 	ð 	ˆAØˆy˜œ AœÑ'Ô'ð Ø× Ò  °´
¸1´Ñ!=Ñ>Ô>Ð>Ø”J˜q�MØ�øØˆr:   c                 ó|   — d„ t          |¦  «        D ¦   «         }|                      |¦  «         t          |¦  «        S )z#Include files that match 'pattern'.c                 óP   — g | ]#}t           j                             |¦  «        °!|‘Œ$S rf   ©r"   r#   Úisdir©Ú.0r¬   s     r8   ú
<listcomp>z$FileList.include.<locals>.<listcomp>¢  s+   € ÐBÐBÐB�qµ´·²¸qÑ1AÔ1AÐB�ÐBÐBÐBr:   ©r	   Úextendre   )rC   rî   rõ   s      r8   rÖ   zFileList.include   s9   € àBÐB�D ™MœMÐBÑBÔBˆØ�Š�EÑÔÐÝ�E‰{Œ{Ðr:   c                 óT   — t          |¦  «        }|                      |j        ¦  «        S )z#Exclude files that match 'pattern'.)r9   rö   Úmatch©rC   rî   r  s      r8   r×   zFileList.exclude¦  s%   € å! 'Ñ*Ô*ˆØ×!Ò! %¤+Ñ.Ô.Ð.r:   c                 óÂ   — t           j                             |d|¦  «        }d„ t          |d¬¦  «        D ¦   «         }|                      |¦  «         t          |¦  «        S )zN
        Include all files anywhere in 'dir/' that match the pattern.
        r   c                 óP   — g | ]#}t           j                             |¦  «        °!|‘Œ$S rf   rù   rû   s     r8   rý   z.FileList.recursive_include.<locals>.<listcomp>°  s,   € ÐWÐWÐW�qÅbÄgÇmÂmÐTUÑFVÔFVÐW�ÐWÐWÐWr:   T)Ú	recursive)r"   r#   rŽ   r	   rÿ   re   )rC   ræ   rî   Úfull_patternrõ   s        r8   rß   zFileList.recursive_include«  sY   € õ ”w—|’| C¨¨wÑ7Ô7ˆØWÐW�D ¸Ð>Ñ>Ô>ÐWÑWÔWˆØ�Š�EÑÔÐÝ�E‰{Œ{Ðr:   c                 ó’   — t          t          j                             |d|¦  «        ¦  «        }|                      |j        ¦  «        S )zM
        Exclude any file anywhere in 'dir/' that match the pattern.
        r   ©r9   r"   r#   rŽ   rö   r  )rC   ræ   rî   r  s       r8   rà   zFileList.recursive_exclude´  s9   € õ "¥"¤'§,¢,¨s°D¸'Ñ"BÔ"BÑCÔCˆØ×!Ò! %¤+Ñ.Ô.Ð.r:   c                 ó|   — d„ t          |¦  «        D ¦   «         }|                      |¦  «         t          |¦  «        S )zInclude all files from 'dir/'.c                 óV   — g | ]&}t           j                             |¦  «        D ]}|‘ŒŒ'S rf   )r†   rÄ   Úfindall)rü   Ú	match_dirÚitems      r8   rý   z"FileList.graft.<locals>.<listcomp>½  sP   € ð 
ð 
ð 
àÝ!Ô*×2Ò2°9Ñ=Ô=ð
ð 
ð ð ð
ð 
ð 
ð 
r:   rþ   )rC   ræ   rõ   s      r8   rØ   zFileList.graft»  sF   € ð
ð 
å! #™YœYð
ñ 
ô 
ˆð
 	�Š�EÑÔÐÝ�E‰{Œ{Ðr:   c                 ó�   — t          t          j                             |d¦  «        ¦  «        }|                      |j        ¦  «        S )zFilter out files from 'dir/'.r   r  )rC   ræ   r  s      r8   rÙ   zFileList.pruneÅ  s5   € å!¥"¤'§,¢,¨s°DÑ"9Ô"9Ñ:Ô:ˆØ×!Ò! %¤+Ñ.Ô.Ð.r:   c                 ó  ‡— | j         €|                      ¦   «          t          t          j                             d|¦  «        ¦  «        Šˆfd„| j         D ¦   «         }|                      |¦  «         t          |¦  «        S )z“
        Include all files anywhere in the current directory that match the
        pattern. This is very inefficient on large file trees.
        Nr   c                 ó>   •— g | ]}‰                      |¦  «        ¯|‘ŒS rf   )r  )rü   r¬   r  s     €r8   rý   z+FileList.global_include.<locals>.<listcomp>Ò  s(   ø€ Ð<Ð<Ð<�q¨U¯[ª[¸©^¬^Ð<�Ð<Ð<Ð<r:   )Úallfilesr  r9   r"   r#   rŽ   rÿ   re   )rC   rî   rõ   r  s      @r8   rÛ   zFileList.global_includeÊ  sp   ø€ ð
 Œ=Ð Ø�LŠL‰NŒNˆNÝ!¥"¤'§,¢,¨t°WÑ"=Ô"=Ñ>Ô>ˆØ<Ð<Ð<Ð<˜DœMÐ<Ñ<Ô<ˆØ�Š�EÑÔÐÝ�E‰{Œ{Ðr:   c                 ó�   — t          t          j                             d|¦  «        ¦  «        }|                      |j        ¦  «        S )zD
        Exclude all files anywhere that match the pattern.
        r   r  r  s      r8   rÜ   zFileList.global_excludeÖ  s7   € õ "¥"¤'§,¢,¨t°WÑ"=Ô"=Ñ>Ô>ˆØ×!Ò! %¤+Ñ.Ô.Ð.r:   c                 óÄ   — |                      d¦  «        r
|d d…         }t          |¦  «        }|                      |¦  «        r| j                             |¦  «         d S d S )Núrñ   )rR   r   Ú
_safe_pathró   Úappend)rC   r  r#   s      r8   r  zFileList.appendÝ  sj   € Ø�=Š=˜ÑÔð 	Ø˜˜˜”9ˆDÝ˜DÑ!Ô!ˆà�?Š?˜4Ñ Ô ð 	$ØŒJ×Ò˜dÑ#Ô#Ð#Ð#Ð#ð	$ð 	$r:   c                 ó`   — | j                              t          | j        |¦  «        ¦  «         d S r>   )ró   rÿ   Úfilterr  )rC   Úpathss     r8   rÿ   zFileList.extendå  s*   € ØŒ
×Ò�& ¤°%Ñ8Ô8Ñ9Ô9Ð9Ð9Ð9r:   c                 ó^   — t          t          | j        | j        ¦  «        ¦  «        | _        dS )zÜ
        Replace self.files with only safe paths

        Because some owners of FileList manipulate the underlying
        ``files`` attribute directly, this method must be called to
        repair those paths.
        N)r²   r  r  ró   rB   s    r8   Ú_repairzFileList._repairè  s%   € õ �& ¤°$´*Ñ=Ô=Ñ>Ô>ˆŒ
ˆ
ˆ
r:   c                 óà  — d}t          j        |¦  «        }|€t          j        d|› d�¦  «         dS t          j        |d¦  «        }|€t          j        ||d¦  «         dS 	 d|v pd|v }| j        r|rdS t          j                             |¦  «        st          j                             |¦  «        rdS d S # t          $ r+ t          j        ||t          j        ¦   «         ¦  «         Y d S w xY w)	Nz!'%s' not %s encodable -- skippingr±   z$' in unexpected encoding -- skippingFr¤   r€   s	   .egg-infoT)Úunicode_utilsÚfilesys_decoder   rž   Ú
try_encoderÂ   r"   r#   r�   ÚUnicodeEncodeErrorÚsysÚgetfilesystemencoding)rC   r#   Úenc_warnÚu_pathÚ	utf8_pathÚis_egg_infos         r8   r  zFileList._safe_pathò  s$  € Ø6ˆõ Ô-¨dÑ3Ô3ˆØˆ>ÝŒHÐC˜ÐCÐCÐCÑDÔDÐDØ�5õ "Ô,¨V°WÑ=Ô=ˆ	ØÐÝŒH�X˜t WÑ-Ô-Ð-Ø�5ð
	Bà%¨Ð/ÐL°<À9Ð3LˆKØÔ'ð ¨Kð Ø�uåŒw�~Š~˜fÑ%Ô%ð ­¬¯ª¸	Ñ)BÔ)Bð Ø�tðð øõ "ð 	Bð 	Bð 	BÝŒH�X˜t¥SÔ%>Ñ%@Ô%@ÑAÔAÐAÐAÐAÐAð	Bøøøs   Á#B8 Á6>B8 Â81C-Ã,C-)NNFrÇ   )r`   ra   rb   re   rÒ   rï   rö   rÖ   r×   rß   rà   rØ   rÙ   rÛ   rÜ   r  rÿ   r  r  Ú__classcell__)rÔ   s   @r8   r   r   D  sF  ø€ € € € € ð HMð7ð 7Ø@Dð7à	ð7ð 7ð 7ð 7ð 7ð 7ðD=ð D=ð D=ð D=ðLð ð ðð ð ð/ð /ð /ð
ð ð ð/ð /ð /ðð ð ð/ð /ð /ð

ð 
ð 
ð/ð /ð /ð$ð $ð $ð $ð:ð :ð :ð :ð?ð ?ð ?ðBð Bð Bð Bð Bð Bð Br:   r   c                   ór   — e Zd ZdZdd„Zdd„Zdd„Zd„ Zdd„Zdd	„Z	e
d
„ ¦   «         Zdd„Zdd„Zd„ Zd„ ZdS )rÁ   zMANIFEST.inrP   Nc                 óL   — d| _         d| _        d| _        d| _        d| _        d S )NTF)Úuse_defaultsrÙ   Úmanifest_onlyÚforce_manifestrÂ   rB   s    r8   rt   z!manifest_maker.initialize_options  s/   € Ø ˆÔØˆŒ
Ø!ˆÔØ"ˆÔØ#(ˆÔ Ð Ð r:   c                 ó   — d S r>   rf   rB   s    r8   r“   zmanifest_maker.finalize_options  s   € Øˆr:   c                 óF  — t          | j        ¬¦  «        | _        t          j                             | j        ¦  «        s|                      ¦   «          |                      ¦   «          t          j                             | j	        ¦  «        r|  
                    ¦   «          |                      ¦   «          |                      ¦   «          |                      ¦   «          | j                             ¦   «          | j                             ¦   «          |                      ¦   «          d S )N)rÂ   )r   rÂ   rÄ   r"   r#   r�   rÃ   Úwrite_manifestÚadd_defaultsÚtemplateÚread_templateÚadd_license_filesÚ_add_referenced_filesÚprune_file_listÚsortÚremove_duplicatesrB   s    r8   r¿   zmanifest_maker.run  só   € Ý °TÔ5MÐNÑNÔNˆŒÝŒw�~Š~˜dœmÑ,Ô,ð 	"Ø×ÒÑ!Ô!Ð!Ø×ÒÑÔÐÝŒ7�>Š>˜$œ-Ñ(Ô(ð 	!Ø×ÒÑ Ô Ð Ø×ÒÑ Ô Ð Ø×"Ò"Ñ$Ô$Ð$Ø×ÒÑÔÐØŒ×ÒÑÔÐØŒ×'Ò'Ñ)Ô)Ð)Ø×ÒÑÔÐÐÐr:   c                 ój   — t          j        |¦  «        }|                     t          j        d¦  «        S )Nú/)r  r  rY   r"   r$   )rC   r#   s     r8   Ú_manifest_normalizez"manifest_maker._manifest_normalize)  s(   € ÝÔ+¨DÑ1Ô1ˆØ�|Š|�BœF CÑ(Ô(Ð(r:   c                 óÆ   ‡ — ‰ j                              ¦   «          ˆ fd„‰ j         j        D ¦   «         }d‰ j        › d�}‰                      t
          ‰ j        |f|¦  «         dS )zo
        Write the file list in 'self.filelist' to the manifest file
        named by 'self.manifest'.
        c                 ó:   •— g | ]}‰                      |¦  «        ‘ŒS rf   )r:  )rü   r¬   rC   s     €r8   rý   z1manifest_maker.write_manifest.<locals>.<listcomp>5  s'   ø€ ÐJÐJÐJ°�×)Ò)¨!Ñ,Ô,ÐJÐJÐJr:   zwriting manifest file 'r±   N)rÄ   r  ró   rÃ   Úexecuterœ   )rC   ró   r»   s   `  r8   r/  zmanifest_maker.write_manifest-  so   ø€ ð
 	Œ×ÒÑÔÐð KÐJÐJÐJ°d´mÔ6IÐJÑJÔJˆØ8¨¬Ð8Ð8Ð8ˆØ�Š•Z $¤-°Ð!7¸Ñ=Ô=Ð=Ð=Ð=r:   c                 ó^   — |                       |¦  «        st          j        | |¦  «         d S d S r>   )Ú_should_suppress_warningr   rž   )rC   r»   s     r8   rž   zmanifest_maker.warn9  s:   € Ø×,Ò,¨SÑ1Ô1ð 	"ÝŒJ�t˜SÑ!Ô!Ð!Ð!Ð!ð	"ð 	"r:   c                 ó,   — t          j        d| ¦  «        S )z;
        suppress missing-file warnings from sdist
        zstandard file .*not found)r%   r  )r»   s    r8   r?  z'manifest_maker._should_suppress_warning=  s   € õ
 ŒxÐ4°cÑ:Ô:Ð:r:   c                 ód  — t          j        | ¦  «         | j                             | j        ¦  «         | j                             | j        ¦  «         t          t          ¦   «         ¦  «        }|r| j                             |¦  «         n8t          j
                             | j        ¦  «        r|                      ¦   «          t          j
                             d¦  «        r| j                             d¦  «         |                      d¦  «        }| j                             |j        ¦  «         d S )Nzsetup.pyrh   )r   r0  rÄ   r  r1  rÃ   r²   r   rÿ   r"   r#   r�   Úread_manifestÚget_finalized_commandrØ   rh   )rC   ÚrcfilesÚei_cmds      r8   r0  zmanifest_maker.add_defaultsD  sþ   € ÝÔ˜4Ñ Ô Ð ØŒ×Ò˜Tœ]Ñ+Ô+Ð+ØŒ×Ò˜Tœ]Ñ+Ô+Ð+Ý•|‘~”~Ñ&Ô&ˆØð 	!ØŒM× Ò  Ñ)Ô)Ð)Ð)ÝŒW�^Š^˜DœMÑ*Ô*ð 	!Ø×ÒÑ Ô Ð åŒ7�>Š>˜*Ñ%Ô%ð 	-ð ŒM× Ò  Ñ,Ô,Ð,à×+Ò+¨JÑ7Ô7ˆØŒ×Ò˜FœOÑ,Ô,Ð,Ð,Ð,r:   c                 ó”   — | j         j        j        pg }|D ]}t          j        d|¦  «         Œ| j                             |¦  «         d S )Nzadding license file '%s')r@   r   Úlicense_filesr   r¦   rÄ   rÿ   )rC   rG  Úlfs      r8   r3  z manifest_maker.add_license_filesV  sV   € ØÔ)Ô2Ô@ÐFÀBˆØð 	5ð 	5ˆBÝŒHÐ/°Ñ4Ô4Ð4Ð4ØŒ×Ò˜]Ñ+Ô+Ð+Ð+Ð+r:   c                 óš   — t          | j        dg ¦  «        }|D ]}t          j        d|¦  «         Œ| j                             |¦  «         dS )zGAdd files referenced by the config (e.g. `file:` directive) to filelistÚ_referenced_filesz%adding file referenced by config '%s'N)Úgetattrr@   r   ÚdebugrÄ   rÿ   )rC   Ú
referencedÚrfs      r8   r4  z$manifest_maker._add_referenced_files\  sZ   € å˜TÔ.Ð0CÀRÑHÔHˆ
àð 	Cð 	CˆBÝŒIÐ=¸rÑBÔBÐBÐBØŒ×Ò˜ZÑ(Ô(Ð(Ð(Ð(r:   c                 ó    — t          |d¦  «        r|                     ¦   «         S t          j        ddd¬¦  «         |                     ¦   «         S )a0  
        The parent class implementation of this method
        (``sdist``) will try to include data files, which
        might cause recursion problems when
        ``include_package_data=True``.

        Therefore, avoid triggering any attempt of
        analyzing/building the manifest again.
        Úget_data_files_without_manifestz@`build_py` command does not inherit from setuptools' `build_py`.z±
            Custom 'build_py' does not implement 'get_data_files_without_manifest'.
            Please extend command classes from setuptools instead of distutils.
            z!https://peps.python.org/pep-0632/)Úsee_url)ÚhasattrrP  r   ÚemitÚget_data_files)rC   Úbuild_pys     r8   Ú_safe_data_fileszmanifest_maker._safe_data_filesd  sd   € õ �8Ð>Ñ?Ô?ð 	>Ø×;Ò;Ñ=Ô=Ð=å$Ô)ØNðð 8ð	
ñ 	
ô 	
ð 	
ð ×&Ò&Ñ(Ô(Ð(r:   rÇ   )r`   ra   rb   r1  rt   r“   r¿   r:  r/  rž   Ústaticmethodr?  r0  r3  r4  rV  rf   r:   r8   rÁ   rÁ     sí   € € € € € Ø€Hð)ð )ð )ð )ðð ð ð ðð ð ð ð)ð )ð )ð
>ð 
>ð 
>ð 
>ð"ð "ð "ð "ð ð;ð ;ñ „\ð;ð-ð -ð -ð -ð$,ð ,ð ,ð ,ð)ð )ð )ð)ð )ð )ð )ð )r:   rÁ   rP   c                 óÖ   — d                      |¦  «        }|                     d¦  «        }t          | d¦  «        5 }|                     |¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z{Create a file with the specified name and write 'contents' (a
    sequence of strings without line terminators) to it.
    Ú
r¤   r¥   N)rŽ   r§   r©   rª   )r|   Úcontentsr¬   s      r8   rœ   rœ   }  s«   € ð �yŠy˜Ñ"Ô"€Hð �Š˜wÑ'Ô'€Hå	ˆh˜Ñ	Ô	ð  Ø	�Š�ÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   »AÁA"Á%A"c                 ó~  — t          j        d|¦  «         | j        s | j        j        }| j        |j        c|_        }| j        |j        c|_        }	  |j	        | j
        ¦  «         ||c|_        |_        n# ||c|_        |_        w xY wt          | j        dd ¦  «        }t          j        | j
        |¦  «         d S d S )Nz
writing %sÚzip_safe)r   r¦   r¨   r@   r   rr   rO   rq   rD   Úwrite_pkg_inforh   rK  r   Úwrite_safety_flag)ÚcmdÚbasenamer|   r   ÚoldverÚoldnameÚsafes          r8   r]  r]  Š  sÕ   € Ý„Hˆ\˜8Ñ$Ô$Ð$ØŒ;ð 8ØÔ#Ô,ˆØ#&¤?°HÔ4DÐ ˆÔ˜&Ø!$¤¨x¬}ÐˆŒ�wð	>ð $ˆHÔ# C¤LÑ1Ô1Ð1à.5°vÐ+ˆHŒM˜8Ô+Ð+ø¨g°vÐ+ˆHŒM˜8Ô+Ð=Ð=Ð=Ð=å�sÔ'¨°TÑ:Ô:ˆåÔ# C¤L°$Ñ7Ô7Ð7Ð7Ð7ð8ð 8s   ÁA7 Á7Bc                 ó   — dS )aj  
    Unused: left to avoid errors when updating (from source) from <= 67.8.
    Old installations have a .dist-info directory with the entry-point
    ``depends.txt = setuptools.command.egg_info:warn_depends_obsolete``.
    This may trigger errors when running the first egg_info in build_meta.
    TODO: Remove this function in a version sufficiently > 68.
    Nrf   ©r_  r`  r|   s      r8   Úwarn_depends_obsoleterf  �  s   € € € r:   c           	      óð   — t                                d„ | j                             ¦   «         D ¦   «         ¦  «        }|                      d|d                     t          |¦  «        ¦  «        dz   ¦  «         d S )Nc                 óF   — g | ]}|                      d d¦  «        d         ‘ŒS )r   r   r   )r!   )rü   Úks     r8   rý   z(write_toplevel_names.<locals>.<listcomp>­  s6   € ð ð ð Ø ˆ�Š��Q‰Œ˜Ôðð ð r:   ztop-level namesrY  )r{   Úfromkeysr@   Úiter_distribution_namesrœ   rŽ   Úsorted)r_  r`  r|   Úpkgss       r8   Úwrite_toplevel_namesrn  ¬  sv   € Ý�=Š=ð ð Ø$'Ô$4×$LÒ$LÑ$NÔ$Nðñ ô ñ ô €Dð ‡N‚NÐ$ h°·	²	½&À¹,¼,Ñ0GÔ0GÈ$Ñ0NÑOÔOÐOÐOÐOr:   c                 ó*   — t          | ||d¦  «         d S )NT)Ú	write_argre  s      r8   Úoverwrite_argrq  ³  s   € Ýˆc�8˜X tÑ,Ô,Ð,Ð,Ð,r:   Frš   c                 óà   — t           j                             |¦  «        d         }t          | j        |d ¦  «        }|�d                     |¦  «        dz   }|                      ||||¦  «         d S )Nr   rY  )r"   r#   ÚsplitextrK  r@   rŽ   r¢   )r_  r`  r|   rš   Úargnamery   s         r8   rp  rp  ·  sl   € ÝŒg×Ò˜xÑ(Ô(¨Ô+€GÝ�CÔ$ g¨tÑ4Ô4€EØÐØ—	’	˜%Ñ Ô  4Ñ'ˆØ×Ò˜W h°°uÑ=Ô=Ð=Ð=Ð=r:   c                 óš   — t          j        | j        j        ¦  «        }t          j        |¦  «        }|                      d||d¦  «         d S )Nzentry pointsT)r   r¸   r@   r³   Úrenderr¢   )r_  r`  r|   ÚepsÚdefns        r8   Úwrite_entriesry  ¿  sH   € Ý
Ô
˜SÔ-Ô:Ñ
;Ô
;€CÝÔ Ñ$Ô$€DØ×Ò˜^¨X°t¸TÑBÔBÐBÐBÐBr:   c                 óŒ   — t          j        | ¦  «        }t          j        |¦  «        }|› d|› d|pt          › �}|r|d|› �z  }|S )r•   r   z-py)r   r�   rÎ   )rq   rr   r—   r˜   rD   rO   Úeggs          r8   r–   r–   Å  s_   € åÔ,¨XÑ6Ô6€DÝÔ/°Ñ<Ô<€GØÐ
8Ð
8�GÐ
8Ð
8 
Ð 6­hÐ
8Ð
8€CØð Øˆ~�8ˆ~ˆ~ÑˆØ€Jr:   c                   ó   — e Zd ZdZdS )ÚEggInfoDeprecationWarningz?Deprecated behavior warning for EggInfo, bypassing suppression.N)r`   ra   rb   Ú__doc__rf   r:   r8   r}  r}  Ï  s   € € € € € ØIÐIÐIÐIr:   r}  rÇ   rÈ   )NN)=r~  rÝ   r"   r%   r!  r]   Úcollections.abcr   rW   Úpackaging.requirementsÚpackaging.versionÚsetuptools.unicode_utilsr  Ú
setuptoolsr   Úsetuptools.commandr   Úsetuptools.command.sdistr   r   Úsetuptools.command.setoptr   Úsetuptools.globr	   r   r   r   Ú
_importlibr   Úwarningsr   r   Údistutils.errorsr†   Údistutils.filelistr   r   r   Ú	_FileListÚdistutils.utilr   Úversion_infoÚmajorÚminorrÎ   r9   r<   rh   rÁ   rœ   r]  rf  Úwrite_requirementsÚwrite_setup_requirementsrn  rq  re   rp  ry  r–   r}  rf   r:   r8   ú<module>r“     s£  ðð<ð <ð Ð Ð Ð Ø 	€	€	€	Ø 	€	€	€	Ø 
€
€
€
Ø €€€Ø $Ð $Ð $Ð $Ð $Ð $à Ð Ð Ð Ø Ð Ð Ð Ø Ð Ð Ð à 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø Ð Ð Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø  Ð  Ð  Ð  Ð  Ð  à ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø !Ð !Ð !Ð !Ð !Ð !Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'àÔÔ$Ð?Ð? sÔ'7Ô'=Ð?Ð?€ðP;ð P;ð P;ðf,ð ,ð ,ð ,ð ,ñ ,ô ,ð ,ð^Y$ð Y$ð Y$ð Y$ð Y$ˆz˜7ñ Y$ô Y$ð Y$ðxGBð GBð GBð GBð GBˆyñ GBô GBð GBðTl)ð l)ð l)ð l)ð l)�Uñ l)ô l)ð l)ð^
ð 
ð 
ð 
ð8ð 8ð 8ð 8ð&ð ð ð ð "Ô4Ð Ø'Ô@Ð ðPð Pð Pð Pð-ð -ð -ð -ð>ð >¨dð >¸tð >ð >ð >ð >ðCð Cð Cð Cðð ð ð ðJð Jð Jð Jð JÐ <ñ Jô Jð Jð Jð Jr:   