Ë
    ¨Õ°jL  ã                  ó<  — U d Z ddlmZ ddlZ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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!m"Z" erddlm#Z# ddl$m%Z% ddl&m'Z' ddl(m)Z)  ei «      Z*de+d<   e,e-e,e,f   z  Z.de+d<   edeedz  gdf   Z/de+d<    ed«      Z0 ejb                  e2«      Z3dtd„Z4dud„Z5dvd„Z6dwd „Z7dxd!„Z8dyd"„Z9d#d$d%d&œZ:dzd'„Z;	 	 	 	 	 	 d{d(„Z<d|d)„Z=d}d*„Z>d~d+„Z?dd,„Z@d€d-„ZAd~d.„ZBd�d/„ZCd‚d0„ZDdƒd1„ZEd„d2„ZFd…d3„ZGd†d4„ZHe*fd‡d5„ZIdˆd6„ZJd‰d8„ZKdŠd9„ZLd‹d:„ZMdŒd;„ZNdŒd<„ZOd�d=„ZPd>„ ZQd?„ ZRe<e= ee>d@¬A«       ee>dB¬A«      e?eAeBe@dCœZSdDe+dE<   dFdGiZTdHdIiZU eePdJ«       eePdK«       eePdL«      dMœZVh dN£ZWdOeCiZXi d7 eQdP«      “dQ eQdR«      “dS eQdT«      “dU eQdV«      “dW eRdXdY«      “dZ eRd[d\«      “d] eRd^d_«      “d` eRdadb«      “dc eQdd«      “de eQdf«      “dg eQdh«      “dieM“dGeN“djeO“dk eQdl«      “dm eQdn«      “ZYdoej´                  ej´                  ej´                  ej´                  ej¶                  ej¶                  ej¶                  ej¶                  ej´                  ej¶                  dpœZ\de+dq<    G dr„ dse"«      Z]y)Žak  Translation layer between pyproject config and setuptools distribution and
metadata objects.

The distribution and metadata objects are modeled after (an old version of)
core metadata, therefore configs in the format specified for ``pyproject.toml``
need to be processed before being applied.

**PRIVATE MODULE**: API reserved for setuptools internal usage only.
é    )ÚannotationsN)ÚCallableÚMapping)ÚAddress)ÚpartialÚreduce)Úcleandoc)Úchain)ÚMappingProxyType)ÚTYPE_CHECKINGÚAnyÚTypeVaré   )Ú_static)ÚStrPath)ÚInvalidConfigErrorÚRemovedConfigError)Ú	Extension)ÚSetuptoolsDeprecationWarningÚSetuptoolsWarning)Ú	TypeAlias©Úmetadata©ÚDistribution)Ú_OptionsListr   ÚEMPTYr   Ú_ProjectReadmeValuer   Ú_CorrespondenceÚ_TÚdictc                óš  — |s| S t         j                  j                  |«      xs d}t        | ||«       t	        | ||«       t        j
                  «       }t        j                  |«       	 | j                  «        | j                  «        | j                  «        t        j                  |«       | S # t        j                  |«       w xY w)z=Apply configuration dict read with :func:`read_configuration`ú.)
ÚosÚpathÚdirnameÚ_apply_project_tableÚ_apply_tool_tableÚgetcwdÚchdirÚ_finalize_requiresÚ_finalize_license_expressionÚ_finalize_license_files)ÚdistÚconfigÚfilenameÚroot_dirÚcurrent_directorys        ú\/var/www/mission/venv/lib/python3.12/site-packages/setuptools/config/_apply_pyprojecttoml.pyÚapplyr4   .   sŸ   € ñ Øˆä�w‰w�‰˜xÓ(Ò/¨C€Hä˜˜v xÔ0Ü�d˜F HÔ-äŸ	™	›ÐÜ‡H�HˆXÔð$Ø×ÑÔ!Ø×)Ñ)Ô+Ø×$Ñ$Ô&ä
�‰Ð"Ô#à€Køô 	�‰Ð"Õ#ús   Á,0B3 Â3C
c                óŒ  — |j                  di «      }|sy |j                  «       D ��ci c]  \  }}|t        j                  |«      “Œ }}}t	        | |«       t        |«       |j                  «       D ]I  \  }}t        |«      }	t        j                  |	|	«      }
t        |
«      r |
| ||«       Œ=t        | |
|«       ŒK y c c}}w )NÚproject)
ÚgetÚitemsr   Úattempt_conversionÚ_handle_missing_dynamicÚ_unify_entry_pointsÚjson_compatible_keyÚPYPROJECT_CORRESPONDENCEÚcallableÚ_set_config)r.   r/   r1   Úorig_configÚkÚvÚproject_tableÚfieldÚvalueÚnorm_keyÚcorresps              r3   r'   r'   E   s¸   € Ø—*‘*˜Y¨Ó+€KÙØàBM×BSÑBSÓBU×V¹$¸!¸Q�Qœ×2Ñ2°1Ó5Ñ5ÐV€MÑVÜ˜D -Ô0Ü˜Ô&à%×+Ñ+Ó-ò .‰ˆˆuÜ& uÓ-ˆÜ*×.Ñ.¨x¸ÓBˆÜ�GÔÙ�D˜% Õ*ä˜˜g uÕ-ñ.ùó	 Ws   © C c                óT  — |j                  di «      j                  di «      }|sy d|v r<d|j                  di «      v rt        d«      ‚d}t        j                  dd|› �d	¬
«       |j	                  «       D ]£  \  }}t        |«      }|t        v r=t        t        |   «      }d|› d�}	t        dj                  t        |	«      |g«      «      ‚t        j                  ||«      }t        j                  ||«      }
t        |
«      r
 |
| |«       Œ—t        | |
|«       Œ¥ t        || |«       y )NÚtoolÚ
setuptoolszlicense-filesr6   zS'project.license-files' is defined already. Remove 'tool.setuptools.license-files'.z,guides/writing-pyproject-toml/#license-fileszt'tool.setuptools.license-files' is deprecated in favor of 'project.license-files' (available on setuptools>=77.0.0).ú'https://packaging.python.org/en/latest/©ië  r   é   ©Úsee_urlÚdue_datez,
            The parameter `tool.setuptools.zZ` was long deprecated
            and has been removed from `pyproject.toml`.
            ú
)r7   r   r   Úemitr8   r<   ÚTOOL_TABLE_REMOVALSr	   r   ÚjoinÚTOOL_TABLE_RENAMESÚTOOL_TABLE_CORRESPONDENCEr>   r?   Ú_copy_command_options)r.   r/   r0   Ú
tool_tableÚpypa_guidesrD   rE   rF   Ú
suggestionÚmsgrG   s              r3   r(   r(   W   sA  € Ø—‘˜F BÓ'×+Ñ+¨L¸"Ó=€JÙØà˜*Ñ$Ø˜fŸj™j¨°BÓ7Ñ7ä$ð:óð ð
 EˆÜ$×)Ñ)ðIà=¸k¸]ÐKØ"õ		
ð #×(Ñ(Ó*ò .‰ˆˆuÜ& uÓ-ˆàÔ*Ñ*Ü!Ô"5°hÑ"?Ó@ˆJð,Ø,1¨7ð 3ðˆCô % T§Y¡Y´¸³¸zÐ/JÓ%KÓLÐLä%×)Ñ)¨(°HÓ=ˆÜ+×/Ñ/°¸(ÓCˆÜ�GÔÙ�D˜%Õ ä˜˜g uÕ-ð!.ô$ ˜& $¨Õ1ó    c                óú   — t        |j                  dg «      «      }t        j                  «       D ]I  \  }}||v rŒ||v rŒ || «      }|sŒt        j                  ||¬«       t        j                  |«      ||<   ŒK y)zJBe temporarily forgiving with ``dynamic`` fields not listed in ``dynamic``Údynamic©rD   rE   N)Úsetr7   Ú_PREVIOUSLY_DEFINEDr8   Ú_MissingDynamicrR   Ú_RESET_PREVIOUSLY_DEFINED)r.   rC   r^   rD   ÚgetterrE   s         r3   r:   r:   �   sz   € ä�-×#Ñ# I¨rÓ2Ó3€GÜ,×2Ñ2Ó4ò L‰ˆˆvØ˜Ò&¨%°7Ò*:Ù˜4“LˆEÚÜ×$Ñ$¨5¸Ð$Ô>Ü'@×'DÑ'DÀUÓ'K�˜eÒ$ñLr\   c                óB   — | j                  «       j                  dd«      S )z1As defined in :pep:`566#json-compatible-metadata`ú-Ú_)ÚlowerÚreplace)Úkeys    r3   r<   r<   Œ   s   € à�9‰9‹;×Ñ˜s CÓ(Ð(r\   c                ó  — t        j                  |t        «      | |«      }t        | j                  d|› �d «      }|r	 ||«       y t        | j                  |«      s|t        v rt        | j                  ||«       y t        | ||«       y )NÚset_)Ú_PREPROCESSr7   Ú_noopÚgetattrr   ÚhasattrÚSETUPTOOLS_PATCHESÚsetattr)r.   rD   rE   ÚvalÚsetters        r3   r?   r?   ‘   sm   € Ü
�/‰/˜%¤Ó
'¨¨eÓ
4€CÜ�T—]‘] d¨5¨' N°DÓ9€FÙÙˆs�Ü	�—‘ Ô	&¨%Ô3EÑ*EÜ�—‘˜u cÕ*ä��e˜SÕ!r\   ztext/markdownz
text/x-rstz
text/plain)z.mdz.rstz.txtc                ó2  — t         j                  j                  | j                  «       «      \  }}|sy |t        v rt        j                  t        |   «      S dj                  d„ t        j                  «       D «       «      }d|› d�}t        d| › d|› �«      ‚)Nú, c              3  ó2   K  — | ]  \  }}|› d |› d�–— Œ y­w)z (ú)N© )Ú.0rA   rB   s      r3   ú	<genexpr>z&_guess_content_type.<locals>.<genexpr>«   s    è ø€ ÒF¡t q¨!˜˜˜2˜a˜S ”lÑFùó   ‚z3only the following file extensions are recognized: r#   zUndefined content type for )
r$   r%   Úsplitextrh   Ú_CONTENT_TYPESr   ÚStrrT   r8   Ú
ValueError)Úfilerg   ÚextÚvalidr[   s        r3   Ú_guess_content_typer„   £   s†   € Ü�W‰W×Ñ˜dŸj™j›lÓ+�F€A€sÙØà
ŒnÑÜ�{‰{œ>¨#Ñ.Ó/Ð/à�I‰IÑF¬~×/CÑ/CÓ/EÔFÓF€EØ?À¸wÀaÐ
H€CÜ
Ð2°4°&¸¸3¸%Ð@Ó
AÐAr\   c                ó®  — ddl m} t        |t        «      r |}|j	                  ||«      }t        |«      }n?|j                  d«      xs d}|j                  d«      xs |j	                  ||«      }|d   }t        | dt        j                  |«      «       |r t        | dt        j                  |«      «       |r| j                  j                  |«       y y )	Nr   ©Úexpandr�   ry   Útextzcontent-typeÚlong_descriptionÚlong_description_content_type)Úsetuptools.configr‡   Ú
isinstanceÚstrÚ
read_filesr„   r7   r?   r   r   Ú_referenced_filesÚadd)r.   rs   r1   r‡   r�   rˆ   Úctypes          r3   Ú_long_descriptionr’   °   s¼   € õ )ô �#”sÔØˆØ× Ñ   xÓ0ˆÜ# DÓ)‰à�w‰w�v‹Ò$ "ˆØ�w‰w�v‹ÒC &×"3Ñ"3°D¸(Ó"CˆØ�NÑ#ˆô �Ð(¬'¯+©+°dÓ*;Ô<áÜ�DÐ9¼7¿;¹;ÀuÓ;MÔNáØ×Ñ×"Ñ" 4Õ(ð r\   c                ó   — ddl m} t        |t        «      r^t	        | j
                  dd «      r&t        j                  d«       d | j
                  _        t        | dt        j                  |«      «       y d}t        j                  ddd	|› �d
¬«       d|v rU|j                  |d   g|«      }t        | dt        j                  |«      «       | j                  j                  |d   «       y t        | dt        j                  |d   «      «       y )Nr   r†   Úlicensez)`license` overwritten by `pyproject.toml`Úlicense_expressionz&guides/writing-pyproject-toml/#licensez/`project.license` as a TOML table is deprecatedz¨Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0).rK   rL   rN   r�   rˆ   )r‹   r‡   rŒ   r�   ro   r   r   rR   r”   r?   r   r   r   rŽ   r�   r�   )r.   rs   r1   r‡   rY   rE   s         r3   Ú_licenser–   É   sá   € Ý(ä�#”sÔÜ�4—=‘= )¨TÔ2Ü×"Ñ"Ð#NÔOØ$(ˆD�M‰MÔ!Ü�DÐ.´·±¸CÓ0@ÕAà>ˆÜ$×)Ñ)Ø=ð>ð >¸k¸]ÐKØ"õ	
ð �S‰=à×%Ñ% s¨6¡{ m°XÓ>ˆEÜ˜˜i¬¯©°UÓ);Ô<Ø×"Ñ"×&Ñ& s¨6¡{Õ3ä˜˜i¬¯©°S¸±[Ó)AÕBr\   c           	     ó¤  — g }g }|D ]a  }d|vr|j                  |d   «       Œd|vr|j                  |d   «       Œ5t        |d   |d   ¬«      }|j                  t        |«      «       Œc |r/t        | |t	        j
                  dj                  |«      «      «       |r3t        | |› d�t	        j
                  dj                  |«      «      «       y y )NÚnameÚemail)Údisplay_nameÚ	addr_specrv   Ú_email)Úappendr   r�   r?   r   r   rT   )r.   rs   Ú	_root_dirÚkindrD   Úemail_fieldÚpersonÚaddrs           r3   Ú_peopler£   ä   sÂ   € Ø€EØ€KØò *ˆØ˜ÑØ×Ñ˜v g™Õ/Ø˜FÑ"Ø�L‰L˜ ™Õ(ä¨¨v©À&ÈÁ/ÔRˆDØ×Ñœs 4›yÕ)ð*ñ Ü�D˜$¤§¡¨D¯I©I°eÓ,<Ó =Ô>ÙÜ�D˜T˜F &˜/¬7¯;©;°t·y±yÀÓ7MÓ+NÕOð r\   c                ó   — t        | d|«       y )NÚproject_urls)r?   ©r.   rs   rž   s      r3   Ú_project_urlsr§   ö   s   € Ü��n cÕ*r\   c                óD   — t        | dt        j                  |«      «       y )NÚpython_requires)r?   r   ÚSpecifierSetr¦   s      r3   Ú_python_requiresr«   ú   s   € Ü�Ð'¬×)=Ñ)=¸cÓ)BÕCr\   c                óZ   — t        | dg «      rd}t        j                  |«       || _        y )NÚinstall_requireszA`install_requires` overwritten in `pyproject.toml` (dependencies))ro   r   rR   r­   ©r.   rs   rž   r[   s       r3   Ú_dependenciesr¯   þ   s*   € ÜˆtÐ'¨Ô,ØQˆÜ×Ñ˜sÔ#Ø€DÕr\   c                óZ   — t        | dd «      rd}t        j                  |«       || _        y )NÚextras_requirezH`extras_require` overwritten in `pyproject.toml` (optional-dependencies))ro   r   rR   r±   r®   s       r3   Ú_optional_dependenciesr²     s*   € ÜˆtÐ% tÔ,ØXˆÜ×Ñ˜sÔ#Ø€DÕr\   c                óR   — | j                   xs g }d„ |D «       }d„ |D «       }g |¢|¢S )Nc           	   3  ó�   K  — | ]8  }|j                  «       D ��ci c]  \  }}|j                  d d«      |“Œ c}}–— Œ: yc c}}w ­w)rf   rg   N)r8   ri   )rz   ÚxrA   rB   s       r3   r{   z_ext_modules.<locals>.<genexpr>  s8   è ø€ ÒH¸q°·±³	×:©¨¨1ˆQ�Y‰Y�s˜CÓ  !Ñ#×:ÑHùÓ:ùs   ‚AšA ·Ac              3  óD   K  — | ]  }t        di t        |«      ¤Ž–— Œ y ­w)Nry   )r   Ú_adjust_ext_attrs)rz   Úkws     r3   r{   z_ext_modules.<locals>.<genexpr>  s   è ø€ Ò
=°"Œ9Ñ-Ô(¨Ó,Õ-Ñ
=ùs   ‚ )Úext_modules)r.   rs   ÚexistingÚargsÚnews        r3   Ú_ext_modulesr½     s6   € Ø×ÑÒ% 2€HÙHÀCÔH€DÙ
=¸Ô
=€CØˆXÐ˜ÐÐr\   c                ód   — t        t        t        | j                  d«      xs g «      «      | d<   | S )NÚdefine_macros)ÚlistÚmapÚtupler7   )Úattrss    r3   r·   r·     s-   € ô "¤#¤e¨U¯Y©Y°Ó-GÒ-MÈ2Ó"NÓO€Eˆ/ÑØ€Lr\   c                ó   — |S ©Nry   )Ú_distrs   s     r3   rn   rn     ó   € Ø€Jr\   c                ó   — | S rÅ   ry   )rs   s    r3   Ú	_identityrÉ     rÇ   r\   c                óÄ  — | }|j                  d|j                  di «      «      }t        |«      }dddœ}t        |j                  «       «      D ],  \  }}t	        |«      }||v sŒ|j                  |«      |||   <   Œ. |rT|j                  «       D ��	�
�ci c]0  \  }}	|	r)||	j                  «       D �
�cg c]  \  }
}|
› d|› �‘Œ c}}
“Œ2 c}}
}	}|d<   y y c c}}
w c c}}
}	}w )Núentry-pointsÚentry_pointsÚconsole_scriptsÚgui_scripts)ÚscriptsrÎ   z = )Úpopr!   rÀ   r8   r<   )rC   r6   ÚgivenrÌ   Úrenamingrj   rE   rF   r˜   ÚgrouprA   rB   s               r3   r;   r;   #  sé   € Ø€GØ�K‰K˜¨¯©°NÀBÓ(GÓH€EÜ˜“;€LØ,¸]ÑK€HÜ˜7Ÿ=™=›?Ó+ò @‰
ˆˆUÜ& sÓ+ˆØ�xÒà/6¯{©{¸3Ó/?ˆL˜ (Ñ+Ò,ð	@ñ ð  ,×1Ñ1Ó3÷#
ñ #
á��eÙð ¨E¯K©K«M×:¡D A q�a�S˜˜A˜3’<Ó:Ñ:õ#
ˆ�Òð ùã:ùõ#
s   ÂC
Â2CÃC
ÃC
c           	     ó&  — | j                  di «      }|j                  di «      j                  di «      }t        |«      }|j                  }| j                  di «      j                  di «      j                  «       D ]“  \  }}t	        |«      }|j                  |t        «       «      }	|j                  |i «       |j                  «       D ]D  \  }
}t	        |
«      }
t        |«      |f||   |
<   |
|	vsŒ)t        j                  d|› d|
› d�«       ŒF Œ• y )NrI   rJ   ÚcmdclassÚ	distutilszCommand option r#   z is not defined)
r7   Ú_valid_command_optionsÚcommand_optionsr8   r<   r`   Ú
setdefaultr�   Ú_loggerÚwarning)Ú	pyprojectr.   r0   rX   rÕ   Úvalid_optionsÚcmd_optsÚcmdr/   rƒ   rj   rE   s               r3   rW   rW   8  s	  € Ø—‘˜v rÓ*€JØ�~‰~˜l¨BÓ/×3Ñ3°JÀÓC€HÜ*¨8Ó4€Mà×#Ñ#€HØ —}‘} V¨RÓ0×4Ñ4°[À"ÓE×KÑKÓMò 
N‰ˆˆVÜ! #Ó&ˆØ×!Ñ! #¤s£uÓ-ˆØ×Ñ˜C Ô$Ø Ÿ,™,›.ò 	N‰JˆC�Ü% cÓ*ˆCÜ"% h£-°Ð!7ˆH�S‰M˜#ÑØ˜%Òô —‘ /°#°°a¸°u¸OÐ LÕMñ	Nñ	
Nr\   c           	     óJ  — ddl m} ddlm} dt	        |j
                  «      i} |j                  d¬«      }d„ |D «       }d	„ |D «       }t        || j                  «       «      D ]=  \  }}|j                  |t        «       «      }	|	t	        t        |d
g «      «      z  }	|	||<   Œ? |S )Nr   r   r   r   Úglobalzdistutils.commands)rÓ   c              3  ó2   K  — | ]  }t        |«      –— Œ y ­wrÅ   )Ú_load_ep©rz   Úeps     r3   r{   z)_valid_command_options.<locals>.<genexpr>S  s   è ø€ ÒH¨Bœ8 BŸ<ÑHùr|   c              3  ó&   K  — | ]	  }|sŒ|–— Œ y ­wrÅ   ry   rä   s     r3   r{   z)_valid_command_options.<locals>.<genexpr>T  s   è ø€ Ò;˜2º”BÑ;ùó   ‚ŠÚuser_options)Úsetuptools.distr   Ú
_importlibr   Ú_normalise_cmd_optionsÚglobal_optionsrÌ   r
   r8   r7   r`   ro   )
rÕ   r   r   rÝ   Úunloaded_entry_pointsÚloaded_entry_pointsrÌ   rß   Ú	cmd_classÚoptss
             r3   r×   r×   K  sª   € Ý,å%àÔ5°l×6QÑ6QÓRÐS€Mà1˜H×1Ñ1Ð8LÔMÐÙHÐ2GÔHÐÙ;Ð!4Ô;€LÜ ¨h¯n©nÓ.>Ó?ò "‰ˆˆYØ× Ñ  ¤c£eÓ,ˆØÔ,¬W°YÀÐPRÓ-SÓTÑTˆØ!ˆ�cÒð"ð
 Ðr\   c                ó  — | j                   j                  d«      ry 	 | j                  | j                  «       fS # t        $ rI}|j
                  j                  › d| j                  › �}t        j                  |› d|› �«       Y d }~y d }~ww xY w)Nzwheel.bdist_wheelz" while trying to load entry-point z: )	rE   Ú
startswithr˜   ÚloadÚ	ExceptionÚ	__class__Ú__name__rÚ   rÛ   )rå   Úexr[   s      r3   rã   rã   ]  s}   € Ø	‡x�x×ÑÐ.Ô/ð ðØ—‘˜Ÿ™›Ð#Ð#øÜò Ø—‘×&Ñ&Ð'Ð'IÈ"Ï'É'ÈÐSˆÜ�‰˜3˜%˜r " ˜Ô'Üûðús   ž: º	BÁ?BÂBr˜   c                ó6   — t        | «      j                  d«      S )Nz_=)r<   Ústrip)r˜   s    r3   Ú_normalise_cmd_option_keyrú   l  s   € Ü˜tÓ$×*Ñ*¨4Ó0Ð0r\   c                óD   — | D �ch c]  }t        |d   «      ’Œ c}S c c}w )Nr   )rú   )ÚdescÚfancy_options     r3   rë   rë   p  s    € ØKOÖP¸<Ô% l°1¡oÕ6ÒPÐPùÒPs   …c                ó†   — d}t        | dd «      xs i }|j                  «       D ��ci c]  \  }}||vsŒ||“Œ c}}S c c}}w )N)rÍ   rÎ   rÌ   )ro   r8   )r.   ÚignorerE   rA   rB   s        r3   Ú_get_previous_entrypointsr   t  sB   € Ø/€FÜ�D˜.¨$Ó/Ò5°2€EØ"Ÿ[™[›]×>‘T�Q˜¨a°vªoˆAˆq‰DÓ>Ð>ùÓ>s   §=´=c                óF   — t        | dd «      xs i }|j                  d«      S )NrÌ   rÍ   ©ro   r7   ©r.   rE   s     r3   Ú_get_previous_scriptsr  z  s%   € Ü�D˜.¨$Ó/Ò5°2€EØ�9‰9Ð&Ó'Ð'r\   c                óF   — t        | dd «      xs i }|j                  d«      S )NrÌ   rÎ   r  r  s     r3   Ú_get_previous_gui_scriptsr    s$   € Ü�D˜.¨$Ó/Ò5°2€EØ�9‰9�]Ó#Ð#r\   c                ó²   — |j                   }t        |d| › �«      t        |d| › �«      }} ||«       t        || t        j                   |«       «      «       y)zCApply distutils metadata validation but preserve "static" behaviourrl   Úget_N)r   ro   rr   r   ÚList)Úattrr.   rs   Úmetart   rd   s         r3   Ú_set_static_list_metadatar  „  sL   € à�=‰=€DÜ˜T T¨$¨ =Ó1´7¸4À4ÈÀvÀÓ3OˆF€FÙ
ˆ3„KÜˆD�$œŸ™¡V£XÓ.Õ/r\   c                óD   — t        t        d„ | j                  d«      «      S )a8  
    Similar to ``operator.attrgetter`` but returns None if ``attr`` is not found
    >>> from types import SimpleNamespace
    >>> obj = SimpleNamespace(a=42, b=SimpleNamespace(c=13))
    >>> _attrgetter("a")(obj)
    42
    >>> _attrgetter("b.c")(obj)
    13
    >>> _attrgetter("d")(obj) is None
    True
    c                ó   — t        | |d «      S rÅ   )ro   )Úaccrµ   s     r3   ú<lambda>z_attrgetter.<locals>.<lambda>˜  s   € ¬'°#°q¸$Ó*?€ r\   r#   )r   r   Úsplit)r
  s    r3   Ú_attrgetterr  Œ  s   € ô ”6Ñ?ÀÇÁÈCÃÓQÐQr\   c                 ó   ‡ — ˆ fd„}|S )aL  
    Return the first "truth-y" attribute or None
    >>> from types import SimpleNamespace
    >>> obj = SimpleNamespace(a=42, b=SimpleNamespace(c=13))
    >>> _some_attrgetter("d", "a", "b.c")(obj)
    42
    >>> _some_attrgetter("d", "e", "b.c", "a")(obj)
    13
    >>> _some_attrgetter("d", "e", "f")(obj) is None
    True
    c                óB   •‡ — ˆ fd„‰D «       }t        d„ |D «       d «      S )Nc              3  ó@   •K  — | ]  } t        |«      ‰«      –— Œ y ­wrÅ   )r  )rz   ÚiÚobjs     €r3   r{   z5_some_attrgetter.<locals>._acessor.<locals>.<genexpr>©  s   øè ø€ Ò5¨!�.”+˜a“. ×%Ñ5ùs   ƒc              3  ó&   K  — | ]	  }|€Œ|–— Œ y ­wrÅ   ry   )rz   r  s     r3   r{   z5_some_attrgetter.<locals>._acessor.<locals>.<genexpr>ª  s   è ø€ Ò8˜1¨!©-”QÑ8ùrç   )Únext)r  Úvaluesr8   s   ` €r3   Ú_acessorz"_some_attrgetter.<locals>._acessor¨  s    ù€ Û5¨uÔ5ˆÜÑ8 Ô8¸$Ó?Ð?r\   ry   )r8   r  s   ` r3   Ú_some_attrgetterr  ›  s   ø€ ô@ð €Or\   Úauthor)rŸ   Ú
maintainer)Úreadmer”   ÚauthorsÚmaintainersÚurlsÚdependenciesÚoptional_dependenciesÚrequires_pythonzdict[str, _Correspondence]r=   Úscript_filesrÏ   Únamespace_packagesz 
        Please migrate to implicit native namespaces instead.
        See https://packaging.python.org/en/latest/guides/packaging-namespace-packages/.
        Ú	obsoletesÚprovidesÚ	platforms)r(  r)  r*  >   Úlicense_filer¥   Úlicense_filesÚprovides_extrasr•   rŠ   r¹   zmetadata.nameÚversionzmetadata.versionÚdescriptionzmetadata.descriptionr  zmetadata.long_descriptionzrequires-pythonr©   zmetadata.python_requiresr”   zmetadata.license_expressionzmetadata.licenser   zmetadata.authorzmetadata.author_emailr!  zmetadata.maintainerzmetadata.maintainer_emailÚkeywordszmetadata.keywordsÚclassifierszmetadata.classifiersr"  zmetadata.project_urlsrË   úgui-scriptsr#  r­   úoptional-dependenciesr±   Ú )r”   r   r!  r0  r1  r"  rË   rÏ   r2  r#  r3  rc   c                  ó&   — e Zd ZdZdZedd„«       Zy)rb   z9`{field}` defined outside of `pyproject.toml` is ignored.a%  
    The following seems to be defined outside of `pyproject.toml`:

    `{field} = {value!r}`

    According to the spec (see the link below), however, setuptools CANNOT
    consider this value unless `{field}` is listed as `dynamic`.

    https://packaging.python.org/en/latest/specifications/pyproject-toml/#declaring-project-metadata-the-project-table

    To prevent this problem, you can list `{field}` under `dynamic` or alternatively
    remove the `[project]` table from your file and rely entirely on other means of
    configuration.
    c                ó<   — | j                   j                  ||¬«      S )Nr_   )Ú_DETAILSÚformat)ÚclsrD   rE   s      r3   Údetailsz_MissingDynamic.details  s   € à�|‰|×"Ñ"¨°eÐ"Ó<Ð<r\   N)rD   r�   rE   r   Úreturnr�   )rö   Ú
__module__Ú__qualname__Ú_SUMMARYr7  Úclassmethodr:  ry   r\   r3   rb   rb   ÿ  s"   „ ØJ€Hð€Hð$ ò=ó ñ=r\   rb   )r.   r   r/   r!   r0   r   r;  r   )r.   r   r/   r!   r1   r   )r.   r   r/   r!   r0   r   )r.   r   rC   r!   )rj   r�   r;  r�   )r.   r   rD   r�   rE   r   )r�   r�   r;  z
str | None)r.   r   rs   r   r1   úStrPath | None)r.   r   rs   z
str | dictr1   r@  )r.   r   rs   ú
list[dict]rž   r@  rŸ   r�   )r.   r   rs   r!   rž   r@  )r.   r   rs   r�   rž   r@  )r.   r   rs   rÀ   rž   r@  )r.   r   rs   rA  r;  zlist[Extension])rÃ   r!   r;  r!   )rÆ   r   rs   r    r;  r    )rs   r    r;  r    )rC   r!   )rÜ   r!   r.   r   r0   r   )rÕ   r   r;  zdict[str, set[str]])rå   zmetadata.EntryPointr;  ztuple[str, type] | None)r˜   r�   r;  r�   )rü   r   r;  zset[str])r.   r   r;  zdict[str, list])r.   r   r;  zlist | None)r
  r�   r.   r   rs   rÀ   r;  ÚNone)^Ú__doc__Ú
__future__r   Úloggingr$   Úcollections.abcr   r   Úemail.headerregistryr   Ú	functoolsr   r   Úinspectr	   Ú	itertoolsr
   Útypesr   Útypingr   r   r   r4  r   Ú_pathr   Úerrorsr   r   Ú	extensionr   Úwarningsr   r   r   Úsetuptools._importlibr   ré   r   Údistutils.distr   r   Ú__annotations__r�   r!   r   r   r    Ú	getLoggerrö   rÚ   r4   r'   r(   r:   r<   r?   r~   r„   r’   r–   r£   r§   r«   r¯   r²   r½   r·   rn   rÉ   r;   rW   r×   rã   rú   rë   r   r  r  r  r  r  r=   rU   rS   rV   rq   rm   ra   Ú
EMPTY_LISTÚ
EMPTY_DICTrc   rb   ry   r\   r3   ú<module>rW     s³  ðòõ #ã Û 	ß -Ý (ß %Ý Ý Ý "ß .Ñ .å Ý ß ;Ý !ß FáÝ å.Ý,å+ñ " "Ó%€€wÓ %Ø!$ t¨C°¨H¡~Ñ!5Ð �YÓ 5Ø% ~°s¸GÀd¹NÐ&KÈTÐ&QÑR€�Ó RÙˆTƒ]€à
ˆ'×
Ñ
˜HÓ
%€óó..ó$'2óTLó)ó
"ð ØØñ€ó
Bð)Ø
ð)Ø0ð)Ø<Jó)ó2Có6Pó$+óDó óóóóóó
ó*Nð& 05ô ó$ó1óQó?ó(ó
$ó
0òRòð*  ØÙ�w XÔ.Ù˜7¨Ô6ØØ!Ø3Ø'ñ	8Ð Ð4ó 	ð % iÐ0Ð àð ðÐ ñ Ð2°KÓ@ÙÐ1°:Ó>ÙÐ2°KÓ@ñ	Ð òÐ ð �<ð€ðØ
‰K˜Ó(ðà‰{Ð-Ó.ðð ‘;Ð5Ó6ðð ‰kÐ5Ó6ð	ð
 Ñ'Ð(9Ð;UÓVðð ÑÐ =Ð?QÓRðð ÑÐ 1Ð3JÓKðð Ñ#Ð$9Ð;VÓWðð ‘Ð/Ó0ðð ‘;Ð5Ó6ðð ‰KÐ/Ó0ðð Ð-ðð Ð$ðð  Ð,ð!ð" ‘KÐ 2Ó3ð#ð$ ™[Ð)9Ó:ð%Ð ð4 ð ×!Ñ!Ø×%Ñ%Ø×"Ñ"Ø×%Ñ%Ø×ÑØ×&Ñ&Ø×!Ñ!Ø×%Ñ%Ø×&Ñ&Ø$×/Ñ/ñ!#Ð ˜4ó ô(=Ð'õ =r\   