Ë
    äØjjI9  ã                   ó  — 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
mZ ddlmZmZmZmZ g d¢Zeeef   Zeee
eef   f   Zeeeef   Zeee
eee
eef   e
eef   f   df   f   Ze
ee
edf   eeeef   Ze
ee
edf   f   Zeeeef   eeef   gef   Z e j8                  dg d¢«      Zd	ed
ed   fd„Z G d„ de«      Z  G d„ d«      Z! G d„ de!«      Z" ejF                  dejH                  «      Z%ddddddœZ&ded
ee   fd„Z'd	ed
efd„Z(dZ) G d„ de!«      Z*dedeee+e	f   d
ee
eef      fd „Z, ejF                  d!«      Z-d"ed
ee   fd#„Z.d$ed%e
edf   d&ee
eef      d'ee
eef      d(ee
eef      d"ee
e      d
efd)„Z/y)*é    N)ÚCallableÚIteratorÚListÚOptionalÚSupportsIntÚTupleÚUnioné   )ÚInfinityÚInfinityTypeÚNegativeInfinityÚNegativeInfinityType)ÚparseÚVersionÚLegacyVersionÚInvalidVersionÚVERSION_PATTERN.Ú_Version)ÚepochÚreleaseÚdevÚpreÚpostÚlocalÚversionÚreturn)r   r   c                 óN   — 	 t        | «      S # t        $ r t        | «      cY S w xY w)zÑ
    Parse the given version string and return either a :class:`Version` object
    or a :class:`LegacyVersion` object depending on if the given version is
    a valid PEP 440 version or a legacy version.
    )r   r   r   )r   s    ú_/opt/eval-harness/bench_task/venv/lib/python3.12/site-packages/pip/_vendor/packaging/version.pyr   r   *   s,   € ð&Ü�wÓÐøÜò &Ü˜WÓ%Ò%ð&ús   ‚
 �$£$c                   ó   — e Zd ZdZy)r   zF
    An invalid version was found, users should refer to PEP 440.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    r   r   r   6   s   „ òr%   r   c                   óŽ   — e Zd ZU eeef   ed<   defd„Zdd de	fd„Z
dd de	fd„Zdede	fd„Zdd de	fd„Zdd de	fd	„Zdede	fd
„Zy)Ú_BaseVersionÚ_keyr   c                 ó,   — t        | j                  «      S ©N)Úhashr(   ©Úselfs    r   Ú__hash__z_BaseVersion.__hash__?   s   € Ü�D—I‘I‹Ðr%   Úotherc                 ó`   — t        |t        «      st        S | j                  |j                  k  S r*   ©Ú
isinstancer'   ÚNotImplementedr(   ©r-   r/   s     r   Ú__lt__z_BaseVersion.__lt__E   ó%   € Ü˜%¤Ô.Ü!Ð!à�y‰y˜5Ÿ:™:Ñ%Ð%r%   c                 ó`   — t        |t        «      st        S | j                  |j                  k  S r*   r1   r4   s     r   Ú__le__z_BaseVersion.__le__K   ó%   € Ü˜%¤Ô.Ü!Ð!à�y‰y˜EŸJ™JÑ&Ð&r%   c                 ó`   — t        |t        «      st        S | j                  |j                  k(  S r*   r1   r4   s     r   Ú__eq__z_BaseVersion.__eq__Q   r9   r%   c                 ó`   — t        |t        «      st        S | j                  |j                  k\  S r*   r1   r4   s     r   Ú__ge__z_BaseVersion.__ge__W   r9   r%   c                 ó`   — t        |t        «      st        S | j                  |j                  kD  S r*   r1   r4   s     r   Ú__gt__z_BaseVersion.__gt__]   r6   r%   c                 ó`   — t        |t        «      st        S | j                  |j                  k7  S r*   r1   r4   s     r   Ú__ne__z_BaseVersion.__ne__c   r9   r%   N)r    r!   r"   r	   ÚCmpKeyÚLegacyCmpKeyÚ__annotations__Úintr.   Úboolr5   r8   Úobjectr;   r=   r?   rA   r$   r%   r   r'   r'   <   s�   … Ø
�˜Ð$Ñ
%Ó%ð˜#ó ð&˜Nð &¨tó &ð'˜Nð '¨tó 'ð'˜Fð ' tó 'ð'˜Nð '¨tó 'ð&˜Nð &¨tó &ð'˜Fð ' tô 'r%   r'   c                   ó  — e Zd Zdeddfd„Zdefd„Zdefd„Zedefd„«       Zedefd„«       Z	ede
fd	„«       Zedd
„«       Zedd„«       Zedd„«       Zedd„«       Zedd„«       Zedefd„«       Zedefd„«       Zedefd„«       Zy)r   r   r   Nc                 óŒ   — t        |«      | _        t        | j                  «      | _        t	        j
                  dt        «       y )NzZCreating a LegacyVersion has been deprecated and will be removed in the next major release)ÚstrÚ_versionÚ_legacy_cmpkeyr(   ÚwarningsÚwarnÚDeprecationWarning)r-   r   s     r   Ú__init__zLegacyVersion.__init__k   s1   € Ü˜G›ˆŒÜ" 4§=¡=Ó1ˆŒ	ä�‰ð0äõ	
r%   c                 ó   — | j                   S r*   ©rK   r,   s    r   Ú__str__zLegacyVersion.__str__u   s   € Ø�}‰}Ðr%   c                 ó   — d| › d�S )Nz<LegacyVersion('ú')>r$   r,   s    r   Ú__repr__zLegacyVersion.__repr__x   s   € Ø! $  sÐ+Ð+r%   c                 ó   — | j                   S r*   rR   r,   s    r   ÚpubliczLegacyVersion.public{   ó   € à�}‰}Ðr%   c                 ó   — | j                   S r*   rR   r,   s    r   Úbase_versionzLegacyVersion.base_version   rY   r%   c                  ó   — y)Néÿÿÿÿr$   r,   s    r   r   zLegacyVersion.epochƒ   s   € àr%   c                  ó   — y r*   r$   r,   s    r   r   zLegacyVersion.release‡   ó   € àr%   c                  ó   — y r*   r$   r,   s    r   r   zLegacyVersion.pre‹   r_   r%   c                  ó   — y r*   r$   r,   s    r   r   zLegacyVersion.post�   r_   r%   c                  ó   — y r*   r$   r,   s    r   r   zLegacyVersion.dev“   r_   r%   c                  ó   — y r*   r$   r,   s    r   r   zLegacyVersion.local—   r_   r%   c                  ó   — y©NFr$   r,   s    r   Úis_prereleasezLegacyVersion.is_prerelease›   ó   € àr%   c                  ó   — yre   r$   r,   s    r   Úis_postreleasezLegacyVersion.is_postreleaseŸ   rg   r%   c                  ó   — yre   r$   r,   s    r   Úis_devreleasezLegacyVersion.is_devrelease£   rg   r%   )r   N)r    r!   r"   rJ   rP   rS   rV   ÚpropertyrX   r[   rE   r   r   r   r   r   r   rF   rf   ri   rk   r$   r%   r   r   r   j   s3  „ ð
 ð 
¨ó 
ð˜ó ð,˜#ó ,ð ð˜ò ó ðð ð˜cò ó ðð ð�sò ó ðð òó ðð òó ðð òó ðð òó ðð òó ðð ð˜tò ó ðð ð ò ó ðð ð˜tò ó ñr%   r   z(\d+ | [a-z]+ | \.| -)Úczfinal-ú@)r   Úpreviewú-Úrcr   Úsc              #   óÈ   K  — t         j                  | «      D ]B  }t        j                  ||«      }|r|dk(  rŒ!|d d dv r|j	                  d«      –— Œ<d|z   –— ŒD d–— y ­w)Nú.r
   Ú
0123456789é   Ú*ú*final)Ú_legacy_version_component_reÚsplitÚ_legacy_version_replacement_mapÚgetÚzfill)rr   Úparts     r   Ú_parse_version_partsr   ³   sk   è ø€ Ü,×2Ñ2°1Ó5ò 
ˆÜ.×2Ñ2°4¸Ó>ˆá�t˜s’{Øà��ˆ8�|Ñ#à—*‘*˜Q“-Óà˜‘*Óð
ð ƒNùs   ‚A A"c                 óB  — d}g }t        | j                  «       «      D ]s  }|j                  d«      rO|dk  r%|r#|d   dk(  r|j                  «        |r	|d   dk(  rŒ|r#|d   dk(  r|j                  «        |r	|d   dk(  rŒ|j	                  |«       Œu |t        |«      fS )Nr]   rw   rx   z*final-Ú00000000)r   ÚlowerÚ
startswithÚpopÚappendÚtuple)r   r   Úpartsr~   s       r   rL   rL   Ä   s¬   € ð €Eð €EÜ$ W§]¡]£_Ó5ò ˆØ�?‰?˜3Ôà�hŠÙ  b¡	¨YÒ 6Ø—I‘I”Kñ   b¡	¨YÓ 6ñ ˜E "™I¨Ò3Ø—	‘	”ñ ˜E "™I¨Ó3ð 	�‰�TÕðð ”%˜“,ÐÐr%   a—  
    v?
    (?:
        (?:(?P<epoch>[0-9]+)!)?                           # epoch
        (?P<release>[0-9]+(?:\.[0-9]+)*)                  # release segment
        (?P<pre>                                          # pre-release
            [-_\.]?
            (?P<pre_l>(a|b|c|rc|alpha|beta|pre|preview))
            [-_\.]?
            (?P<pre_n>[0-9]+)?
        )?
        (?P<post>                                         # post release
            (?:-(?P<post_n1>[0-9]+))
            |
            (?:
                [-_\.]?
                (?P<post_l>post|rev|r)
                [-_\.]?
                (?P<post_n2>[0-9]+)?
            )
        )?
        (?P<dev>                                          # dev release
            [-_\.]?
            (?P<dev_l>dev)
            [-_\.]?
            (?P<dev_n>[0-9]+)?
        )?
    )
    (?:\+(?P<local>[a-z0-9]+(?:[-_\.][a-z0-9]+)*))?       # local version
c                   óô  — e Zd Z ej                  dez   dz   ej                  ej                  z  «      Zde	ddfd„Z
de	fd„Zde	fd„Zedefd	„«       Zedeed
f   fd„«       Zedeee	ef      fd„«       Zedee   fd„«       Zedee   fd„«       Zedee	   fd„«       Zede	fd„«       Zede	fd„«       Zedefd„«       Zedefd„«       Zedefd„«       Zedefd„«       Zedefd„«       Zedefd„«       Zy)r   z^\s*z\s*$r   r   Nc                 óš  — | j                   j                  |«      }|st        d|› d�«      ‚t        |j	                  d«      rt        |j	                  d«      «      ndt        d„ |j	                  d«      j                  d«      D «       «      t        |j	                  d«      |j	                  d	«      «      t        |j	                  d
«      |j	                  d«      xs |j	                  d«      «      t        |j	                  d«      |j	                  d«      «      t        |j	                  d«      «      ¬«      | _
        t        | j                  j                  | j                  j                  | j                  j                  | j                  j                  | j                  j                   | j                  j"                  «      | _        y )NzInvalid version: 'ú'r   r   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr*   )rE   ©Ú.0Úis     r   ú	<genexpr>z#Version.__init__.<locals>.<genexpr>  s   è ø€ ÒL Qœ#˜aŸ&ÑLùó   ‚r   rt   Úpre_lÚpre_nÚpost_lÚpost_n1Úpost_n2Údev_lÚdev_nr   )r   r   r   r   r   r   )Ú_regexÚsearchr   r   ÚgrouprE   r†   rz   Ú_parse_letter_versionÚ_parse_local_versionrK   Ú_cmpkeyr   r   r   r   r   r   r(   )r-   r   Úmatchs      r   rP   zVersion.__init__  sR  € ð —‘×"Ñ" 7Ó+ˆÙÜ Ð#5°g°Y¸aÐ!@ÓAÐAô !Ø/4¯{©{¸7Ô/C”#�e—k‘k 'Ó*Ô+ÈÜÑL¨%¯+©+°iÓ*@×*FÑ*FÀsÓ*KÔLÓLÜ% e§k¡k°'Ó&:¸E¿K¹KÈÓ<PÓQÜ&Ø—‘˜HÓ% u§{¡{°9Ó'=Ò'WÀÇÁÈYÓAWóô & e§k¡k°'Ó&:¸E¿K¹KÈÓ<PÓQÜ& u§{¡{°7Ó';Ó<ô	
ˆŒô Ø�M‰M×ÑØ�M‰M×!Ñ!Ø�M‰M×ÑØ�M‰M×ÑØ�M‰M×ÑØ�M‰M×Ñó
ˆ�	r%   c                 ó   — d| › d�S )Nz
<Version('rU   r$   r,   s    r   rV   zVersion.__repr__"  s   € Ø˜D˜6 Ð%Ð%r%   c                 óZ  — g }| j                   dk7  r|j                  | j                   › d�«       |j                  dj                  d„ | j                  D «       «      «       | j                  �1|j                  dj                  d„ | j                  D «       «      «       | j
                  �|j                  d| j
                  › �«       | j                  �|j                  d| j                  › �«       | j                  �|j                  d	| j                  › �«       dj                  |«      S )
Nr   ú!rt   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr*   ©rJ   ©r�   Úxs     r   r�   z"Version.__str__.<locals>.<genexpr>-  ó   è ø€ Ò;¨œc !ŸfÑ;ùr�   Ú c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr*   r£   r¤   s     r   r�   z"Version.__str__.<locals>.<genexpr>1  s   è ø€ Ò :¨A¤ Q§Ñ :ùr�   z.postz.devú+)r   r…   Újoinr   r   r   r   r   ©r-   r‡   s     r   rS   zVersion.__str__%  sî   € Øˆð �:‰:˜Š?Ø�L‰L˜DŸJ™J˜< qÐ)Ô*ð 	�‰�S—X‘XÑ;¨d¯l©lÔ;Ó;Ô<ð �8‰8ÐØ�L‰L˜Ÿ™Ñ :°·±Ô :Ó:Ô;ð �9‰9Ð Ø�L‰L˜5 §¡ Ð,Ô-ð �8‰8ÐØ�L‰L˜4 §¡˜zÐ*Ô+ð �:‰:Ð!Ø�L‰L˜1˜TŸZ™Z˜LÐ)Ô*à�w‰w�u‹~Ðr%   c                 ó2   — | j                   j                  }|S r*   )rK   r   )r-   Ú_epochs     r   r   zVersion.epochA  s   € à—m‘m×)Ñ)ˆØˆr%   .c                 ó2   — | j                   j                  }|S r*   )rK   r   )r-   Ú_releases     r   r   zVersion.releaseF  s   € à$(§M¡M×$9Ñ$9ˆØˆr%   c                 ó2   — | j                   j                  }|S r*   )rK   r   )r-   Ú_pres     r   r   zVersion.preK  s   € à*.¯-©-×*;Ñ*;ˆØˆr%   c                 ód   — | j                   j                  r| j                   j                  d   S d S ©Nr
   )rK   r   r,   s    r   r   zVersion.postP  s(   € à(,¯©×(:Ò(:ˆt�}‰}×!Ñ! !Ñ$ÐDÀÐDr%   c                 ód   — | j                   j                  r| j                   j                  d   S d S r³   )rK   r   r,   s    r   r   zVersion.devT  s(   € à'+§}¡}×'8Ò'8ˆt�}‰}× Ñ  Ñ#ÐB¸dÐBr%   c                 óˆ   — | j                   j                  r,dj                  d„ | j                   j                  D «       «      S y )Nrt   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr*   r£   r¤   s     r   r�   z Version.local.<locals>.<genexpr>[  s   è ø€ Ò@ qœC ŸFÑ@ùr�   )rK   r   rª   r,   s    r   r   zVersion.localX  s1   € à�=‰=×ÒØ—8‘8Ñ@¨D¯M©M×,?Ñ,?Ô@Ó@Ð@àr%   c                 ó>   — t        | «      j                  dd«      d   S )Nr©   r
   r   )rJ   rz   r,   s    r   rX   zVersion.public_  s   € ä�4‹y�‰˜s AÓ& qÑ)Ð)r%   c                 óä   — g }| j                   dk7  r|j                  | j                   › d�«       |j                  dj                  d„ | j                  D «       «      «       dj                  |«      S )Nr   r¡   rt   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr*   r£   r¤   s     r   r�   z'Version.base_version.<locals>.<genexpr>l  r¦   r�   r§   )r   r…   rª   r   r«   s     r   r[   zVersion.base_versionc  sZ   € àˆð �:‰:˜Š?Ø�L‰L˜DŸJ™J˜< qÐ)Ô*ð 	�‰�S—X‘XÑ;¨d¯l©lÔ;Ó;Ô<à�w‰w�u‹~Ðr%   c                 ó>   — | j                   d uxs | j                  d uS r*   )r   r   r,   s    r   rf   zVersion.is_prereleasep  s   € à�x‰x˜tÐ#Ò; t§x¡x°tÐ';Ð;r%   c                 ó   — | j                   d uS r*   )r   r,   s    r   ri   zVersion.is_postreleaset  s   € à�y‰y Ð$Ð$r%   c                 ó   — | j                   d uS r*   )r   r,   s    r   rk   zVersion.is_devreleasex  s   € à�x‰x˜tÐ#Ð#r%   c                 óT   — t        | j                  «      dk\  r| j                  d   S dS )Nr
   r   ©Úlenr   r,   s    r   ÚmajorzVersion.major|  ó%   € ä"% d§l¡lÓ"3°qÒ"8ˆt�|‰|˜A‰Ð?¸aÐ?r%   c                 óT   — t        | j                  «      dk\  r| j                  d   S dS )Né   r
   r   r¾   r,   s    r   ÚminorzVersion.minor€  rÁ   r%   c                 óT   — t        | j                  «      dk\  r| j                  d   S dS )Né   rÃ   r   r¾   r,   s    r   ÚmicrozVersion.micro„  rÁ   r%   ) r    r!   r"   ÚreÚcompiler   ÚVERBOSEÚ
IGNORECASEr˜   rJ   rP   rV   rS   rl   rE   r   r   r   r   r   r   r   r   rX   r[   rF   rf   ri   rk   rÀ   rÄ   rÇ   r$   r%   r   r   r     s   „ àˆR�Z‰Z˜ /Ñ1°GÑ;¸R¿Z¹ZÈ"Ï-É-Ñ=WÓX€Fð
 ð 
¨ó 
ð:&˜#ó &ð˜ó ð8 ð�sò ó ðð ð˜˜s C˜x™ò ó ðð ð�X˜e C¨ H™oÑ.ò ó ðð ðE�h˜s‘mò Eó ðEð ðC�X˜c‘]ò Có ðCð ð�x ‘}ò ó ðð ð*˜ò *ó ð*ð ð
˜cò 
ó ð
ð ð<˜tò <ó ð<ð ð% ò %ó ð%ð ð$˜tò $ó ð$ð ð@�sò @ó ð@ð ð@�sò @ó ð@ð ð@�sò @ó ñ@r%   r   ÚletterÚnumberc                 óª   — | r>|€d}| j                  «       } | dk(  rd} n| dk(  rd} n| dv rd} n| dv rd	} | t        |«      fS | s|rd	} | t        |«      fS y )
Nr   ÚalphaÚaÚbetaÚb)rm   r   ro   rq   )ÚrevÚrr   )r‚   rE   )rÌ   rÍ   s     r   r›   r›   ‰  s„   € ñ ð ˆ>ØˆFð —‘“ˆð
 �WÒØ‰FØ�vÒØ‰FØÐ.Ñ.Ø‰FØ�|Ñ#ØˆFà”s˜6“{Ð"Ð"Ù‘fð ˆà”s˜6“{Ð"Ð"àr%   z[\._-]r   c                 óR   — | �%t        d„ t        j                  | «      D «       «      S y)zR
    Takes a string like abc.1.twelve and turns it into ("abc", 1, "twelve").
    Nc              3   ór   K  — | ]/  }|j                  «       s|j                  «       n
t        |«      –— Œ1 y ­wr*   )Úisdigitr‚   rE   )r�   r~   s     r   r�   z'_parse_local_version.<locals>.<genexpr>µ  s/   è ø€ ò 
àð !%§¡¤ˆD�J‰JŒL´C¸³IÓ=ñ
ùs   ‚57)r†   Ú_local_version_separatorsrz   )r   s    r   rœ   rœ   °  s4   € ð ÐÜñ 
ä1×7Ñ7¸Ó>ô
ó 
ð 	
ð r%   r   r   r   r   r   c                 ó  — t        t        t        t        j                  d„ t        |«      «      «      «      «      }|€|€	|�t
        }n|€t        }n|}|€t
        }n|}|€t        }	n|}	|€t
        }
nt        d„ |D «       «      }
| ||||	|
fS )Nc                 ó   — | dk(  S )Nr   r$   )r¥   s    r   ú<lambda>z_cmpkey.<locals>.<lambda>Ë  s
   € °A¸±F€ r%   c              3   óT   K  — | ]   }t        |t        «      r|d fnt        |f–— Œ" y­w)r§   N)r2   rE   r   rŒ   s     r   r�   z_cmpkey.<locals>.<genexpr>ô  s-   è ø€ ò 
ØIJ”z !¤SÔ)ˆQ�‰GÔ0@À!Ð/DÓDñ
ùs   ‚&()r†   ÚreversedÚlistÚ	itertoolsÚ	dropwhiler   r   )r   r   r   r   r   r   r¯   r±   Ú_postÚ_devÚ_locals              r   r�   r�   ¼  s±   € ô Ü””i×)Ñ)Ñ*:¼HÀWÓ<MÓNÓOÓPó€Hð €{�t�|¨¨Ü/‰ð 
ˆÜ‰àˆð €|Ü 0‰ð ˆð €{Ü'‰ð ˆà€}ä,‰ô ñ 
ØNSô
ó 
ˆð �(˜D %¨¨vÐ5Ð5r%   )0Úcollectionsrß   rÈ   rM   Útypingr   r   r   r   r   r   r	   Ú_structuresr   r   r   r   Ú__all__ÚInfiniteTypesrJ   rE   ÚPrePostDevTypeÚSubLocalTypeÚ	LocalTyperB   rC   rF   ÚVersionComparisonMethodÚ
namedtupler   r   Ú
ValueErrorr   r'   r   rÉ   rÊ   ry   r{   r   rL   r   r   Úbytesr›   rØ   rœ   r�   r$   r%   r   ú<module>rð      sÆ  ðó
 Û Û 	Û ß P× PÑ Pç WÓ Wâ
T€à�lÐ$8Ð8Ñ9€Ø�} e¨C°¨H¡oÐ5Ñ6€Ø�] C¨Ð,Ñ-€ØØØ	ØØØ�, Ð#Ñ$ØÐ&¨Ð4Ñ5ð7ñ	
ð
 	ð	ñðñ
€	ð 
Øˆˆs�Cˆx‰˜.¨.¸.È)ÐSñ
€ð �S˜%  S ™/Ð)Ñ*€Ø"Ø
ˆ6�<ÐÑ  %¨°Ð(<Ñ"=Ð>ÀÐDñÐ ð "ˆ;×!Ñ!ØÒCó€ð
	&�3ð 	&˜5Ð!;Ñ<ó 	&ô�Zô ÷+'ñ +'ô\;�Lô ;ð|  *˜rŸz™zÐ*CÀRÇZÁZÓPÐ ð ØØ	Ø
Øñ#Ð ð˜Cð  H¨S¡Mó ð"˜Cð  Ló ð:€ô@E@ˆlô E@ðP!Øð!Ø˜s E¨;Ð6Ñ7ð!àˆe�C˜�H‰oÑó!ðH '˜BŸJ™J yÓ1Ð ð	 ð 	¨°Ñ(;ó 	ð<6Øð<6à�3˜�8‰_ð<6ð 
�%˜˜S˜‘/Ñ	"ð<6ð �5˜˜c˜‘?Ñ
#ð	<6ð
 
�%˜˜S˜‘/Ñ	"ð<6ð �E˜,Ñ'Ñ(ð<6ð ô<6r%   