§
    
Á³gà,  ã                   ó  — U 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	m
Z
mZmZmZ  G d„ d¦  «        Zdee         fd„Zdefd„Zdefd„Zd	edefd
„Z e j        d„ ¦  «        Ze	eef         ed<    G d„ de¦  «        Zdee         fd„Zdee         fd„Zdee         fd„Zdedeeef         fd„Z ej        ¦   «         deeef         fd„¦   «         Zded	ededefd„Z ddddœZ!ded	ede
e         fd„Z"dS )é    N)ÚIOÚDictÚIteratorÚ
NamedTupleÚOptionalÚTuplec                   óv   — e Zd Z G d„ de¦  «        ZdZdZdZdZdZ	dZ
dZdZd	Zd
ZdZdZdee         ddfd„ZdS )Ú_ELFFileHeaderc                   ó   — e Zd ZdZdS )ú$_ELFFileHeader._InvalidELFFileHeaderz7
        An invalid ELF file header was found.
        N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    ú^/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pip/_vendor/packaging/_manylinux.pyÚ_InvalidELFFileHeaderr      s   € € € € € ð	ð 	ð 	ð 	r   r   iFLEé   é   é   é   é(   é>   l      ~ i   i   ÚfileÚreturnNc                 ón  ‡— dt           dt          fˆfd„} |d¦  «        | _        | j        | j        k    rt                               ¦   «         ‚ |d¦  «        | _        | j        | j        | j        hvrt                               ¦   «         ‚ |d¦  «        | _	        | j	        | j
        | j        hvrt                               ¦   «         ‚ |d¦  «        | _         |d¦  «        | _         |d¦  «        | _        ‰                     d¦  «        | _        | j	        | j
        k    rdnd}| j	        | j
        k    rd	nd}| j	        | j
        k    rd
nd}| j        | j        k    r|n|} ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _         ||¦  «        | _        d S )NÚfmtr   c                 óè   •— 	 ‰                      t          j        | ¦  «        ¦  «        }t          j        | |¦  «        }n,# t          j        $ r t
                               ¦   «         ‚w xY w|d         S )Nr   )ÚreadÚstructÚcalcsizeÚunpackÚerrorr
   r   )r   ÚdataÚresultr   s      €r   r#   z'_ELFFileHeader.__init__.<locals>.unpack$   so   ø€ ð=Ø—y’y¥¤°Ñ!5Ô!5Ñ6Ô6�Ý*0¬-¸¸TÑ*BÔ*B��øÝ”<ð =ð =ð =Ý$×:Ò:Ñ<Ô<Ð<ð=øøøà˜!”9Ðs   ƒ<A  Á )A)z>IÚBé   z<Hz>Hz<Iz<Qz>Q)ÚstrÚintÚe_ident_magicÚELF_MAGIC_NUMBERr
   r   Úe_ident_classÚ
ELFCLASS32Ú
ELFCLASS64Úe_ident_dataÚELFDATA2LSBÚELFDATA2MSBÚe_ident_versionÚe_ident_osabiÚe_ident_abiversionr    Úe_ident_padÚe_typeÚ	e_machineÚ	e_versionÚe_entryÚe_phoffÚe_shoffÚe_flagsÚe_ehsizeÚe_phentsizeÚe_phnumÚe_shentsizeÚe_shnumÚ
e_shstrndx)Úselfr   r#   Úformat_hÚformat_iÚformat_qÚformat_ps    `     r   Ú__init__z_ELFFileHeader.__init__#   s`  ø€ ð	�ð 	¥ð 	ð 	ð 	ð 	ð 	ð 	ð $˜V D™\œ\ˆÔØÔ Ô!6Ò6Ð6Ý ×6Ò6Ñ8Ô8Ð8Ø#˜V C™[œ[ˆÔØÔ d¤o°t´Ð%GÐGÐGÝ ×6Ò6Ñ8Ô8Ð8Ø"˜F 3™KœKˆÔØÔ TÔ%5°tÔ7GÐ$HÐHÐHÝ ×6Ò6Ñ8Ô8Ð8Ø%˜v c™{œ{ˆÔØ#˜V C™[œ[ˆÔØ"( &¨¡+¤+ˆÔØŸ9š9 Q™<œ<ˆÔØÔ,°Ô0@Ò@Ð@�4�4ÀdˆØÔ,°Ô0@Ò@Ð@�4�4ÀdˆØÔ,°Ô0@Ò@Ð@�4�4ÀdˆØ#Ô1°T´_ÒDÐD�8�8È(ˆØ�f˜XÑ&Ô&ˆŒØ˜ Ñ)Ô)ˆŒØ˜ Ñ)Ô)ˆŒØ�v˜hÑ'Ô'ˆŒØ�v˜hÑ'Ô'ˆŒØ�v˜hÑ'Ô'ˆŒØ�v˜hÑ'Ô'ˆŒØ˜˜xÑ(Ô(ˆŒØ!˜6 (Ñ+Ô+ˆÔØ�v˜hÑ'Ô'ˆŒØ!˜6 (Ñ+Ô+ˆÔØ�v˜hÑ'Ô'ˆŒØ ˜& Ñ*Ô*ˆŒˆˆr   )r   r   r   Ú
ValueErrorr   r,   r.   r/   r1   r2   ÚEM_386ÚEM_S390ÚEM_ARMÚ	EM_X86_64ÚEF_ARM_ABIMASKÚEF_ARM_ABI_VER5ÚEF_ARM_ABI_FLOAT_HARDr   ÚbytesrI   r   r   r   r
   r
      s¤   € € € € € ðð ð ð ð  
ñ ô ð ð
 "ÐØ€JØ€JØ€KØ€KØ€FØ€GØ€FØ€IØ€NØ €OØ&Ðð&+˜R œYð &+¨4ð &+ð &+ð &+ð &+ð &+ð &+r   r
   r   c                  óÒ   — 	 t          t          j        d¦  «        5 } t          | ¦  «        }d d d ¦  «         n# 1 swxY w Y   n## t          t
          t          j        f$ r Y d S w xY w|S )NÚrb)ÚopenÚsysÚ
executabler
   ÚOSErrorÚ	TypeErrorr   )ÚfÚ
elf_headers     r   Ú_get_elf_headerr\   L   s«   € ðÝ•#”. $Ñ'Ô'ð 	+¨1Ý'¨Ñ*Ô*ˆJð	+ð 	+ð 	+ñ 	+ô 	+ð 	+ð 	+ð 	+ð 	+ð 	+ð 	+øøøð 	+ð 	+ð 	+ð 	+øøå•Y¥Ô DÐEð ð ð ØˆtˆtðøøøàÐs-   ‚A œ8¬A ¸<¼A ¿<Á A ÁA$Á#A$c                  ó  — t          ¦   «         } | €dS | j        | j        k    }|| j        | j        k    z  }|| j        | j        k    z  }|| j        | j        z  | j	        k    z  }|| j        | j
        z  | j
        k    z  }|S ©NF)r\   r-   r.   r0   r1   r8   rM   r=   rO   rP   rQ   ©r[   r&   s     r   Ú_is_linux_armhfr`   U   s£   € õ !Ñ"Ô"€JØÐØˆuØÔ%¨Ô)>Ò>€FØ
ˆjÔ%¨Ô)?Ò?Ñ?€FØ
ˆjÔ" jÔ&7Ò7Ñ7€FØ
ØÔ˜ZÔ6Ñ6Ø	Ô	#ò$ñ $€Fð ØÔ˜ZÔ=Ñ=Ø	Ô	)ò*ñ *€Fð €Mr   c                  ó–   — t          ¦   «         } | €dS | j        | j        k    }|| j        | j        k    z  }|| j        | j        k    z  }|S r^   )r\   r-   r.   r0   r1   r8   rK   r_   s     r   Ú_is_linux_i686rb   h   sW   € Ý Ñ"Ô"€JØÐØˆuØÔ%¨Ô)>Ò>€FØ
ˆjÔ%¨Ô)?Ò?Ñ?€FØ
ˆjÔ" jÔ&7Ò7Ñ7€FØ€Mr   Úarchc                 óZ   — | dk    rt          ¦   «         S | dk    rt          ¦   «         S | dv S )NÚarmv7lÚi686>   Úppc64Ús390xÚx86_64Úaarch64Úppc64le)r`   rb   )rc   s    r   Ú_have_compatible_abirl   r   s:   € ØˆxÒÐÝÑ Ô Ð Øˆv‚~€~ÝÑÔÐØÐEÐEÐEr   c                  ó   — dS )Né2   r   r   r   r   ú<lambda>ro      s   € ÀB€ r   Ú_LAST_GLIBC_MINORc                   ó$   — e Zd ZU eed<   eed<   dS )Ú_GLibCVersionÚmajorÚminorN)r   r   r   r*   Ú__annotations__r   r   r   rr   rr   ‚   s"   € € € € € € Ø€J€J�JØ€J€J�J€J€Jr   rr   c                  ó°   — 	 t          j        d¦  «        } | €J ‚|                      ¦   «         \  }}n$# t          t          t
          t          f$ r Y dS w xY w|S )zJ
    Primary implementation of glibc_version_string using os.confstr.
    ÚCS_GNU_LIBC_VERSIONN)ÚosÚconfstrÚsplitÚAssertionErrorÚAttributeErrorrX   rJ   )Úversion_stringÚ_Úversions      r   Ú_glibc_version_string_confstrr€   ‡   sl   € ðåœÐ$9Ñ:Ô:ˆØÐ)Ð)Ð)Ø#×)Ò)Ñ+Ô+‰
ˆˆ7ˆ7øÝ�N­GµZÐ@ð ð ð àˆtˆtðøøøð €Ns   ‚/2 ²AÁAc                  ó8  — 	 ddl } n# t          $ r Y dS w xY w	 |                      d¦  «        }n# t          $ r Y dS w xY w	 |j        }n# t
          $ r Y dS w xY w| j        |_         |¦   «         }t          |t          ¦  «        s| 
                    d¦  «        }|S )zG
    Fallback implementation of glibc_version_string using ctypes.
    r   NÚascii)ÚctypesÚImportErrorÚCDLLrX   Úgnu_get_libc_versionr|   Úc_char_pÚrestypeÚ
isinstancer)   Údecode)rƒ   Úprocess_namespacer†   Úversion_strs       r   Ú_glibc_version_string_ctypesr�   š   së   € ðØˆˆˆˆøÝð ð ð Øˆtˆtðøøøð Ø"ŸKšK¨Ñ-Ô-ÐÐøÝð ð ð ØˆtˆtðøøøðØ0ÔEÐÐøÝð ð ð ð ˆtˆtðøøøð $*¤?ÐÔ Ø+Ð+Ñ-Ô-€Kå�k¥3Ñ'Ô'ð 2Ø!×(Ò(¨Ñ1Ô1ˆàÐs*   ‚ ‡
”™/ ¯
=¼=ÁA	 Á	
AÁAc                  ó:   — t          ¦   «         pt          ¦   «         S )z9Returns glibc version string, or None if not using glibc.)r€   r�   r   r   r   Ú_glibc_version_stringr�   Æ   s   € å(Ñ*Ô*ÐLÕ.JÑ.LÔ.LÐLr   rŒ   c                 óö   — t          j        d| ¦  «        }|st          j        d| z  t          ¦  «         dS t          |                     d¦  «        ¦  «        t          |                     d¦  «        ¦  «        f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: %s©éÿÿÿÿr’   rs   rt   )ÚreÚmatchÚwarningsÚwarnÚRuntimeWarningr*   Úgroup)rŒ   Úms     r   Ú_parse_glibc_versionrš   Ë   s|   € õ 	ŒÐ8¸+ÑFÔF€AØð ÝŒðØ$ñ%åñ	
ô 	
ð 	
ð
 ˆvÝˆq�wŠw�wÑÔÑ Ô ¥# a§g¢g¨gÑ&6Ô&6Ñ"7Ô"7Ð7Ð7r   c                  óD   — t          ¦   «         } | €dS t          | ¦  «        S )Nr‘   )r�   rš   )rŒ   s    r   Ú_get_glibc_versionrœ   Þ   s&   € å'Ñ)Ô)€KØÐØˆxÝ Ñ,Ô,Ð,r   Únamer   c                 ó<  — t          ¦   «         }||k     rdS 	 dd l}n# t          $ r Y dS w xY wt          |d¦  «        r6|                     |d         |d         |¦  «        }|�t          |¦  «        S dS |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 dS )NFr   TÚmanylinux_compatibler   r   é   Úmanylinux1_compatibleé   Úmanylinux2010_compatibleé   Úmanylinux2014_compatible)
rœ   Ú
_manylinuxr„   ÚhasattrrŸ   Úboolrr   r¡   r£   r¥   )r�   rc   r   Ú	sys_glibcr¦   r&   s         r   Ú_is_compatiblerª   ç   sL  € Ý"Ñ$Ô$€IØ�7ÒÐØˆuðØÐÐÐÐøÝð ð ð ØˆtˆtðøøøåˆzÐ1Ñ2Ô2ð Ø×0Ò0°¸´¸WÀQ¼ZÈÑNÔNˆØÐÝ˜‘<”<ÐØˆtØ•-  1Ñ%Ô%Ò%Ð%Ý�:Ð6Ñ7Ô7ð 	:Ý˜
Ô8Ñ9Ô9Ð9Ø•-  2Ñ&Ô&Ò&Ð&Ý�:Ð9Ñ:Ô:ð 	=Ý˜
Ô;Ñ<Ô<Ð<Ø•-  2Ñ&Ô&Ò&Ð&Ý�:Ð9Ñ:Ô:ð 	=Ý˜
Ô;Ñ<Ô<Ð<Øˆ4s   ˜ �
+ª+Úmanylinux2014Úmanylinux2010Ú
manylinux1))r   r¤   )r   r¢   )r   r    Úlinuxc              #   óº  K  — t          |¦  «        sd S t          dd¦  «        }|dv rt          dd¦  «        }t          t          ¦   «         Ž }|g}t          |j        dz
  dd¦  «        D ]2}t
          |         }|                     t          ||¦  «        ¦  «         Œ3|D ]¼}|j        |j        k    r|j        }nd}t          |j        |d¦  «        D ]‰}t          |j        |¦  «        }	 dj        |	Ž }
t          |
||	¦  «        r|  
                    d|
¦  «        V — |	t          v r6t          |	         }t          |||	¦  «        r|  
                    d|¦  «        V — ŒŠŒ½d S )	Nr   é   >   rf   ri   é   r   r’   zmanylinux_{}_{}r®   )rl   rr   rœ   Úrangers   rp   Úappendrt   Úformatrª   ÚreplaceÚ_LEGACY_MANYLINUX_MAP)r®   rc   Útoo_old_glibc2Úcurrent_glibcÚglibc_max_listÚglibc_majorÚglibc_minorÚ	glibc_maxÚ	min_minorÚglibc_versionÚtagÚ
legacy_tags               r   Úplatform_tagsrÁ     sŸ  è è € Ý Ñ%Ô%ð Øˆå" 1 bÑ)Ô)€NØÐ!Ð!Ð!å& q¨!Ñ,Ô,ˆÝ!Õ#5Ñ#7Ô#7Ð8€MØ#�_€Nõ ˜]Ô0°1Ñ4°a¸Ñ<Ô<ð Gð GˆÝ'¨Ô4ˆØ×Ò�m¨K¸ÑEÔEÑFÔFÐFÐFØ#ð =ð =ˆ	ØŒ?˜nÔ2Ò2Ð2Ø&Ô,ˆIˆIð ˆIÝ  ¤°)¸RÑ@Ô@ð 		=ð 		=ˆKÝ)¨)¬/¸;ÑGÔGˆMØ*Ð#Ô*¨MÐ:ˆCÝ˜c 4¨Ñ7Ô7ð 2Ø—m’m G¨SÑ1Ô1Ð1Ð1Ð1àÕ 5Ð5Ð5Ý2°=ÔA�
Ý! *¨d°MÑBÔBð =ØŸ-š-¨°Ñ<Ô<Ð<Ð<Ð<øð		=ð=ð =r   )#ÚcollectionsÚ	functoolsrx   r“   r!   rV   r•   Útypingr   r   r   r   r   r   r
   r\   r¨   r`   rb   r)   rl   Údefaultdictrp   r*   ru   rr   r€   r�   r�   rš   Ú	lru_cacherœ   rª   r¶   rÁ   r   r   r   ú<module>rÇ      s¿  ðØ Ð Ð Ð Ð Ø Ð Ð Ð Ø 	€	€	€	Ø 	€	€	€	Ø €€€Ø 
€
€
€
Ø €€€Ø BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ Bð:+ð :+ð :+ð :+ð :+ñ :+ô :+ð :+ðz˜ .Ô1ð ð ð ð ð˜ð ð ð ð ð&˜ð ð ð ð ðF˜sð F tð Fð Fð Fð Fð %< KÔ$;¸J¸JÑ$GÔ$GÐ �4˜˜S˜”>Ð GÐ GÑ Gðð ð ð ð �Jñ ô ð ð
 x°¤}ð ð ð ð ð&) h¨s¤mð )ð )ð )ð )ðXM˜x¨œ}ð Mð Mð Mð Mð
8 cð 8¨e°C¸°H¬oð 8ð 8ð 8ð 8ð& €ÔÑÔð-˜E # s (œOð -ð -ð -ñ Ôð-ð˜ð  Cð °-ð ÀDð ð ð ð ð8 ààðð Ð ð"=˜ð "= Cð "=¨H°S¬Mð "=ð "=ð "=ð "=ð "=ð "=r   