§
    »"½j¦(  ã            	      ó*  — d Z ddlm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
 ddlmZmZmZ ej                             ej                             ej                             ej                             e¦  «        ¦  «        dd¦  «        xZej        vegz  ¦  «         ej                             d	d¦  «         ddlZd
dlmZ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'm(Z( ddl)Z*ddl+m,Z, g d¢Z- edd¬¦  «        Z.dZ/ej0        Z1e j0        Z2d„ Z3d#d„Z4d„ Z5e*j6        j5        j         e5_         erddl)m7Z8 n ej9        e*j6        j7        ¦  «        Z8 G d„ de8¦  «        Z7d„ Z:ej;        fd „Z< G d!„ d"e=¦  «        Z> ej?        ¦   «          dS )$z@Extensions to the 'distutils' for large or complex distributionsé    )ÚannotationsN)Úabstractmethod)ÚMapping)ÚTYPE_CHECKINGÚTypeVarÚoverloadÚ
setuptoolsÚ_vendorÚ	backportsé   )ÚloggingÚmonkey)ÚRequire)ÚPackageFinderÚPEP420PackageFinder)ÚDistribution)Ú	Extension)Ú__version__)ÚSetuptoolsDeprecationWarning)ÚDistutilsOptionError)Úsetupr   ÚCommandr   r   r   Úfind_packagesÚfind_namespace_packagesÚ	_CommandTÚ_Command)Úboundc                ó²   —  G d„ dt           j        j        ¦  «        } || ¦  «        }|                     d¬¦  «         |j        rt          |¦  «         d S d S )Nc                  ó6   ‡ — e Zd ZdZd
ˆ fd„Zdˆ fd„	Zd	„ Zˆ xZS )ú4_install_setup_requires.<locals>.MinimalDistributionzl
        A minimal version of a distribution for supporting the
        fetch_build_eggs interface.
        ÚattrsúMapping[str, object]ÚreturnÚNonec                óØ   •‡— d}ˆfd„t          |¦  «        t          ‰¦  «        z  D ¦   «         }t          ¦   «                              |¦  «         | j                             ¦   «          d S )N)Údependency_linksÚsetup_requiresc                ó"   •— i | ]}|‰|         “ŒS © r)   )Ú.0Úkr!   s     €úS/home/spazio/kingdom_calls/venv/lib/python3.11/site-packages/setuptools/__init__.pyú
<dictcomp>zQ_install_setup_requires.<locals>.MinimalDistribution.__init__.<locals>.<dictcomp>A   s   ø€ ÐEÐEÐE¨˜˜5 œ8ÐEÐEÐEó    )ÚsetÚsuperÚ__init__Úset_defaultsÚ_disable)Úselfr!   Ú_inclÚfilteredÚ	__class__s    `  €r,   r1   z=_install_setup_requires.<locals>.MinimalDistribution.__init__?   sf   øø€ Ø8ˆEØEÐEÐEÐE­S°©Z¬Z½#¸e¹*¼*Ñ-DÐEÑEÔEˆHÝ‰GŒG×Ò˜XÑ&Ô&Ð&àÔ×&Ò&Ñ(Ô(Ð(Ð(Ð(r.   Nc                ó€   •— 	 t          ¦   «                              |¦  «        \  }}n# t          $ r |dfcY S w xY w|dfS )zAIgnore ``pyproject.toml``, they are not related to setup_requiresr)   )r0   Ú _split_standard_project_metadataÚ	Exception)r4   Ú	filenamesÚcfgÚ_tomlr7   s       €r,   Ú_get_project_config_fileszN_install_setup_requires.<locals>.MinimalDistribution._get_project_config_filesF   sY   ø€ ð%Ý"™WœW×EÒEÀiÑPÔP‘
��U�UøÝð %ð %ð %Ø  "�}Ð$Ð$Ð$ð%øøøà˜�7ˆNs   ƒ$( ¨9¸9c                ó   — dS )zl
            Disable finalize_options to avoid building the working set.
            Ref #2158.
            Nr)   ©r4   s    r,   Úfinalize_optionszE_install_setup_requires.<locals>.MinimalDistribution.finalize_optionsN   s   € € € r.   )r!   r"   r#   r$   ©N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r1   r>   rA   Ú__classcell__©r7   s   @r,   ÚMinimalDistributionr    9   st   ø€ € € € € ð	ð 	ð
	)ð 	)ð 	)ð 	)ð 	)ð 	)ð	ð 	ð 	ð 	ð 	ð 	ð	ð 	ð 	ð 	ð 	ð 	ð 	r.   rI   T)Úignore_option_errors)Ú	distutilsÚcorer   Úparse_config_filesr'   Ú_fetch_build_eggs)r!   rI   Údists      r,   Ú_install_setup_requiresrP   6   s…   € ðð ð ð ð �iœnÔ9ñ ô ð ð6 Ð˜uÑ%Ô%€Dð 	×Ò°ÐÑ6Ô6Ð6ØÔð  Ý˜$ÑÔÐÐÐð ð  r.   rO   r   c                ó   — 	 |                       | j        ¦  «         d S # t          $ rU}d}d|j        j        v r?t          |d¦  «        r|                     |¦  «         n|                      d|› d�¦  «         ‚ d }~ww xY w)Na–  
        It is possible a package already installed in your system
        contains an version that is invalid according to PEP 440.
        You can try `pip install --use-pep517` as a workaround for this problem,
        or rely on a new virtual environment.

        If the problem refers to a package that is not installed yet,
        please contact that package's maintainers or distributors.
        ÚInvalidVersionÚadd_noteÚ
)Úfetch_build_eggsr'   r:   r7   rC   ÚhasattrrS   Úannounce)rO   ÚexÚmsgs      r,   rN   rN   \   s    € ðØ×Ò˜dÔ1Ñ2Ô2Ð2Ð2Ð2øÝð ð ð ðˆð ˜rœ|Ô4Ð4Ð4Ý�r˜:Ñ&Ô&ð ,Ø—’˜CÑ Ô Ð Ð à—’˜l 3˜l˜l˜lÑ+Ô+Ð+Øøøøøðøøøs   ‚ ž
A=¨AA8Á8A=c                 ór   — t          j        ¦   «          t          | ¦  «         t          j        j        di | ¤ŽS )Nr)   )r   Ú	configurerP   rK   rL   r   )r!   s    r,   r   r   q   s8   € ÝÔÑÔÐå˜EÑ"Ô"Ð"ÝŒ>ÔÐ(Ð( %Ð(Ð(Ð(r.   )r   c                  óÐ   ‡ — e Zd ZU dZdZded<   dˆ fd„Zdd
„Zdd„Ze		 ddd„¦   «         Z
e		 ddd„¦   «         Z
	 dd d„Z
ed!d„¦   «         Zed!d„¦   «         Zed!d„¦   «         Zˆ xZS )"r   a#  
    Setuptools internal actions are organized using a *command design pattern*.
    This means that each action (or group of closely related actions) executed during
    the build should be implemented as a ``Command`` subclass.

    These commands are abstractions and do not necessarily correspond to a command that
    can (or should) be executed via a terminal, in a CLI fashion (although historically
    they would).

    When creating a new command from scratch, custom defined classes **SHOULD** inherit
    from ``setuptools.Command`` and implement a few mandatory methods.
    Between these mandatory methods, are listed:
    :meth:`initialize_options`, :meth:`finalize_options` and :meth:`run`.

    A useful analogy for command classes is to think of them as subroutines with local
    variables called "options".  The options are "declared" in :meth:`initialize_options`
    and "defined" (given their final values, aka "finalized") in :meth:`finalize_options`,
    both of which must be defined by every command class. The "body" of the subroutine,
    (where it does all the work) is the :meth:`run` method.
    Between :meth:`initialize_options` and :meth:`finalize_options`, ``setuptools`` may set
    the values for options/attributes based on user's input (or circumstance),
    which means that the implementation should be careful to not overwrite values in
    :meth:`finalize_options` unless necessary.

    Please note that other commands (or other parts of setuptools) may also overwrite
    the values of the command's options/attributes multiple times during the build
    process.
    Therefore it is important to consistently implement :meth:`initialize_options` and
    :meth:`finalize_options`. For example, all derived attributes (or attributes that
    depend on the value of other attributes) **SHOULD** be recomputed in
    :meth:`finalize_options`.

    When overwriting existing commands, custom defined classes **MUST** abide by the
    same APIs implemented by the original class. They also **SHOULD** inherit from the
    original class.
    Fr   ÚdistributionrO   r#   r$   c                óŽ   •— t          ¦   «                              |¦  «         t          | ¦  «                             |¦  «         dS )zj
        Construct the command for dist, updating
        vars(self) with any keyword parameters.
        N)r0   r1   ÚvarsÚupdate)r4   rO   Úkwr7   s      €r,   r1   zCommand.__init__ª   s=   ø€ õ
 	‰Œ×Ò˜ÑÔÐÝˆT‰
Œ
×Ò˜"ÑÔÐÐÐr.   Nc           	     ó¬   — t          | |¦  «        }|€t          | ||¦  «         |S t          |t          ¦  «        st	          d|› d|› d|› d�¦  «        ‚|S )Nú'z' must be a z (got `z`))ÚgetattrÚsetattrÚ
isinstanceÚstrr   )r4   ÚoptionÚwhatÚdefaultÚvals        r,   Ú_ensure_stringlikezCommand._ensure_stringlike²   so   € Ý�d˜FÑ#Ô#ˆØˆ;Ý�D˜& 'Ñ*Ô*Ð*ØˆNÝ˜C¥Ñ%Ô%ð 	UÝ&Ð'S¨6Ð'SÐ'S¸tÐ'SÐ'SÈCÐ'SÐ'SÐ'SÑTÔTÐTØˆ
r.   rh   rg   c                ó6  — t          | |¦  «        }|€dS t          |t          ¦  «        r&t          | |t	          j        d|¦  «        ¦  «         dS t          |t          ¦  «        rt          d„ |D ¦   «         ¦  «        }nd}|st          d|› d|›d�¦  «        ‚dS )a¼  Ensure that 'option' is a list of strings.  If 'option' is
        currently a string, we split it either on /,\s*/ or /\s+/, so
        "foo bar baz", "foo,bar,baz", and "foo,   bar baz" all become
        ["foo", "bar", "baz"].

        ..
           TODO: This method seems to be similar to the one in ``distutils.cmd``
           Probably it is just here for backward compatibility with old Python versions?

        :meta private:
        Nz,\s*|\s+c              3  ó@   K  — | ]}t          |t          ¦  «        V — Œd S rB   )rf   rg   )r*   Úvs     r,   ú	<genexpr>z-Command.ensure_string_list.<locals>.<genexpr>Î   s,   è è € Ð9Ð9°� A¥sÑ+Ô+Ð9Ð9Ð9Ð9Ð9Ð9r.   Frc   z!' must be a list of strings (got ú))	rd   rf   rg   re   ÚreÚsplitÚlistÚallr   )r4   rh   rk   Úoks       r,   Úensure_string_listzCommand.ensure_string_list»   sÂ   € õ �d˜FÑ#Ô#ˆØˆ;ØˆFÝ˜�SÑ!Ô!ð 
	Ý�D˜&¥"¤(¨;¸Ñ"<Ô"<Ñ=Ô=Ð=Ð=Ð=å˜#�tÑ$Ô$ð ÝÐ9Ð9°SÐ9Ñ9Ô9Ñ9Ô9��à�Øð Ý*ØI˜ÐIÐIÀÐIÐIÐIñô ð ðð r.   ÚcommandÚreinit_subcommandsÚboolr   c                ó   — d S rB   r)   ©r4   rx   ry   ra   s       r,   Úreinitialize_commandzCommand.reinitialize_commandÖ   s	   € ð �3r.   r   c                ó   — d S rB   r)   r|   s       r,   r}   zCommand.reinitialize_commandÚ   s	   € ð �Cr.   ústr | _Commandc                óv   — t          j        | ||¦  «        }t          |¦  «                             |¦  «         |S rB   )r   r}   r_   r`   )r4   rx   ry   ra   Úcmds        r,   r}   zCommand.reinitialize_commandÞ   s8   € õ Ô+¨D°'Ð;MÑNÔNˆÝˆS‰	Œ	×Ò˜ÑÔÐØˆ
r.   c                ó   — t           ‚)z·
        Set or (reset) all options/attributes/caches used by the command
        to their default values. Note that these values may be overwritten during
        the build.
        ©ÚNotImplementedErrorr@   s    r,   Úinitialize_optionszCommand.initialize_optionså   ó
   € õ "Ð!r.   c                ó   — t           ‚)z÷
        Set final values for all options/attributes used by the command.
        Most of the time, each option/attribute/cache should only be set if it does not
        have any value yet (e.g. ``if self.attr is None: self.attr = val``).
        rƒ   r@   s    r,   rA   zCommand.finalize_optionsî   r†   r.   c                ó   — t           ‚)zÙ
        Execute the actions intended by the command.
        (Side effects **SHOULD** only take place when :meth:`run` is executed,
        for example, creating new files or writing to the terminal output).
        rƒ   r@   s    r,   ÚrunzCommand.run÷   r†   r.   )rO   r   r#   r$   rB   )rh   rg   r#   r$   )F)rx   rg   ry   rz   r#   r   )rx   r   ry   rz   r#   r   )rx   r   ry   rz   r#   r   )r#   r$   )rC   rD   rE   rF   Úcommand_consumes_argumentsÚ__annotations__r1   rl   rw   r   r}   r   r…   rA   r‰   rG   rH   s   @r,   r   r   �   sV  ø€ € € € € € ð#ð #ðJ "'ÐØÐÐÑðð ð ð ð ð ðð ð ð ðð ð ð ð6 à7<ðð ð ð ñ „Xðð à=Bðð ð ð ñ „Xðð CHðð ð ð ð ð ð"ð "ð "ñ „^ð"ð ð"ð "ð "ñ „^ð"ð ð"ð "ð "ñ „^ð"ð "ð "ð "ð "r.   r   c                ó€   — d„ t          j        | d¬¦  «        D ¦   «         }t          t           j        j        |¦  «        S )z%
    Find all files under 'path'
    c              3  óh   K  — | ]-\  }}}|D ]$}t           j                             ||¦  «        V — Œ%Œ.d S rB   )ÚosÚpathÚjoin)r*   ÚbaseÚdirsÚfilesÚfiles        r,   rp   z#_find_all_simple.<locals>.<genexpr>  sc   è è € ð ð áˆD�$˜Øðð ð õ 	Œ�Š�T˜4Ñ Ô ðð ð ð ð ð ð r.   T)Úfollowlinks)rŽ   ÚwalkÚfilterr�   Úisfile)r�   Úresultss     r,   Ú_find_all_simplerš     sE   € ðð å!#¤¨¸4Ð!@Ñ!@Ô!@ðñ ô €Gõ
 •"”'”. 'Ñ*Ô*Ð*r.   c                óÈ   — t          | ¦  «        }| t          j        k    r5t          j        t          j        j        | ¬¦  «        }t          ||¦  «        }t          |¦  «        S )zŒ
    Find all files under 'dir' and return the list of full filenames.
    Unless dir is '.', return full filenames with dir prepended.
    )Ústart)	rš   rŽ   ÚcurdirÚ	functoolsÚpartialr�   ÚrelpathÚmaprt   )Údirr“   Úmake_rels      r,   Úfindallr¤     sR   € õ
 ˜SÑ!Ô!€EØ
�bŒiÒÐÝÔ$¥R¤W¤_¸CÐ@Ñ@Ô@ˆÝ�H˜eÑ$Ô$ˆÝ�‰;Œ;Ðr.   c                  ó   — e Zd ZdZdS )Úsicz;Treat this string as-is (https://en.wikipedia.org/wiki/Sic)N)rC   rD   rE   rF   r)   r.   r,   r¦   r¦     s   € € € € € ØEÐEÐEÐEr.   r¦   )rO   r   )@rF   Ú
__future__r   rž   rŽ   rr   ÚsysÚabcr   Úcollections.abcr   Útypingr   r   r   r�   Úextendr�   ÚdirnameÚ__file__Úvendor_pathÚmodulesÚpopÚ_distutils_hack.overrideÚ_distutils_hackÚ r   r   Údependsr   Ú	discoveryr   r   rO   r   Ú	extensionr   Úversionr   Úwarningsr   Údistutils.corerK   Údistutils.errorsr   Ú__all__r   Úbootstrap_install_fromÚfindr   r   rP   rN   r   rL   r   r   Úget_unpatchedrš   r�   r¤   rg   r¦   Ú	patch_allr)   r.   r,   ú<module>rÁ      s&  ðØ FÐ Fð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ø 	€	€	€	Ø 	€	€	€	Ø 
€
€
€
Ø Ð Ð Ð Ð Ð Ø #Ð #Ð #Ð #Ð #Ð #Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3à „‡‚ ¤§¢¨b¬g¯oªo¸b¼g¿oºoÈhÑ>WÔ>WÑ.XÔ.XÐZfÐhqÑ!rÔ!rÐr�+Ð{~ô  |Dð  Dð  ITð  HUñ  Uñ  Vô  Vð  Và „‡‚�˜TÑ "Ô "Ð "à Ð Ð Ð à Ð Ð Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  Ø /Ð /Ð /Ð /Ð /Ð /Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2à Ð Ð Ð Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1ð	ð 	ð 	€ð ˆG�K zÐ2Ñ2Ô2€	àÐ àÔ"€Ø-Ô2Ð ð# ð # ð # ðLð ð ð ð*)ð )ð )ð ”Ô$Ô,€„àð <à2Ð2Ð2Ð2Ð2Ð2Ð2à#ˆvÔ# I¤NÔ$:Ñ;Ô;€Hð}"ð }"ð }"ð }"ð }"ˆhñ }"ô }"ð }"ð@	+ð 	+ð 	+ð ”	ð 	ð 	ð 	ð 	ðFð Fð Fð Fð Fˆ#ñ Fô Fð Fð
 €Ô Ñ Ô Ð Ð Ð r.   