§
    Á³g#7  ã                   ó  — d dl mZ d dlmZ d dlmZ d dlmc mZ d dl	Z	d dl
Z
d dl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mZmZmZmZmZmZ d dlmZ d dlmZ d	„ Z G d
„ dej        ¦  «        Zd„ Z  G d„ d¦  «        Z!dS )é    )Úpartial)Úglob)Úconvert_pathN)ÚPath)ÚDictÚIterableÚIteratorÚListÚOptionalÚTuple)ÚSetuptoolsDeprecationWarning)Úunique_everseenc                 óx   — t          j        | t          j        | ¦  «        j        t          j        z  ¦  «         d S ©N)ÚosÚchmodÚstatÚst_modeÚS_IWRITE)Útargets    úY/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/setuptools/command/build_py.pyÚmake_writabler      s,   € Ý„HˆV•R”W˜V‘_”_Ô,­t¬}Ñ<Ñ=Ô=Ð=Ð=Ð=ó    c                   óx  ‡ — e Zd ZU dZdZeed<   dZee	         ed<   d„ Z
	 	 d ˆ fd„	Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd!dee	         fˆ fd„Zdee	e	f         fd„Zdeee	e	f                  fd„Zdeee	e	f                  fd„Zd„ Zd„ Zdee	         de	dee	         fd„Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#e$d„ ¦   «         Z%ˆ xZ&S )"Úbuild_pyaX  Enhanced 'build_py' command that includes data files with packages

    The data files are specified via a 'package_data' argument to 'setup()'.
    See 'setuptools.dist.Distribution' for more details.

    Also, this version of the 'build_py' command allows you to specify both
    'py_modules' and 'packages' in the same setup operation.
    FÚeditable_modeNÚexisting_egg_info_dirc                 ó¼   — t           j                             | ¦  «         | j        j        | _        | j        j        pi | _        d| j        v r| j        d= g | _        d S )NÚ
data_files)Úorigr   Úfinalize_optionsÚdistributionÚpackage_dataÚexclude_package_dataÚ__dict__Ú_build_py__updated_files©Úselfs    r   r!   zbuild_py.finalize_options$   s^   € ÝŒ×&Ò& tÑ,Ô,Ð,Ø Ô-Ô:ˆÔØ$(Ô$5Ô$JÐ$PÈbˆÔ!Ø˜4œ=Ð(Ð(Ø”˜lÐ+Ø!ˆÔÐÐr   é   c                 ó  •— |r\t          t          |¦  «                             ¦   «         ¦  «        }t          t          |¦  «                             ¦   «         ¦  «        }t          ¦   «                              ||||||¦  «        S r   )Ústrr   ÚresolveÚsuperÚ	copy_file)r(   ÚinfileÚoutfileÚpreserve_modeÚpreserve_timesÚlinkÚlevelÚ	__class__s          €r   r.   zbuild_py.copy_file,   st   ø€ ð ð 	3Ý�˜f™œ×-Ò-Ñ/Ô/Ñ0Ô0ˆFÝ�$˜w™-œ-×/Ò/Ñ1Ô1Ñ2Ô2ˆGÝ‰wŒw× Ò  ¨°-ÀØ!% uñ.ô .ð 	.r   c                 ó0  — | j         s| j        r| j        rdS | j         r|                      ¦   «          | j        r(|                      ¦   «          |                      ¦   «          |                      t          j         	                    | d¬¦  «        ¦  «         dS )z?Build modules, packages, and copy data files to build directoryNr   )Úinclude_bytecode)
Ú
py_modulesÚpackagesr   Úbuild_modulesÚbuild_packagesÚbuild_package_dataÚbyte_compiler    r   Úget_outputsr'   s    r   Úrunzbuild_py.run5   sŸ   € à”ð 	 4¤=ð 	°TÔ5Gð 	ØˆFàŒ?ð 	!Ø×ÒÑ Ô Ð àŒ=ð 	&Ø×ÒÑ!Ô!Ð!Ø×#Ò#Ñ%Ô%Ð%ð 	×Ò�$œ-×3Ò3°DÈ1Ð3ÑMÔMÑNÔNÐNÐNÐNr   c                 óŽ   — |dk    r |                       ¦   «         | _        | j        S t          j                             | |¦  «        S )zlazily compute data filesr   )Ú_get_data_filesr   r    r   Ú__getattr__)r(   Úattrs     r   rB   zbuild_py.__getattr__E   s@   € à�<ÒÐØ"×2Ò2Ñ4Ô4ˆDŒOØ”?Ð"ÝŒ}×(Ò(¨¨tÑ4Ô4Ð4r   c                 óŒ   — t           j                             | |||¦  «        \  }}|r| j                             |¦  «         ||fS r   )r    r   Úbuild_moduler&   Úappend)r(   ÚmoduleÚmodule_fileÚpackager0   Úcopieds         r   rE   zbuild_py.build_moduleL   sK   € Ýœ-×4Ò4°T¸6À;ÐPWÑXÔX‰ˆ�Øð 	1ØÔ ×'Ò'¨Ñ0Ô0Ð0Ø˜ˆÐr   c                 ó|   — |                       ¦   «          t          t          | j        | j        pd¦  «        ¦  «        S )z?Generate list of '(package,src_dir,build_dir,filenames)' tuples© )Úanalyze_manifestÚlistÚmapÚ_get_pkg_data_filesr9   r'   s    r   rA   zbuild_py._get_data_filesR   s6   € à×ÒÑÔÐÝ•C˜Ô0°$´-Ð2EÀ2ÑFÔFÑGÔGÐGr   c                 óŠ   — | j                              di ¦  «         t          t          | j        | j        pd¦  «        ¦  «        S )z¡
        Generate list of ``(package,src_dir,build_dir,filenames)`` tuples,
        but without triggering any attempt to analyze or build the manifest.
        Úmanifest_filesrL   )r%   Ú
setdefaultrN   rO   rP   r9   r'   s    r   Úget_data_files_without_manifestz(build_py.get_data_files_without_manifestW   s?   € ð 	Œ× Ò Ð!1°2Ñ6Ô6Ð6Ý•C˜Ô0°$´-Ð2EÀ2ÑFÔFÑGÔGÐGr   c                 óÜ   ‡— |                       |¦  «        Št          j        j        | j        g|                     d¦  «        z   Ž }ˆfd„|                      |‰¦  «        D ¦   «         }|‰||fS )Nú.c                 óP   •— g | ]"}t           j                             |‰¦  «        ‘Œ#S rL   )r   ÚpathÚrelpath)Ú.0ÚfileÚsrc_dirs     €r   ú
<listcomp>z0build_py._get_pkg_data_files.<locals>.<listcomp>i   s9   ø€ ð 
ð 
ð 
àõ ŒG�OŠO˜D 'Ñ*Ô*ð
ð 
ð 
r   )Úget_package_dirr   rX   ÚjoinÚ	build_libÚsplitÚfind_data_files)r(   rI   Ú	build_dirÚ	filenamesr\   s       @r   rP   zbuild_py._get_pkg_data_filesa   s…   ø€ à×&Ò& wÑ/Ô/ˆõ ”G”L D¤NÐ#3°g·m²mÀCÑ6HÔ6HÑ#HÐJˆ	ð
ð 
ð 
ð 
à×,Ò,¨W°gÑ>Ô>ð
ñ 
ô 
ˆ	ð ˜ ¨IÐ5Ð5r   c                 óˆ  — |                       | j        ||¦  «        }t          t          t          d¬¦  «        |¦  «        }t
          j                             |¦  «        }t          t          j
        j        |¦  «        }t          j        | j                             |g ¦  «        |¦  «        }|                      |||¦  «        S )z6Return filenames for package's data files in 'src_dir'T)Ú	recursive)Ú_get_platform_patternsr#   rO   r   r   Ú	itertoolsÚchainÚfrom_iterableÚfilterr   rX   ÚisfilerR   ÚgetÚexclude_data_files)r(   rI   r\   ÚpatternsÚglobs_expandedÚglobs_matchesÚ
glob_filesÚfiless           r   rb   zbuild_py.find_data_fileso   s­   € à×.Ò.ØÔØØñ
ô 
ˆõ
 �W¥T°TÐ:Ñ:Ô:¸HÑEÔEˆå!œ×5Ò5°nÑEÔEˆÝ�BœGœN¨MÑ:Ô:ˆ
Ý”ØÔ×#Ò# G¨RÑ0Ô0Øñ
ô 
ˆð ×&Ò& w°¸Ñ?Ô?Ð?r   Úreturnc                 óº   •— | j         r3t          |                      ¦   «                              ¦   «         ¦  «        S t	          ¦   «                              |¦  «        S )ú1See :class:`setuptools.commands.build.SubCommand`)r   rN   Úget_output_mappingÚkeysr-   r>   )r(   r7   r5   s     €r   r>   zbuild_py.get_outputs€   sM   ø€ àÔð 	:Ý˜×/Ò/Ñ1Ô1×6Ò6Ñ8Ô8Ñ9Ô9Ð9Ý‰wŒw×"Ò"Ð#3Ñ4Ô4Ð4r   c                 ó²   — t          j        |                      ¦   «         |                      ¦   «         ¦  «        }t	          t          |d„ ¬¦  «        ¦  «        S )rv   c                 ó   — | d         S )Nr   rL   )Úxs    r   ú<lambda>z-build_py.get_output_mapping.<locals>.<lambda>Œ   s
   € °!°A´$€ r   )Úkey)rh   ri   Ú _get_package_data_output_mappingÚ_get_module_mappingÚdictÚsorted)r(   Úmappings     r   rw   zbuild_py.get_output_mapping†   sP   € å”/Ø×1Ò1Ñ3Ô3Ø×$Ò$Ñ&Ô&ñ
ô 
ˆõ •F˜7¨¨Ð7Ñ7Ô7Ñ8Ô8Ð8r   c              #   ó®   K  — |                       ¦   «         D ]=\  }}}|                     d¦  «        }|                      | j        ||¦  «        }||fV — Œ>dS )z5Iterate over all modules producing (dest, src) pairs.rV   N)Úfind_all_modulesra   Úget_module_outfiler`   )r(   rI   rG   rH   Úfilenames        r   r   zbuild_py._get_module_mappingŽ   sp   è è € à.2×.CÒ.CÑ.EÔ.Eð 	*ð 	*Ñ*ˆW�f˜kØ—m’m CÑ(Ô(ˆGØ×.Ò.¨t¬~¸wÈÑOÔOˆHØ˜[Ð)Ð)Ð)Ð)Ð)ð	*ð 	*r   c              #   ó¾   K  — | j         D ]R\  }}}}|D ]H}t          j                             ||¦  «        }t          j                             ||¦  «        }||fV — ŒIŒSdS )z6Iterate over package data producing (dest, src) pairs.N)r   r   rX   r_   )r(   rI   r\   rc   rd   r†   r   Úsrcfiles           r   r~   z)build_py._get_package_data_output_mapping•   s|   è è € à6:´oð 	(ð 	(Ñ2ˆG�W˜i¨Ø%ð (ð (�ÝœŸš i°Ñ:Ô:�Ýœ'Ÿ,š, w°Ñ9Ô9�Ø˜wÐ'Ð'Ð'Ð'Ð'ð(ð	(ð 	(r   c                 óî   — |                       ¦   «         D ]_\  }}|                      t          j                             |¦  «        ¦  «         |                      ||¦  «        \  }}t          |¦  «         Œ`dS )z$Copy data files into build directoryN)r~   Úmkpathr   rX   Údirnamer.   r   )r(   r   rˆ   Ú_outfÚ_copieds        r   r<   zbuild_py.build_package_data�   ss   € à#×DÒDÑFÔFð 	"ð 	"‰OˆF�GØ�KŠK�œŸš¨Ñ/Ô/Ñ0Ô0Ð0Ø!Ÿ^š^¨G°VÑ<Ô<‰NˆE�7Ý˜&Ñ!Ô!Ð!Ð!ð	"ð 	"r   c                 óz  — i x| _         }| j        j        sd S i }| j        pdD ]'}||t	          |                      |¦  «        ¦  «        <   Œ(t          | dd ¦  «        rgt          | j        d¦  «         	                    ¦   «         r@| j        }t          |d¦  «        }| 
                    d¬¦  «                             ¦   «         }n=|                      d¦  «         |                      d¦  «        }|j        }|j        j        }t#          ¦   «         }|                      ||¦  «        D �]}	t&          j                             t	          |	¦  «        ¦  «        \  }
}d }|}|
rZ|
|k    rT|
|vrP|
}t&          j                             |
¦  «        \  }
}t&          j                             ||¦  «        }|
r
|
|k    r|
|v°P|
|v r||k    r|                     |¦  «        rŒ²n3|                     ||
         |¦  «        }|r|                     |¦  «         |                     ||
         g ¦  «                             |	¦  «         �Œd S )NrL   r   zSOURCES.txtzutf-8)ÚencodingÚegg_info)rR   r"   Úinclude_package_datar9   Úassert_relativer^   Úgetattrr   r   ÚexistsÚ	read_textÚ
splitlinesÚrun_commandÚget_finalized_commandr�   Úfilelistrs   Ú_IncludePackageDataAbuseÚ_filter_build_filesr   rX   ra   r_   Ú	is_moduleÚimportable_subpackageÚwarnrS   rF   )r(   ÚmfÚsrc_dirsrI   Úegg_info_dirÚmanifestrs   Úei_cmdÚcheckrX   ÚdÚfÚprevÚoldfÚdfÚ
importables                   r   rM   zbuild_py.analyze_manifest¤   s_  € Ø#%Ð%ˆÔ˜bØÔ Ô5ð 	ØˆFØˆØ”}Ð*¨ð 	Oð 	OˆGàGNˆH•_ T×%9Ò%9¸'Ñ%BÔ%BÑCÔCÑDÐDõ �DÐ1°4Ñ8Ô8ð	*å�TÔ/°Ñ?Ô?×FÒFÑHÔHð	*ð  Ô5ˆLÝ˜L¨-Ñ8Ô8ˆHØ×&Ò&°Ð&Ñ8Ô8×CÒCÑEÔEˆEˆEà×Ò˜ZÑ(Ô(Ð(Ø×/Ò/°
Ñ;Ô;ˆFØ!œ?ˆLØ”OÔ)ˆEå(Ñ*Ô*ˆØ×,Ò,¨U°LÑAÔAð 	<ñ 	<ˆDÝ”7—=’=¥°Ñ!6Ô!6Ñ7Ô7‰DˆAˆqØˆDØˆDØð (˜˜Tš	˜	 a¨xÐ&7Ð&7Ø�ÝœŸš aÑ(Ô(‘��2Ý”G—L’L  QÑ'Ô'�ð ð (˜˜Tš	˜	 a¨xÐ&7Ð&7ð �Hˆ}ˆ}Ø˜’9�9Ø—’ qÑ)Ô)ð !Ø ð!ð "'×!<Ò!<¸XÀa¼[È!Ñ!LÔ!L�JØ!ð /ØŸ
š
 :Ñ.Ô.Ð.Ø—’˜h qœk¨2Ñ.Ô.×5Ò5°dÑ;Ô;Ð;ùð!	<ð 	<r   rs   r�   c              #   ó<  ‡K  — |                       d¦  «        }|| j        |j        |j        f}d„ |D ¦   «         }|D ]_}t          j                             |¦  «        Št          j                             |¦  «        rt          ˆfd„|D ¦   «         ¦  «        r|V — Œ`dS )a}  
        ``build_meta`` may try to create egg_info outside of the project directory,
        and this can be problematic for certain plugins (reported in issue #3500).

        Extensions might also include between their sources files created on the
        ``build_lib`` and ``build_temp`` directories.

        This function should filter this case of invalid files out.
        Úbuildc                 óP   — g | ]#}|¯t           j                             |¦  «        ‘Œ$S rL   )r   rX   Únormpath)rZ   Úps     r   r]   z0build_py._filter_build_files.<locals>.<listcomp>Ù   s-   € ÐBÐBÐB¨QÀÐB•R”W×%Ò% aÑ(Ô(ÐBÐBÐBr   c              3   ó    •K  — | ]}|‰vV — Œ	d S r   rL   )rZ   r¥   Ú	norm_paths     €r   ú	<genexpr>z/build_py._filter_build_files.<locals>.<genexpr>Ý   s(   øè è € Ð-TÐ-TÀQ¨a°yÐ.@Ð-TÐ-TÐ-TÐ-TÐ-TÐ-Tr   N)	r˜   r`   Ú
build_tempÚ
build_baser   rX   r®   ÚisabsÚall)r(   rs   r�   r¬   Ú
build_dirsÚ	norm_dirsr[   r±   s          @r   r›   zbuild_py._filter_build_filesÍ   s·   øè è € ð ×*Ò*¨7Ñ3Ô3ˆØ ¤°Ô0@À%ÔBRÐSˆ
ØBÐB°*ÐBÑBÔBˆ	àð 	ð 	ˆDÝœ×(Ò(¨Ñ.Ô.ˆIÝ”7—=’= Ñ&Ô&ð ­#Ð-TÐ-TÐ-TÐ-TÈ)Ð-TÑ-TÔ-TÑ*TÔ*Tð Ø�
�
�
øð	ð 	r   c                 ó   — d S r   rL   r'   s    r   Úget_data_fileszbuild_py.get_data_filesà   s   € Øˆr   c                 óê  — 	 | j         |         S # t          $ r Y nw xY wt          j                             | ||¦  «        }|| j         |<   |r| j        j        s|S | j        j        D ]"}||k    s|                     |dz   ¦  «        r nŒ#|S t          j	        |d¦  «        5 }| 
                    ¦   «         }ddd¦  «         n# 1 swxY w Y   d|vr#t          j                             d|›d�¦  «        ‚|S )z8Check namespace packages' __init__ for declare_namespacerV   ÚrbNs   declare_namespacezNamespace package problem: z¤ is a namespace package, but its
__init__.py does not call declare_namespace()! Please fix it.
(See the setuptools manual under "Namespace Packages" for details.)
")Úpackages_checkedÚKeyErrorr    r   Úcheck_packager"   Únamespace_packagesÚ
startswithÚioÚopenÚreadÚ	distutilsÚerrorsÚDistutilsError)r(   rI   Úpackage_dirÚinit_pyÚpkgr¦   Úcontentss          r   r¿   zbuild_py.check_packageã   sk  € ð	ØÔ(¨Ô1Ð1øÝð 	ð 	ð 	ØˆDð	øøøõ ”-×-Ò-¨d°G¸[ÑIÔIˆØ)0ˆÔ˜gÑ&àð 	˜dÔ/ÔBð 	ØˆNàÔ$Ô7ð 	ð 	ˆCØ�gŠ~ˆ~ §¢°¸#±Ñ!>Ô!>ˆ~Ø�ð ð ˆNåŒW�W˜dÑ#Ô#ð 	  qØ—v’v‘x”xˆHð	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 à xÐ/Ð/ÝÔ"×1Ò1Ð1ð <C¸7¸7ðEñô ð ð ˆs   ‚ �
›Â CÃCÃCc                 ón   — i | _         t          j                             | ¦  «         d| _        d | _        d S )NF)r½   r    r   Úinitialize_optionsr   r   r'   s    r   rÍ   zbuild_py.initialize_options  s6   € Ø "ˆÔÝŒ×(Ò(¨Ñ.Ô.Ð.Ø"ˆÔØ%)ˆÔ"Ð"Ð"r   c                 ó²   — t           j                             | |¦  «        }| j        j        �*t
          j                             | j        j        |¦  «        S |S r   )r    r   r^   r"   Úsrc_rootr   rX   r_   )r(   rI   Úress      r   r^   zbuild_py.get_package_dir  sF   € ÝŒm×+Ò+¨D°'Ñ:Ô:ˆØÔÔ%Ð1Ý”7—<’< Ô 1Ô :¸CÑ@Ô@Ð@Øˆ
r   c                 ó(  ‡‡— t          ‰¦  «        Š|                      | j        ||¦  «        }ˆfd„|D ¦   «         }t          j                             |¦  «        }t          |¦  «        Šˆfd„‰D ¦   «         }t          t          |¦  «        ¦  «        S )z6Filter filenames for package's data files in 'src_dir'c              3   óB   •K  — | ]}t          j        ‰|¦  «        V — Œd S r   )Úfnmatchrk   )rZ   Úpatternrs   s     €r   r²   z.build_py.exclude_data_files.<locals>.<genexpr>  s/   øè è € ÐOÐO¸7�œ u¨gÑ6Ô6ÐOÐOÐOÐOÐOÐOr   c              3   ó$   •K  — | ]
}|‰v¯|V — Œd S r   rL   )rZ   ÚfnÚbads     €r   r²   z.build_py.exclude_data_files.<locals>.<genexpr>  s'   øè è € Ð7Ð7˜"¨°3¨¨�2¨¨¨¨Ð7Ð7r   )rN   rg   r$   rh   ri   rj   Úsetr   )	r(   rI   r\   rs   ro   Úmatch_groupsÚmatchesÚkeepersr×   s	      `    @r   rn   zbuild_py.exclude_data_files  s›   øø€ å�U‘”ˆØ×.Ò.ØÔ%ØØñ
ô 
ˆð
 PÐOÐOÐOÀhÐOÑOÔOˆå”/×/Ò/°Ñ=Ô=ˆÝ�'‰lŒlˆØ7Ð7Ð7Ð7 Ð7Ñ7Ô7ˆå•O GÑ,Ô,Ñ-Ô-Ð-r   c                 óš   ‡— t          j        |                      dg ¦  «        |                      |g ¦  «        ¦  «        }ˆfd„|D ¦   «         S )zÜ
        yield platform-specific path patterns (suitable for glob
        or fn_match) from a glob-based spec (such as
        self.package_data or self.exclude_package_data)
        matching package in src_dir.
        Ú c              3   ór   •K  — | ]1}t           j                             ‰t          |¦  «        ¦  «        V — Œ2d S r   )r   rX   r_   r   )rZ   rÔ   r\   s     €r   r²   z2build_py._get_platform_patterns.<locals>.<genexpr>)  sQ   øè è € ð 
ð 
ð õ ŒG�LŠL˜¥,¨wÑ"7Ô"7Ñ8Ô8ð
ð 
ð 
ð 
ð 
ð 
r   )rh   ri   rm   )ÚspecrI   r\   Úraw_patternss     ` r   rg   zbuild_py._get_platform_patterns  se   ø€ õ !”Ø�HŠH�R˜ÑÔØ�HŠH�W˜bÑ!Ô!ñ
ô 
ˆð
ð 
ð 
ð 
ð (ð
ñ 
ô 
ð 	
r   )r)   r)   Nr)   )r)   )'Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   ÚboolÚ__annotations__r   r   r+   r!   r.   r?   rB   rE   rA   rT   rP   rb   r
   r>   r   rw   r	   r   r   r~   r<   rM   r   r›   rº   r¿   rÍ   r^   rn   Ústaticmethodrg   Ú__classcell__)r5   s   @r   r   r      sV  ø€ € € € € € ðð ð  €M�4ÐÐÑØ+/Ð˜8 Cœ=Ð/Ð/Ñ/ð"ð "ð "ð JKØ#$ð.ð .ð .ð .ð .ð .ðOð Oð Oð 5ð 5ð 5ðð ð ðHð Hð Hð
Hð Hð Hð6ð 6ð 6ð@ð @ð @ð"5ð 5°°c´ð 5ð 5ð 5ð 5ð 5ð 5ð9 D¨¨c¨¤Nð 9ð 9ð 9ð 9ð* X¨e°C¸°H¬oÔ%>ð *ð *ð *ð *ð(°(¸5ÀÀcÀ¼?Ô2Kð (ð (ð (ð (ð"ð "ð "ð'<ð '<ð '<ðR¨°#¬ð À#ð È(ÐSVÌ-ð ð ð ð ð&ð ð ðð ð ð<*ð *ð *ðð ð ð.ð .ð .ð  ð
ð 
ñ „\ð
ð 
ð 
ð 
ð 
r   r   c                 ó¸   — t           j                             | ¦  «        s| S ddlm} t          j        d¦  «                             ¦   «         | z  } ||¦  «        ‚)Nr   )ÚDistutilsSetupErrorzÓ
        Error: setup script specifies an absolute path:

            %s

        setup() arguments must *always* be /-separated paths relative to the
        setup.py directory, *never* absolute paths.
        )r   rX   rµ   Údistutils.errorsrê   ÚtextwrapÚdedentÚlstrip)rX   rê   Úmsgs      r   r’   r’   0  sp   € ÝŒ7�=Š=˜ÑÔð ØˆØ4Ð4Ð4Ð4Ð4Ð4õ 	Œðñ		
ô 		
÷ Š&‰(Œ(Ø
ñ
	ð ð Ð
˜cÑ
"Ô
"Ð"r   c                   ó.   — e Zd ZdZdZd„ Zd„ Zd„ Zd„ ZdS )rš   z>Inform users that package or module is included as 'data file'a­      Installing {importable!r} as data is deprecated, please list it in `packages`.
    !!


    ############################
    # Package would be ignored #
    ############################
    Python recognizes {importable!r} as an importable package,
    but it is not listed in the `packages` configuration of setuptools.

    {importable!r} has been automatically added to the distribution only
    because it may contain data files, but this behavior is likely to change
    in future versions of setuptools (and therefore is considered deprecated).

    Please make sure that {importable!r} is included as a package by using
    the `packages` configuration field or the proper discovery methods
    (for example by using `find_namespace_packages(...)`/`find_namespace:`
    instead of `find_packages(...)`/`find:`).

    You can read more about "package discovery" and "data files" on setuptools
    documentation page.
    

!!
    c                 ó,   — t          ¦   «         | _        d S r   )rØ   Ú_already_warnedr'   s    r   Ú__init__z!_IncludePackageDataAbuse.__init___  s   € Ý"™uœuˆÔÐÐr   c                 ó€   — |                      d¦  «        o)|d t          d¦  «         …                              ¦   «         S )Nz.py)ÚendswithÚlenÚisidentifier)r(   r[   s     r   rœ   z"_IncludePackageDataAbuse.is_moduleb  s6   € Ø�}Š}˜UÑ#Ô#ÐI¨¨\­s°5©z¬z¨k¨\Ô(:×(GÒ(GÑ(IÔ(IÐIr   c                 óÄ   — t          |¦  «        j        }t          t          j        t
          j        |j        ¦  «        ¦  «        }|rd                     |g|¢¦  «        S d S )NrV   )	r   ÚparentrN   rh   Ú	takewhiler+   r÷   Úpartsr_   )r(   rù   r[   rÊ   rû   s        r   r�   z._IncludePackageDataAbuse.importable_subpackagee  sV   € Ý�4‰jŒjÔˆÝ•YÔ(­Ô)9¸3¼9ÑEÔEÑFÔFˆØð 	.Ø—8’8˜VÐ, eÐ,Ñ-Ô-Ð-Øˆtr   c                 óâ   — || j         vret          j        | j        ¦  «                             |¬¦  «        }t          j        |t          d¬¦  «         | j                              |¦  «         d S d S )N)rª   é   )Ú
stacklevel)	rò   rì   rí   ÚMESSAGEÚformatÚwarningsrž   r   Úadd)r(   rª   rï   s      r   rž   z_IncludePackageDataAbuse.warnl  so   € Ø˜TÔ1Ð1Ð1Ý”/ $¤,Ñ/Ô/×6Ò6À*Ð6ÑMÔMˆCÝŒM˜#Õ;ÈÐJÑJÔJÐJØÔ ×$Ò$ ZÑ0Ô0Ð0Ð0Ð0ð 2Ð1r   N)	rá   râ   rã   rä   rÿ   ró   rœ   r�   rž   rL   r   r   rš   rš   E  s`   € € € € € ØHÐHð€Gð.%ð %ð %ðJð Jð Jðð ð ð1ð 1ð 1ð 1ð 1r   rš   )"Ú	functoolsr   r   Údistutils.utilr   Údistutils.command.build_pyÚcommandr   r    r   rÓ   rì   rÂ   rë   rÅ   rh   r   r  Úpathlibr   Útypingr   r   r	   r
   r   r   Úsetuptools._deprecation_warningr   Ú setuptools.extern.more_itertoolsr   r   r’   rš   rL   r   r   ú<module>r     s�  ðØ Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø )Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ø 	€	€	€	Ø €€€Ø €€€Ø 	€	€	€	Ø Ð Ð Ð Ø Ð Ð Ð Ø €€€Ø €€€Ø Ð Ð Ð Ð Ð Ø BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ Bà HÐ HÐ HÐ HÐ HÐ HØ <Ð <Ð <Ð <Ð <Ð <ð>ð >ð >ðU
ð U
ð U
ð U
ð U
ˆtŒ}ñ U
ô U
ð U
ðp#ð #ð #ð*+1ð +1ð +1ð +1ð +1ñ +1ô +1ð +1ð +1ð +1r   