+
    Ž°³j-,  ã                  ób  € ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
Ht ^ RIHtHt ^RIHtHt ]'       d   ^ RIHt ^RIHt ^ RIHt ^ R	IHt  ! R
 R]RR7      t ! R R]4      t ! R R]4      t ! R R4      t ! R R]4      t ! R R]4      t R t!R t"R t#R t$R t%R# )é    )ÚannotationsN)ÚIterable)ÚTYPE_CHECKINGÚ	TypedDict)ÚmetadataÚ	resources)ÚSelf)ÚSetuptoolsWarning)Úfirst_line_re)Úget_platformc                  ó,   € ] tR t^t$ R]R&   R]R&   RtR# )Ú
_SplitArgsÚboolÚcommentsÚposix© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__Ú__static_attributes__r   ó    ÚT/home/luca/screen-checking/.venv/lib/python3.14/site-packages/setuptools/_scripts.pyr   r      s   ‡ ØƒNØ‡Kr   r   F)Útotalc                  óÖ   € ] tR t^t$ Rt. tR]R&   ]! 4       t]	R 4       t
]	R 4       t]	R R l4       t]	R 4       t]	R	 R
 l4       tR R lt]R 4       tR t]R 4       t]R 4       tRtR# )ÚCommandSpecza
A command spec for a #! header, specified as a list of arguments akin to
those passed to Popen.
z	list[str]Úoptionsc                ó   € V # )zF
Choose the best CommandSpec class based on environmental conditions.
r   ©Úclss   &r   ÚbestÚCommandSpec.best'   s	   € ð
 ˆ
r   c                	óœ   € \         P                  P                  \        P                  4      p\         P
                  P                  R V4      # )Ú__PYVENV_LAUNCHER__)ÚosÚpathÚnormpathÚsysÚ
executableÚenvironÚget)r!   Ú_defaults   & r   Ú_sys_executableÚCommandSpec._sys_executable.   s0   € ä—7‘7×#Ñ#¤C§N¡NÓ3ˆÜ�z‰z�~‰~Ð3°XÓ>Ð>r   c               ó    € V ^8„  d   QhRRRR/# )é   Úparamz!Self | str | Iterable[str] | NoneÚreturnr	   r   )Úformats   "r   Ú__annotate__ÚCommandSpec.__annotate__4   s   € ÷ Kñ KÐ@ð KÀTñ Kr   c                ó  € \        W4      '       d   V# \        V\        4      '       d   V P                  V4      # \        V\        4      '       d	   V ! V4      # Vf   V P	                  4       # \        R\        V4       24      h)zO
Construct a CommandSpec from a parameter to build_scripts, which may
be None.
z!Argument has an unsupported type )Ú
isinstanceÚstrÚfrom_stringr   Úfrom_environmentÚ	TypeErrorÚtype)r!   r2   s   &&r   Ú
from_paramÚCommandSpec.from_param3   sr   € ô �e×!Ò!ØˆLÜ�eœS×!Ò!Ø—?‘? 5Ó)Ð)Ü�eœX×&Ò&Ù�u“:ÐØŠ=Ø×'Ñ'Ó)Ð)ÜÐ;¼DÀ»K¸=ÐIÓJÐJr   c                	ó0   € V ! V P                  4       .4      # ©N)r.   r    s   &r   r;   ÚCommandSpec.from_environmentC   s   € á�C×'Ñ'Ó)Ð*Ó+Ð+r   c               ó    € V ^8„  d   QhRRRR/# )r1   Ústringr9   r3   r	   r   )r4   s   "r   r5   r6   H   s   € ÷ ñ  ð ¨ñ r   c                óT   € \         P                  ! V3/ V P                  B pV ! V4      # )ze
Construct a command spec from a simple string representing a command
line parseable by shlex.split.
)ÚshlexÚsplitÚ
split_args)r!   rD   Úitemss   && r   r:   ÚCommandSpec.from_stringG   s%   € ô —’˜FÑ5 c§n¡nÑ5ˆÙ�5‹zÐr   c               ó   € V ^8„  d   QhRR/# )r1   Úscript_textr9   r   )r4   s   "r   r5   r6   P   s   € ÷ &ñ &¨3ñ &r   c                	óÌ   € \         P                  ! V P                  V4      4      V n        \        P
                  ! V 4      p\        V4      '       g   R .V P                  R&   R# R# )z-x:Nr   NN)rF   rG   Ú_extract_optionsr   Ú
subprocessÚlist2cmdlineÚisascii)ÚselfrL   Úcmdlines   && r   Úinstall_optionsÚCommandSpec.install_optionsP   sM   € Ü—{’{ 4×#8Ñ#8¸Ó#EÓFˆŒÜ×)Ò)¨$Ó/ˆÜ�w×ÒØ $˜vˆD�L‰L˜Óñ  r   c                óÚ   € V R,           P                  4       ^ ,          p\        4       P                  V4      pV'       d   VP                  ^4      ;'       g    RMRpVP	                  4       # )z8
Extract any options from the first line of the script.
Ú
Ú )Ú
splitlinesÚ_first_line_reÚmatchÚgroupÚstrip)Úorig_scriptÚfirstr[   r   s   &   r   rN   ÚCommandSpec._extract_optionsV   sU   € ð
 ˜tÕ#×/Ñ/Ó1°!Õ4ˆÜÓ ×&Ñ& uÓ-ˆß*/�%—+‘+˜a“.×&Ð& Bø°RˆØ�}‰}‹Ðr   c                	óX   € V P                  V \        V P                  4      ,           4      # rA   )Ú_renderÚlistr   )rR   s   &r   Ú	as_headerÚCommandSpec.as_header`   s   € Ø�|‰|˜D¤4¨¯©Ó#5Õ5Ó6Ð6r   c                	óŠ   € R pV F:  pV P                  V4      '       g   K  V P                  V4      '       g   K5  V ^R u # 	  V # )z"'éÿÿÿÿ)Ú
startswithÚendswith)ÚitemÚ_QUOTESÚqs   &  r   Ú_strip_quotesÚCommandSpec._strip_quotesc   sA   € àˆÛˆAØ�‰˜q×!Ô! d§m¡m°A×&6Ô&6Ø˜A˜b�zÒ!ñ ð ˆr   c                	ó\   € \         P                  ! R  V  4       4      pRV,           R,           # )c              3  óh   "  € T F(  p\         P                  VP                  4       4      x € K*  	  R # 5irA   )r   rm   r]   )Ú.0rj   s   & r   Ú	<genexpr>Ú&CommandSpec._render.<locals>.<genexpr>m   s'   é € ð *
Ù@E¸ŒK×%Ñ% d§j¡j£l×3Ð3Ãùs   ‚02z#!rW   )rO   rP   )rI   rS   s   & r   rb   ÚCommandSpec._renderk   s0   € ä×)Ò)ñ *
Ù@Eó*
ó 
ˆð �g�~ Õ$Ð$r   )r   N)r   r   r   r   Ú__doc__r   r   r   rH   Úclassmethodr"   r.   r>   r;   r:   rT   ÚstaticmethodrN   rd   rm   rb   r   r   r   r   r   r      sÄ   ‡ ñð
 €GˆYÓÙ“€Jàñó ðð ñ?ó ð?ð ôKó ðKð ñ,ó ð,ð ôó ðõ&ð ñó ðò7ð ñó ðð ñ%ó ô%r   r   c                  ó(   € ] tR t^st]! RR7      tRtR# )ÚWindowsCommandSpecF)r   r   N)r   r   r   r   r   rH   r   r   r   r   ry   ry   s   s   † Ù %Ô(„Jr   ry   c                  ó¼   € ] tR t^wtRt]P                  ! R4      P                  4       t]	t
]RR l4       t]R 4       t]R 4       t]R 4       t]RR R	 ll4       tR
tR# )ÚScriptWriterzT
Encapsulates behavior around writing entry point scripts for console and
gui apps.
aJ  
        # EASY-INSTALL-ENTRY-SCRIPT: %(spec)r,%(group)r,%(name)r
        import re
        import sys

        # for compatibility with easy_install; see #2198
        __requires__ = %(spec)r

        try:
            from importlib.metadata import distribution
        except ImportError:
            try:
                from importlib_metadata import distribution
            except ImportError:
                from pkg_resources import load_entry_point


        def importlib_load_entry_point(spec, group, name):
            dist_name, _, _ = spec.partition('==')
            matches = (
                entry_point
                for entry_point in distribution(dist_name).entry_points
                if entry_point.group == group and entry_point.name == name
            )
            return next(matches).load()


        globals().setdefault('load_entry_point', importlib_load_entry_point)


        if __name__ == '__main__':
            sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
            sys.exit(load_entry_point(%(spec)r, %(group)r, %(name)r)())
        Nc              #  óD  "  € \        VR4      '       g@   \        P                  ! R4       \        P                  P                  VP                  4      pVf   V P                  4       pVP                   RVP                   2pR F“  pV R2pVP                  P                  VR7       Fk  pVP                  pV P                  VP                  4       V P                  \        4       ,          pV P                  WFP                  W(4      p	T	 Rj  x€L
  Km  	  K•  	  R#  L5i)zi
Yield write_script() argument tuples for a distribution's
console_scripts and gui_scripts entry points.
Úentry_pointsz%Unsupported distribution encountered.Nz==Ú_scripts)r\   ©ÚconsoleÚgui)Úhasattrr
   Úemitr   ÚDistributionÚatÚegg_infoÚ
get_headerÚnameÚversionr}   ÚselectÚ_ensure_safe_nameÚtemplateÚlocalsÚ_get_script_args)
r!   ÚdistÚheaderÚspecÚtype_r\   Úeprˆ   rL   Úargss
   &&&       r   Úget_argsÚScriptWriter.get_args¤   sç   é € ô �t˜^×,Ò,Ü×"Ò"Ð#JÔKÜ×(Ñ(×+Ñ+¨D¯M©MÓ:ˆDàŠ>Ø—^‘^Ó%ˆFØ—)‘)�˜B˜tŸ|™|˜nÐ-ˆÛ%ˆEØ�g˜XÐ&ˆEØ×'Ñ'×.Ñ.°UÐ.Ö;�Ø—w‘w�Ø×%Ñ% b§g¡gÔ.Ø!Ÿl™l¬V«XÕ5�Ø×+Ñ+¨E·7±7¸FÓP�Ø—’ó <ó &ñ  ùs   ‚DD ÄDÄD c                óZ   € \         P                  ! RV 4      pV'       d   \        R4      hR# )z/
Prevent paths in *_scripts entry point names.
z[\\/]z+Path separators not allowed in script namesN)ÚreÚsearchÚ
ValueError)rˆ   Úhas_path_seps   & r   r‹   ÚScriptWriter._ensure_safe_name½   s(   € ô
 —y’y ¨4Ó0ˆßÜÐJÓKÐKñ r   c                ó¬   € \         P                  R8X  g+   \        P                  R8X  d*   \        P                  R8X  d   \
        P                  4       # V # )z4
Select the best ScriptWriter for this environment.
Úwin32ÚjavaÚnt)r)   Úplatformr&   rˆ   Ú_nameÚWindowsScriptWriterr"   r    s   &r   r"   ÚScriptWriter.bestÆ   s:   € ô
 �<‰<˜7Ô"¤r§w¡w°&Ô'8¼R¿X¹XÈÔ=MÜ&×+Ñ+Ó-Ð-àˆJr   c              #  	ó&   "  € W#V,           3x € R # 5irA   r   )r!   r’   rˆ   r�   rL   s   &&&&&r   rŽ   ÚScriptWriter._get_script_argsÐ   s   é € ð ˜kÕ)Ð*Ô*ùs   ‚c               ó$   € V ^8„  d   QhRRRRRR/# )r1   rL   r9   r*   z(str | CommandSpec | Iterable[str] | Noner3   r   )r4   s   "r   r5   ÚScriptWriter.__annotate__Ö   s(   € ÷ ñ àðð =ðð 
ñ	r   c                ó–   € V P                   P                  4       P                  V4      pVP                  V4       VP	                  4       # )z;Create a #! line, getting options (if any) from script_text)Úcommand_spec_classr"   r>   rT   rd   )r!   rL   r*   Úcmds   &&& r   r‡   ÚScriptWriter.get_headerÕ   s=   € ð ×$Ñ$×)Ñ)Ó+×6Ñ6°zÓBˆØ×Ñ˜KÔ(Ø�}‰}‹Ðr   r   rA   )rX   N)r   r   r   r   ru   ÚtextwrapÚdedentÚlstriprŒ   r   rª   rv   r•   rw   r‹   r"   rŽ   r‡   r   r   r   r   r{   r{   w   s—   † ñð
 �Šð!	ó#÷F �fƒhðG ðJ %Ðàó ó ð ð0 ñLó ðLð ñó ðð ñ+ó ð+ð öó ôr   r{   c                  óZ   € ] tR t^át]t]R 4       t]R 4       t]R 4       t	]
R 4       tRtR# )r£   c                ót   € \        \        V R7      p\        P                  P	                  RR4      pW,          # )z3
Select the best ScriptWriter suitable for Windows
)r*   ÚnaturalÚSETUPTOOLS_LAUNCHERr*   )ÚdictÚWindowsExecutableLauncherWriterr&   r+   r,   )r!   Úwriter_lookupÚlaunchers   &  r   r"   ÚWindowsScriptWriter.bestä   s4   € ô
 Ü6Øô
ˆô
 —:‘:—>‘>Ð"7¸ÓFˆØÕ&Ð&r   c              #  ó´  "  € \        RRR7      V,          pV\        P                  R,          P                  4       P	                  R4      9  d1   RP
                  ! R	/ \        4       B p\        P                  ! V4       . R
OpVP                  V4       V P                  W4      pV Uu. uF  q‚V,           NK  	  p	pW%,           W4,           RV	3x € R# u upi 5i)z For Windows, add a .py extensionú.pyaú.pywr   ÚPATHEXTÚ;zK{ext} not listed in PATHEXT; scripts will not be recognized as executables.ÚtNr   )rº   ú.pyú
-script.pyú.pycú.pyor»   ú.exe)r´   r&   r+   ÚlowerrG   r4   r�   r
   rƒ   ÚremoveÚ_adjust_header)
r!   r’   rˆ   r�   rL   ÚextÚmsgÚoldÚxÚblockerss
   &&&&&     r   rŽ   Ú$WindowsScriptWriter._get_script_argsñ   sÀ   é € ô ˜6 vÔ.¨uÕ5ˆØ”b—j‘j Õ+×1Ñ1Ó3×9Ñ9¸#Ó>Ô>ð-ç‰fðñ !ô “xñ!ˆCô ×"Ò" 3Ô'ÚKˆØ�
‰
�3ŒØ×#Ñ# EÓ2ˆÙ&)Ó*¡c ˜1—H�H¡cˆÐ*Ø�j˜&Õ.°°XÐ=Ô=ùò +ùs   ‚B(CÂ*CÂ;Cc                óè   € RpRpVR8X  d   YCrC\         P                  ! \         P                  ! V4      \         P                  4      pVP	                  W$R7      pV P                  V4      '       d   V# T# )zn
Make sure 'pythonw' is used for gui and 'python' is used for
console (regardless of what sys.executable is).
zpythonw.exez
python.exer�   )rD   Úrepl)r˜   ÚcompileÚescapeÚ
IGNORECASEÚsubÚ_use_header)r!   r’   Úorig_headerÚpatternrÎ   Ú
pattern_obÚ
new_headers   &&&    r   rÆ   Ú"WindowsScriptWriter._adjust_header  s`   € ð  ˆØˆØ�EŒ>Ø �TÜ—Z’Z¤§	¢	¨'Ó 2´B·M±MÓBˆ
Ø—^‘^¨;�^ÓBˆ
Ø Ÿ_™_¨Z×8Ò8ˆzÐI¸kÐIr   c                óŒ   € V ^R P                  R4      p\        P                  R8g  ;'       g    \        P                  ! V4      # )zµ
Should _adjust_header use the replaced header?

On non-windows systems, always use. On
Windows systems, only use the replaced header if it resolves
to an executable on the system.
Ú"rž   rg   )r]   r)   r¡   ÚshutilÚwhich)r×   Úclean_headers   & r   rÓ   ÚWindowsScriptWriter._use_header  s;   € ð " ! BÐ'×-Ñ-¨cÓ2ˆÜ�|‰|˜wÑ&×DÐD¬&¯,ª,°|Ó*DÐDr   r   N)r   r   r   r   ry   rª   rv   r"   rŽ   rÆ   rw   rÓ   r   r   r   r   r£   r£   á   sZ   † Ø+Ðàñ
'ó ð
'ð ñ>ó ð>ð ñJó ðJð ñ	Eó ô	Er   r£   c                  ó&   € ] tR tRt]R 4       tRtR# )rµ   i  c              #  óB  "  € VR8X  d	   RpRpR.pMRpRp. ROpV P                  W4      pV U	u. uF  q’V	,           NK  	  p
p	W&,           W„,           RV
3x € VR,           \        V4      R3x € \        4       '       g   VR	,           pV\        V4      R3x € R
# R
# u up	i 5i)z7
For Windows, add a .py extension and an .exe launcher
r�   z-script.pywr»   ÚclirÀ   r¾   rÃ   Úbz.exe.manifestN)r¿   rÁ   rÂ   )rÆ   Úget_win_launcherÚis_64bitÚload_launcher_manifest)r!   r’   rˆ   r�   rL   Úlauncher_typerÇ   rÉ   ÚhdrrÊ   rË   Úm_names   &&&&&       r   rŽ   Ú0WindowsExecutableLauncherWriter._get_script_args  s¸   é € ð
 �EŒ>Ø!ˆMØˆCØ�(‰Cà!ˆMØˆCÚ)ˆCØ× Ñ  Ó/ˆÙ&)Ó*¡c ˜1—H�H¡cˆÐ*Ø�z˜3Õ,¨c°8Ð<Ò<à�6�MÜ˜]Ó+Øð
ò 	
ô
 �zŠzð ˜OÕ+ˆFØÔ1°$Ó7¸Ð=Ô=ñ ùò +ùs   ‚-B¯BÁ ABr   N)r   r   r   r   rv   rŽ   r   r   r   r   rµ   rµ     s   † Øñ>ó ô>r   rµ   c                ó   € V  R2p\        4       '       d6   \        4       R8X  d   VP                  RR4      pM%VP                  RR4      pMVP                  RR4      p\        P                  ! R4      P                  V4      P                  4       # )z›
Load the Windows launcher (executable) suitable for launching a script.

`type` should be either 'cli' or 'gui'

Returns the executable as a byte string.
rÃ   z	win-arm64Ú.z-arm64.z-64.z-32.Ú
setuptools)rä   r   Úreplacer   ÚfilesÚjoinpathÚ
read_bytes)r=   Úlauncher_fns   & r   rã   rã   <  sy   € ð �F˜$�-€KÜ‡z‚zÜ‹>˜[Ô(Ø%×-Ñ-¨c°9Ó=‰Kà%×-Ñ-¨c°6Ó:‰Kà!×)Ñ)¨#¨vÓ6ˆÜ�?Š?˜<Ó(×1Ñ1°+Ó>×IÑIÓKÐKr   c                ó–   € \         P                  ! \        4      P                  R 4      pVP	                  RR7      \        4       ,          # )zlauncher manifest.xmlzutf-8)Úencoding)r   rî   r   rï   Ú	read_textÚvars)rˆ   Úress   & r   rå   rå   O  s4   € Ü
�/Š/œ(Ó
#×
,Ñ
,Ð-DÓ
E€CØ�=‰= 'ˆ=Ó*¬T«VÕ3Ð3r   c                 óº   € \        \        P                  \        4      '       d   \        # \        P
                  ! \        P                  P                  4       4      # )zS
Return a regular expression based on first_line_re suitable for matching
strings.
)r8   r   rÕ   r9   r˜   rÏ   Údecoder   r   r   rZ   rZ   T  s=   € ô
 ”-×'Ñ'¬×-Ò-ÜÐô �:Š:”m×+Ñ+×2Ñ2Ó4Ó5Ð5r   c                 ó4   € \         P                  ! R 4      ^8H  # )ÚP)ÚstructÚcalcsizer   r   r   rä   rä   `  s   € Ü�?Š?˜3Ó 1Ñ$Ð$r   c                óN   €  V P                  R 4       R#   \         d     R# i ; i)ÚasciiFT)ÚencodeÚUnicodeError)Úss   &r   rQ   rQ   d  s,   € ðØ	�‰�Ôñ øô ô Úðús   ‚ •$£$)&Ú
__future__r   r&   r˜   rF   rÛ   rû   rO   r)   r­   Úcollections.abcr   Útypingr   r   Ú
_importlibr   r   Útyping_extensionsr	   Úwarningsr
   Údistutils.command.build_scriptsr   Údistutils.utilr   r   rc   r   ry   r{   r£   rµ   rã   rå   rZ   rä   rQ   r   r   r   Ú<module>r
     s¥   ðÝ "ã 	Û 	Û Û Û Û Û 
Û Ý $ß +ç +çÝ&å 'å 9Ý 'ô� %õ ô
R%�$ô R%ôj)˜ô )÷gñ gôT8E˜,ô 8Eôv>Ð&9ô >ò@Lò&4ò
	6ò%ôr   