+
    JV-jW%  ã                  óà  a € 0 t $ ^ 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
HtHtHtHt ^RIHtHtHtHt RtRtRt0 R(mt]P0                  R R	 l4       tR
 R ltR R ltR R lt]P:                  ! R 4      tR]R&    ! R R]4      t R R lt!R R lt"R R lt#R R lt$]PJ                  R R l4       t&R R  lt'] ! ^^4      R!] ! ^^4      R"] ! ^^4      R#/t(R$]R%&   R& R' lt)R# ))é    )ÚannotationsN)Ú	GeneratorÚIteratorÚ
NamedTupleÚSequence)ÚEIClassÚEIDataÚELFFileÚEMachinel      ~ i   i   c               ó    € V ^8„  d   QhRRRR/# )é   ÚpathÚstrÚreturnz%Generator[ELFFile | None, None, None]© )Úformats   "Úe/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/packaging/_manylinux.pyÚ__annotate__r       s   € ÷ ñ �Sð ÐBñ ó    c              #  óÎ   "  €  \        V R 4      ;_uu_ 4       p\        V4      x € RRR4       R#   + '       g   i     R# ; i  \        \        \        3 d	    Rx €  R# i ; i5i)ÚrbN)Úopenr
   ÚOSErrorÚ	TypeErrorÚ
ValueError)r   Úfs   & r   Ú
_parse_elfr      sK   é € ðÜ�$˜×Ô Ü˜!“*Ò÷ ××Òûä”Y¤
Ð+ô Ø�
ðüsE   ‚A%„A ˜0¦A ®A%°A	»A ¿A%ÁA ÁA"ÁA%Á!A"Á"A%c               ó    € V ^8„  d   QhRRRR/# ©r   Ú
executabler   r   Úboolr   )r   s   "r   r   r   (   s   € ÷ 
ñ 
 ð 
¨ñ 
r   c                óæ  € \        V 4      ;_uu_ 4       pVR J;'       d´    VP                  \        P                  8H  ;'       d�    VP                  \
        P                  8H  ;'       dj    VP                  \        P                  8H  ;'       dE    VP                  \        ,          \        8H  ;'       d    VP                  \        ,          \        8H   uuR R R 4       #   + '       g   i     R # ; i©N)r   Úcapacityr   ÚC32Úencodingr	   ÚLsbÚmachiner   ÚArmÚflagsÚEF_ARM_ABIMASKÚEF_ARM_ABI_VER5ÚEF_ARM_ABI_FLOAT_HARD©r    r   s   & r   Ú_is_linux_armhfr/   (   sÂ   € ô 
�J×	Ô	 1à�TˆM÷ Ið IØ—
‘
œgŸk™kÑ)÷Ið Ià—
‘
œfŸj™jÑ(÷Ið Ið —	‘	œXŸ\™\Ñ)÷Ið Ið —‘œ.Õ(¬OÑ;÷	Ið Ið
 —‘Ô/Õ/Ô3HÑHð	
÷ 
 ×	×	Ó	ús#   ”0CÁ$CÁ*$CÂ%CÂ5CÃC0	c               ó    € V ^8„  d   QhRRRR/# r   r   )r   s   "r   r   r   7   s   € ÷ 
ñ 
˜sð 
 tñ 
r   c                óN  € \        V 4      ;_uu_ 4       pVR J;'       dh    VP                  \        P                  8H  ;'       dC    VP                  \
        P                  8H  ;'       d    VP                  \        P                  8H   uuR R R 4       #   + '       g   i     R # ; ir#   )
r   r$   r   r%   r&   r	   r'   r(   r   ÚI386r.   s   & r   Ú_is_linux_i686r3   7   sz   € Ü	�J×	Ô	 1à�TˆM÷ +ð +Ø—
‘
œgŸk™kÑ)÷+ð +à—
‘
œfŸj™jÑ(÷+ð +ð —	‘	œXŸ]™]Ñ*ð		
÷ 
 ×	×	Ó	ús   ”0BÁ$BÁ*BÂB$	c               ó$   € V ^8„  d   QhRRRRRR/# )r   r    r   ÚarchsúSequence[str]r   r!   r   )r   s   "r   r   r   A   s!   € ÷ 9ñ 9 Sð 9°ð 9À4ñ 9r   c                ó²   € R V9   d   \        V 4      # RV9   d   \        V 4      # \        ;QJ d    R V 4       F  '       g   K   R# 	  R# ! R V 4       4      # )Úarmv7lÚi686c              3  ó2   "  € T F  q\         9   x € K  	  R # 5ir#   )Ú_ALLOWED_ARCHS)Ú.0Úarchs   & r   Ú	<genexpr>Ú'_have_compatible_abi.<locals>.<genexpr>F   s   é € Ð8±%¨$”~Ö%³%ùs   ‚TF)r/   r3   Úany)r    r5   s   &&r   Ú_have_compatible_abirA   A   sP   € Ø�5ÔÜ˜zÓ*Ð*Ø�„Ü˜jÓ)Ð)ß‹3Ñ8±%Ó8�3Œ3Ð8Š3Ð8ˆ3Ñ8±%Ó8Ó8Ð8r   c                 ó   € ^2# )é2   r   r   r   r   Ú<lambda>rD   N   s   € ÁBr   zdict[int, int]Ú_LAST_GLIBC_MINORc                  ó,   € ] tR t^Qt$ R]R&   R]R&   RtR# )Ú_GLibCVersionÚintÚmajorÚminorr   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__Ú__static_attributes__r   r   r   rG   rG   Q   s   ‡ ØƒJØ‡Jr   rG   c               ó   € V ^8„  d   QhRR/# ©r   r   z
str | Noner   )r   s   "r   r   r   V   s   € ÷ ñ  zñ r   c                 ó¨   €  \         P                  ! R4      p V f   Q hV P                  4       w  rV#   \        \        \
        \        3 d     R# i ; i)zB
Primary implementation of glibc_version_string using os.confstr.
ÚCS_GNU_LIBC_VERSIONN)ÚosÚconfstrÚrsplitÚAssertionErrorÚAttributeErrorr   r   )Úversion_stringÚ_Úversions      r   Ú_glibc_version_string_confstrr]   V   sV   € ðä%'§Z¢ZÐ0EÓ%FˆØÒ)Ð)Ð)Ø#×*Ñ*Ó,‰
ˆð €Nøô œN¬G´ZÐ@ô âðús   ‚.2 ²AÁAc               ó   € V ^8„  d   QhRR/# rR   r   )r   s   "r   r   r   i   s   € ÷ )ñ ) jñ )r   c                 ó8  €  ^ RI p  T P                  R4      p TP                  pT P                  Tn        T! 4       p\        T\        4      '       g   TP                  R4      pT#   \         d     R# i ; i  \         d     R# i ; i  \
         d     R# i ; i)z?
Fallback implementation of glibc_version_string using ctypes.
NÚascii)ÚctypesÚImportErrorÚCDLLr   Úgnu_get_libc_versionrY   Úc_char_pÚrestypeÚ
isinstancer   Údecode)ra   Úprocess_namespacerd   Úversion_strs       r   Ú_glibc_version_string_ctypesrk   i   s¦   € ðÛð"Ø"ŸK™K¨Ó-ÐðØ0×EÑEÐð $*§?¡?ÐÔ Ù+Ó-€Kä�k¤3×'Ò'Ø!×(Ñ(¨Ó1ˆàÐøôG ô Úðûô$ ô Úðûô
 ô ò ðús3   ‚A& ‡A8 ™B
 Á&A5Á4A5Á8BÂBÂ
BÂBc               ó   € V ^8„  d   QhRR/# rR   r   )r   s   "r   r   r   •   s   € ÷ Mñ M˜zñ Mr   c                 ó:   € \        4       ;'       g    \        4       # )z9Returns glibc version string, or None if not using glibc.)r]   rk   r   r   r   Ú_glibc_version_stringrn   •   s   € ä(Ó*×LÐLÔ.JÓ.LÐLr   c               ó    € V ^8„  d   QhRRRR/# )r   rj   r   r   rG   r   )r   s   "r   r   r   š   s   € ÷ Gñ G cð G¨mñ Gr   c                ó  € \         P                  ! RV 4      pV'       g-   \        P                  ! RV  2\        ^R7       \        RR4      # \        \        VP                  R4      4      \        VP                  R4      4      4      # )a  Parse glibc version.

We use a regexp instead of str.split because we want to discard any
random junk that might come after the minor version -- this might happen
in patched/forked versions of glibc (e.g. Linaro's version of glibc
uses version strings like "2.20-2014.11"). See gh-3588.
z$(?P<major>[0-9]+)\.(?P<minor>[0-9]+)z;Expected glibc version with 2 components major.minor, got: )Ú
stacklevelrI   rJ   éÿÿÿÿ)ÚreÚmatchÚwarningsÚwarnÚRuntimeWarningrG   rH   Úgroup)rj   Úms   & r   Ú_parse_glibc_versionrz   š   sl   € ô 	�ŠÐ8¸+ÓF€AßÜ�ŠØIÈ+ÈÐWÜØõ	
ô
 ˜R Ó$Ð$Üœ˜QŸW™W WÓ-Ó.´°A·G±G¸GÓ4DÓ0EÓFÐFr   c               ó   € V ^8„  d   QhRR/# )r   r   rG   r   )r   s   "r   r   r   ®   s   € ÷ -ñ -˜Mñ -r   c                 óL   € \        4       p V f   \        RR4      # \        V 4      # )Nrr   )rn   rG   rz   )rj   s    r   Ú_get_glibc_versionr}   ­   s(   € ä'Ó)€KØÒÜ˜R Ó$Ð$Ü Ó,Ð,r   c               ó$   € V ^8„  d   QhRRRRRR/# )r   r=   r   r\   rG   r   r!   r   )r   s   "r   r   r   ¶   s!   € ÷ ñ ˜ð  }ð ¸ñ r   c                ó0  € \        4       pW!8  d   R #  ^ RIp\        TR4      '       d3   TP	                  T^ ,          T^,          T 4      pTe   \        T4      # R# T\        ^^4      8X  d(   \        TR4      '       d   \        TP                  4      # T\        ^^4      8X  d(   \        TR4      '       d   \        TP                  4      # T\        ^^4      8X  d(   \        TR4      '       d   \        TP                  4      # R#   \         d     R# i ; i)FNTÚmanylinux_compatibleÚmanylinux1_compatibleÚmanylinux2010_compatibleÚmanylinux2014_compatible)
r}   Ú
_manylinuxrb   Úhasattrr€   r!   rG   r�   r‚   rƒ   )r=   r\   Ú	sys_glibcr„   Úresults   &&   r   Ú_is_compatiblerˆ   ¶   s  € Ü"Ó$€IØÔÙðÛô ˆzÐ1×2Ò2Ø×0Ñ0°¸µ¸WÀQ½ZÈÓNˆØÒÜ˜“<ÐÙØ”-  1Ó%Ô%¬'°*Ð>U×*VÒ*VÜ�J×4Ñ4Ó5Ð5Ø”-  2Ó&Ô&¬7ØÐ.÷,ò ,ô �J×7Ñ7Ó8Ð8Ø”-  2Ó&Ô&¬7ØÐ.÷,ò ,ô �J×7Ñ7Ó8Ð8Ùøô# ô Úðús   ”D ÄDÄDÚmanylinux2014Úmanylinux2010Ú
manylinux1zdict[_GLibCVersion, str]Ú_LEGACY_MANYLINUX_MAPc               ó    € V ^8„  d   QhRRRR/# )r   r5   r6   r   zIterator[str]r   )r   s   "r   r   r   Û   s   € ÷ +5ñ +5˜ð +5¨=ñ +5r   c              #  óú  "  € \        \        P                  V 4      '       g   R# \        ^^4      p\	        V 4      RR0,          '       d   \        ^^4      p\        \        4       !  pV.p\        VP                  ^,
          ^R4       F*  p\        V,          pVP                  \        WE4      4       K,  	  V  F¼  pV F³  pVP                  VP                  8X  d   VP                  pMRp\        VP                  VR4       Fk  p\        VP                  V4      p	\        Wi4      '       g   K,  RP                  ! . V	OVN5!  x € \        P                  V	4      ;p
'       g   Kb  V
 RV 2x € Km  	  Kµ  	  K¾  	  R# 5i)aª  Generate manylinux tags compatible to the current platform.

:param archs: Sequence of compatible architectures.
    The first one shall be the closest to the actual architecture and be the part of
    platform tag after the ``linux_`` prefix, e.g. ``x86_64``.
    The ``linux_`` prefix is assumed as a prerequisite for the current platform to
    be manylinux-compatible.

:returns: An iterator of compatible manylinux tags.
NÚx86_64r9   zmanylinux_{}_{}_{}r[   rr   )rA   Úsysr    rG   Úsetr}   ÚrangerI   rE   ÚappendrJ   rˆ   r   rŒ   Úget)r5   Útoo_old_glibc2Úcurrent_glibcÚglibc_max_listÚglibc_majorÚglibc_minorr=   Ú	glibc_maxÚ	min_minorÚglibc_versionÚ
legacy_tags   &          r   Úplatform_tagsrž   Û   sK  é € ô  ¤§¡°×6Ò6Ùä" 1 bÓ)€NÜ
ˆ5ƒz�X˜vÐ&×&Ô&ä& q¨!Ó,ˆÜ!Ô#5Ó#7Ñ8€MØ#�_€Nô ˜]×0Ñ0°1Õ4°a¸Ö<ˆÜ'¨Õ4ˆØ×Ñœm¨KÓEÖFñ =ó ˆÛ'ˆIØ�‰ .×"6Ñ"6Ô6Ø*×0Ñ0‘	ð �	Ü$ Y§_¡_°iÀÖD�Ü -¨i¯o©o¸{Ó K�Ü! $×6Ô6Ø.×5Ò5ÐK°}ÐKÀdÓKÒKô &;×%>Ñ%>¸}Ó%MÐM�z×MÐMØ!+ ¨A¨d¨VÐ4Ô4ó  Eó (ó ùs   ‚D'E;Ä.1E;Å$E;>   Úppc64Ús390xr�   Úaarch64Úppc64leÚriscv64Úloongarch64)*Ú__conditional_annotations__Ú
__future__r   ÚcollectionsÚ
contextlibÚ	functoolsrU   rs   r�   ru   Útypingr   r   r   r   Ú_elffiler   r	   r
   r   r+   r,   r-   r;   Úcontextmanagerr   r/   r3   rA   ÚdefaultdictrE   rO   rG   r]   rk   rn   rz   Ú	lru_cacher}   rˆ   rŒ   rž   )r¥   s   @r   Ú<module>r¯      s  øðß "Ð "ã Û Û Û 	Û 	Û 
Û ß <Ó <ç 8Ó 8à€Ø€Ø"Ð ò€ð ×Ñôó ðõ
õ
õ9ð %0×$;Ò$;¹JÓ$GÐ �>Ó Gô�Jô õ
õ&)õXMõ
Gð& ×Ñô-ó ð-õñ: �!�RÓ˜/á�!�RÓ˜/á�!�QÓ˜ð3Ð Ð/ó ÷+5r   