Ë
    ªŒj'  ã                  óø  — U d dl 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	m
Z
mZ ddlmZmZmZmZ e
rd dlZd dlmZmZmZ dZdZd	Zh d
£Zej4                  d&d„«       Zd'd„Zd'd„Zd(d„Z ej>                  d„ «      Z de!d<    G d„ de«      Z"d)d„Z#d)d„Z$d)d„Z%d*d„Z&ejN                  d+d„«       Z( ejN                  d¬«      d,d„«       Z)d-d„Z* e"dd«      d e"dd«      d  e"dd!«      d"iZ+d#e!d$<   d.d%„Z,y)/é    )ÚannotationsN)ÚTYPE_CHECKINGÚ
NamedTupleé   )ÚEIClassÚEIDataÚELFFileÚEMachine)Ú	GeneratorÚIteratorÚSequencel      ~ i   i   >   Úppc64Ús390xÚx86_64Úaarch64Úppc64leÚriscv64Úloongarch64c              #  ó¦   K  — 	 t        | d«      5 }t        |«      –— d d d «       y # 1 sw Y   y xY w# t        t        t        f$ r d –— Y y w xY w­w)NÚrb)Úopenr	   ÚOSErrorÚ	TypeErrorÚ
ValueError)ÚpathÚfs     ú^/var/www/html/Fitness-lenito-AI-main/venv/lib/python3.12/site-packages/packaging/_manylinux.pyÚ
_parse_elfr   !   sF   è ø€ ðÜ�$˜Ô Ü˜!“*Ò÷ ×Ñûä”Y¤
Ð+ò ØŒ
ðüs>   ‚A„3 �'ž3 ¦A§0¬3 ¯A°3 ³AÁAÁAÁAc                óx  — t        | «      5 }|d uxr“ |j                  t        j                  k(  xrt |j                  t
        j                  k(  xrU |j                  t        j                  k(  xr6 |j                  t        z  t        k(  xr |j                  t        z  t        k(  	 cd d d «       S # 1 sw Y   y xY w©N)r   Úcapacityr   ÚC32Úencodingr   ÚLsbÚmachiner
   ÚArmÚflagsÚEF_ARM_ABIMASKÚEF_ARM_ABI_VER5ÚEF_ARM_ABI_FLOAT_HARD©Ú
executabler   s     r   Ú_is_linux_armhfr-   *   sž   € ô 
�JÔ	 1à�TˆMò IØ—
‘
œgŸk™kÑ)òIà—
‘
œfŸj™jÑ(òIð —	‘	œXŸ\™\Ñ)òIð —‘œ.Ñ(¬OÑ;ò	Ið
 —‘Ô/Ñ/Ô3HÑHð	
÷ 
 ×	Ò	ús   ŒBB0Â0B9c                ó  — t        | «      5 }|d uxr[ |j                  t        j                  k(  xr< |j                  t
        j                  k(  xr |j                  t        j                  k(  	 cd d d «       S # 1 sw Y   y xY wr    )
r   r!   r   r"   r#   r   r$   r%   r
   ÚI386r+   s     r   Ú_is_linux_i686r0   9   se   € Ü	�JÔ	 1à�TˆMò +Ø—
‘
œgŸk™kÑ)ò+à—
‘
œfŸj™jÑ(ò+ð —	‘	œXŸ]™]Ñ*ð		
÷ 
 ×	Ò	ús   ŒA"A8Á8Bc                ób   — d|v rt        | «      S d|v rt        | «      S t        d„ |D «       «      S )NÚarmv7lÚi686c              3  ó,   K  — | ]  }|t         v –— Œ y ­wr    )Ú_ALLOWED_ARCHS)Ú.0Úarchs     r   Ú	<genexpr>z'_have_compatible_abi.<locals>.<genexpr>H   s   è ø€ Ð8±%¨$ˆt”~Ô%±%ùs   ‚)r-   r0   Úany)r,   Úarchss     r   Ú_have_compatible_abir;   C   s8   € Ø�5ÑÜ˜zÓ*Ð*Ø��Ü˜jÓ)Ð)ÜÑ8±%Ó8Ó8Ð8ó    c                  ó   — y)Né2   © r?   r<   r   Ú<lambda>r@   P   s   € ÀBr<   zdict[int, int]Ú_LAST_GLIBC_MINORc                  ó"   — e Zd ZU ded<   ded<   y)Ú_GLibCVersionÚintÚmajorÚminorN)Ú__name__Ú
__module__Ú__qualname__Ú__annotations__r?   r<   r   rC   rC   S   s   … ØƒJØ„Jr<   rC   c                 óž   — 	 t        j                  d«      } | €J ‚| j                  «       \  }}|S # t        t        t
        t        f$ r Y yw xY w)zJ
    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_confstrrU   X   sX   € ðä%'§Z¡ZÐ0EÓ%FˆØÐ)Ð)Ð)Ø#×*Ñ*Ó,‰
ˆˆ7ð €Nøô œN¬G´ZÐ@ò áðús   ‚,0 °AÁAc                 ó  — 	 ddl } 	 | j                  d«      }	 |j                  }| j                  |_         |«       }t        |t        «      r|j                  d«      }|S # t        $ r Y yw xY w# t        $ r Y yw xY w# t
        $ r Y yw xY w)zG
    Fallback implementation of glibc_version_string using ctypes.
    r   NÚascii)ÚctypesÚImportErrorÚCDLLr   Úgnu_get_libc_versionrQ   Úc_char_pÚrestypeÚ
isinstanceÚbytesÚdecode)rX   Úprocess_namespacer[   Úversion_strs       r   Ú_glibc_version_string_ctypesrc   k   s£   € ðÛð"Ø"ŸK™K¨Ó-ÐðØ0×EÑEÐð $*§?¡?ÐÔ á3Ó5€KÜ�+œuÔ%Ø!×(Ñ(¨Ó1ˆàÐøôG ò Ùðûô$ ò Ùðûô
 ò ñ ðús3   ‚A  ‡A/ ™A> Á 	A,Á+A,Á/	A;Á:A;Á>	B
Â	B
c                 ó.   — t        «       xs
 t        «       S )z9Returns glibc version string, or None if not using glibc.)rU   rc   r?   r<   r   Ú_glibc_version_stringre   —   s   € ä(Ó*ÒLÔ.JÓ.LÐLr<   c                ó   — t        j                  d| «      }|s+t        j                  d| › �t        d¬«       t        dd«      S t        t        |j                  d«      «      t        |j                  d«      «      «      S )a3  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: é   )Ú
stackleveléÿÿÿÿrE   rF   )ÚreÚmatchÚwarningsÚwarnÚRuntimeWarningrC   rD   Úgroup)rb   Úms     r   Ú_parse_glibc_versionrq   œ   sl   € ô 	�‰Ð8¸+ÓF€AÙÜ�‰ØIÈ+ÈÐWÜØõ	
ô
 ˜R Ó$Ð$Üœ˜QŸW™W WÓ-Ó.´°A·G±G¸GÓ4DÓ0EÓFÐFr<   c                 óH   — t        «       } | €t        dd«      S t        | «      S )Nri   )re   rC   rq   )rb   s    r   Ú_get_glibc_versionrs   ¯   s(   € ä'Ó)€KØÐÜ˜R Ó$Ð$Ü Ó,Ð,r<   )Úmaxsizec                 ó8   — 	 t        d«      S # t        $ r Y yw xY w)zÉReturn the ``_manylinux`` C extension module, or None if unavailable.

    The result is cached for the lifetime of the process, since the presence
    of the module does not change while running.
    Ú
_manylinuxN)Ú
__import__rY   r?   r<   r   Ú_get_manylinux_modulerx   ¸   s$   € ðÜ˜,Ó'Ð'øÜò Ùðús   ‚
 �	˜c                óÄ  — t        «       }||k  ryt        «       }|€yt        |d«      r'|j                  |d   |d   | «      }|�t	        |«      S y|t        dd«      k(  r!t        |d«      rt	        |j                  «      S |t        dd	«      k(  r!t        |d
«      rt	        |j                  «      S |t        dd«      k(  r!t        |d«      rt	        |j                  «      S y)NFTÚmanylinux_compatibler   r   rg   é   Úmanylinux1_compatibleé   Úmanylinux2010_compatibleé   Úmanylinux2014_compatible)	rs   rx   Úhasattrrz   ÚboolrC   r|   r~   r€   )r7   rT   Ú	sys_glibcÚmanylinux_modÚresults        r   Ú_is_compatibler†   Å   sð   € Ü"Ó$€IØ�7ÒØä)Ó+€MØÐØÜˆ}Ð4Ô5Ø×3Ñ3°G¸A±JÀÈÁ
ÈDÓQˆØÐÜ˜“<ÐØØ”-  1Ó%Ò%¬'ØÐ.ô+ô �M×7Ñ7Ó8Ð8Ø”-  2Ó&Ò&¬7ØÐ1ô,ô �M×:Ñ:Ó;Ð;Ø”-  2Ó&Ò&¬7ØÐ1ô,ô �M×:Ñ:Ó;Ð;Ør<   rg   r   Úmanylinux2014r}   Úmanylinux2010r{   Ú
manylinux1zdict[_GLibCVersion, str]Ú_LEGACY_MANYLINUX_MAPc              #  ó–  K  — t        t        j                  | «      syt        dd«      }t	        | «      ddhz  rt        dd«      }t        t        «       Ž }|g}t        |j                  dz
  dd«      D ]&  }t        |   }|j                  t        ||«      «       Œ( | D ]§  }|D ]   }|j                  |j                  k(  r|j                  }nd}t        |j                  |d«      D ]\  }t        |j                  |«      }	t        ||	«      sŒ& d	j                  g |	¢|‘­Ž –— t        j                  |	«      x}
sŒT|
› d
|› �–— Œ^ Œ¢ Œ© y­w)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.
    Nrg   é   r   r3   é   r   ri   zmanylinux_{}_{}_{}rS   )r;   Úsysr,   rC   Úsetrs   ÚrangerE   rA   ÚappendrF   r†   ÚformatrŠ   Úget)r:   Útoo_old_glibc2Úcurrent_glibcÚglibc_max_listÚglibc_majorÚglibc_minorr7   Ú	glibc_maxÚ	min_minorÚglibc_versionÚ
legacy_tags              r   Úplatform_tagsr�   ë   sG  è ø€ ô  ¤§¡°Ô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Ø5Ð.×5Ñ5ÐK°}ÐKÀdÒKÒKô &;×%>Ñ%>¸}Ó%MÐM�zÑMØ!+ ¨A¨d¨VÐ4Ó4ñ  Eñ (ñ ùs   ‚DE	Ä-E	Ä9E	)r   ÚstrÚreturnz%Generator[ELFFile | None, None, None])r,   rž   rŸ   r‚   )r,   rž   r:   úSequence[str]rŸ   r‚   )rŸ   z
str | None)rb   rž   rŸ   rC   )rŸ   rC   )rŸ   ztypes.ModuleType | None)r7   rž   rT   rC   rŸ   r‚   )r:   r    rŸ   zIterator[str])-Ú
__future__r   ÚcollectionsÚ
contextlibÚ	functoolsrM   rj   rŽ   rl   Útypingr   r   Ú_elffiler   r   r	   r
   ÚtypesÚcollections.abcr   r   r   r(   r)   r*   r5   Úcontextmanagerr   r-   r0   r;   ÚdefaultdictrA   rJ   rC   rU   rc   re   rq   Ú	lru_cachers   rx   r†   rŠ   r�   r?   r<   r   Ú<module>r¬      s*  ðÞ "ã Û Û Û 	Û 	Û 
Û ß ,ç 8Ó 8áÛß=Ñ=à€Ø€Ø"Ð ò€ð ×Ñòó ðó
ó
ó9ð %< K×$;Ñ$;¹JÓ$GÐ �>Ó Gô�Jô ó
ó&)óXMó
Gð& ×Ñò-ó ð-ð €×Ñ˜QÔò	ó  ð	óñ< �!�RÓ˜/á�!�RÓ˜/á�!�QÓ˜ð3Ð Ð/ó ô+5r<   