+
    ®¾j|%  ã                  ó¤  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]P.                  R R	 l4       tR
 R ltR R ltR R lt]P8                  ! 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#]PH                  R R l4       t%R R  lt&R&R!R'R"R(R#/t'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   "Ú_/home/ralf/ical-fahrzeuge/venv/lib/python3.14/site-packages/pip/_vendor/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   -   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   -   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   7   s!   € ÷ 8ñ 8 Sð 8°ð 8À4ñ 8r   c                óÈ   a€ R V9   d   \        V 4      # RV9   d   \        V 4      # 0 Rmo\        ;QJ d    V3R lV 4       F  '       g   K   R# 	  R# ! V3R lV 4       4      # )Úarmv7lÚi686c              3  ó,   <"  € T F	  qS9   x € K  	  R # 5ir#   r   )Ú.0ÚarchÚallowed_archss   & €r   Ú	<genexpr>Ú'_have_compatible_abi.<locals>.<genexpr>E   s   øé € Ð7±¨�}Ö$³ùs   ƒTF>   Úppc64Ús390xÚx86_64Úaarch64Úppc64leÚriscv64Úloongarch64)r/   r3   Úany)r    r5   r=   s   &&@r   Ú_have_compatible_abirH   7   sZ   ø€ Ø�5ÔÜ˜zÓ*Ð*Ø�„Ü˜jÓ)Ð)ò€M÷ ‹3Ô7±Ó7�3Œ3Ð7Š3Ð7ˆ3Ô7±Ó7Ó7Ð7r   c                 ó   € ^2# )é2   r   r   r   r   Ú<lambda>rK   M   s   € ÁBr   zdict[int, int]Ú_LAST_GLIBC_MINORc                  ó,   € ] tR t^Pt$ R]R&   R]R&   RtR# )Ú_GLibCVersionÚintÚmajorÚminorr   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__Ú__static_attributes__r   r   r   rN   rN   P   s   ‡ ØƒJØ‡Jr   rN   c               ó   € V ^8„  d   QhRR/# ©r   r   z
str | Noner   )r   s   "r   r   r   U   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_confstrrd   U   sV   € ðä%'§Z¢ZÐ0EÓ%FˆØÒ)Ð)Ð)Ø#×*Ñ*Ó,‰
ˆð €Nøô œN¬G´ZÐ@ô âðús   ‚.2 ²AÁAc               ó   € V ^8„  d   QhRR/# rY   r   )r   s   "r   r   r   h   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_versionr`   Úc_char_pÚrestypeÚ
isinstancer   Údecode)rh   Úprocess_namespacerk   Úversion_strs       r   Ú_glibc_version_string_ctypesrr   h   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/# rY   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.)rd   rr   r   r   r   Ú_glibc_version_stringru   ”   s   € ä(Ó*×LÐLÔ.JÓ.LÐLr   c               ó    € V ^8„  d   QhRRRR/# )r   rq   r   r   útuple[int, int]r   )r   s   "r   r   r   ™   s   € ÷ 8ñ 8 cð 8¨oñ 8r   c                óì   € \         P                  ! RV 4      pV'       g#   \        P                  ! RV  2\        ^R7       R# \        VP                  R4      4      \        VP                  R4      4      3# )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: )Ú
stacklevelrP   rQ   ©éÿÿÿÿr{   )ÚreÚmatchÚwarningsÚwarnÚRuntimeWarningrO   Úgroup)rq   Úms   & r   Ú_parse_glibc_versionrƒ   ™   sb   € ô 	�ŠÐ8¸+ÓF€AßÜ�ŠØIÈ+ÈÐWÜØõ	
ð
 ˆÜˆq�w‰w�wÓÓ ¤# a§g¡g¨gÓ&6Ó"7Ð7Ð7r   c               ó   € V ^8„  d   QhRR/# )r   r   rw   r   )r   s   "r   r   r   ­   s   € ÷ -ñ -˜Oñ -r   c                 ó8   € \        4       p V f   R# \        V 4      # )Nrz   )ru   rƒ   )rq   s    r   Ú_get_glibc_versionr†   ¬   s    € ä'Ó)€KØÒØˆÜ Ó,Ð,r   c               ó$   € V ^8„  d   QhRRRRRR/# )r   r<   r   rc   rN   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†   Ú
_manylinuxri   Úhasattrr‰   r!   rN   rŠ   r‹   rŒ   )r<   rc   Ú	sys_glibcr�   Úresults   &&   r   Ú_is_compatibler‘   µ   sû   € Ü"Ó$€IØÔÙðÛô ˆzÐ1×2Ò2Ø×0Ñ0°¸µ¸WÀQ½ZÈÓNˆØÒÜ˜“<ÐÙØ”-  1Ó%Ô%Ü�:Ð6×7Ò7Ü˜
×8Ñ8Ó9Ð9Ø”-  2Ó&Ô&Ü�:Ð9×:Ò:Ü˜
×;Ñ;Ó<Ð<Ø”-  2Ó&Ô&Ü�:Ð9×:Ò:Ü˜
×;Ñ;Ó<Ð<Ùøô! ô Úðús   ”D ÄDÄDÚmanylinux2014Úmanylinux2010Ú
manylinux1c               ó    € 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       Fy  p\        VP                  V4      p	RP                  ! V	!  p
\        Wi4      '       d
   V
 RV 2x € V	\        9   g   KP  \        V	,          p\        Wi4      '       g   Kp  V RV 2x € K{  	  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.
NrB   r9   zmanylinux_{}_{}rb   r{   )rH   Úsysr    rN   Úsetr†   ÚrangerP   rL   ÚappendrQ   r   r‘   Ú_LEGACY_MANYLINUX_MAP)r5   Útoo_old_glibc2Úcurrent_glibcÚglibc_max_listÚglibc_majorÚglibc_minorr<   Ú	glibc_maxÚ	min_minorÚglibc_versionÚtagÚ
legacy_tags   &           r   Úplatform_tagsr¦   Ù   sU  é € ô  ¤§¡°×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Ø ˜E  4 &˜/Ò)à Ô$9Ö9Ü!6°}Õ!E�JÜ% d×:Ô:Ø!+ ¨A¨d¨VÐ4Ô4ó  Eó (ó ùs   ‚EF	ÅF	Å2F	)r   é   )r   é   )r   é   ))Ú__conditional_annotations__Ú
__future__r   ÚcollectionsÚ
contextlibÚ	functoolsr\   r|   r—   r~   Útypingr   r   r   r   Ú_elffiler   r	   r
   r   r+   r,   r-   Úcontextmanagerr   r/   r3   rH   ÚdefaultdictrL   rV   rN   rd   rr   ru   rƒ   Ú	lru_cacher†   r‘   r›   r¦   )rª   s   @r   Ú<module>r´      sÝ   øðß "Ð "ã Û Û Û 	Û 	Û 
Û ß <Ó <ç 8Ó 8à€Ø€Ø"Ð ð
 ×Ñôó ðõ
õ
õ8ð, %0×$;Ò$;¹JÓ$GÐ �>Ó Gô�Jô õ
õ&)õXMõ
8ð& ×Ñô-ó ð-õð8 ˆ_àˆ_à
ˆLðÐ ÷-5r   