Ë
    ™2Úiˆ  ã                   ó†   — d dl mZmZmZmZ ddlmZ ddlm	Z	 ddl
mZmZ ddlmZ ddlmZ  G d„ d	e«      Z G d
„ d«      Zy)é    )ÚAnyÚIteratorÚOptionalÚSeté   )Úparse_requirement)ÚParserSyntaxError)ÚMarkerÚ_normalize_extra_values)ÚSpecifierSet)Úcanonicalize_namec                   ó   — e Zd ZdZy)ÚInvalidRequirementzJ
    An invalid requirement was found, users should refer to PEP 508.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    úM/var/www/html/acx/venv/lib/python3.12/site-packages/packaging/requirements.pyr   r      s   „ òr   r   c                   ój   — e Zd ZdZdeddfd„Zdedee   fd„Zdefd„Zdefd	„Z	de
fd
„Zdedefd„Zy)ÚRequirementzÁParse a requirement.

    Parse a given requirement string into its parts, such as name, specifier,
    URL, and extras. Raises InvalidRequirement on a badly-formed requirement
    string.
    Úrequirement_stringÚreturnNc                 óä  — 	 t        |«      }|j                  | _        |j
                  xs d | _        t        |j                  r|j                  ng «      | _        t        |j                  «      | _	        d | _
        |j                  �Ct        j                  t        «      | _
        t        |j                  «      | j                  _        y y # t        $ r}t        t        |«      «      |‚d }~ww xY w©N)Ú_parse_requirementr	   r   ÚstrÚnameÚurlÚsetÚextrasr   Ú	specifierÚmarkerr
   Ú__new__r   Ú_markers)Úselfr   ÚparsedÚes       r   Ú__init__zRequirement.__init__!   s·   € ð	4Ü'Ð(:Ó;ˆFð  Ÿ™ˆŒ	Ø"(§*¡*Ò"4°ˆŒÜ #°V·]²] F§M¢MÈÓ KˆŒÜ'3°F×4DÑ4DÓ'EˆŒØ(,ˆŒØ�=‰=Ð$Ü Ÿ.™.¬Ó0ˆDŒKÜ#:¸6¿=¹=Ó#IˆD�K‰KÕ ð %øô !ò 	4Ü$¤S¨£VÓ,°!Ð3ûð	4ús   ‚C Ã	C/ÃC*Ã*C/r   c              #   ó`  K  — |–— | j                   r,dj                  t        | j                   «      «      }d|› d�–— | j                  rt	        | j                  «      –— | j
                  r!d| j
                  › �–— | j                  rd–— | j                  rd| j                  › �–— y y ­w)Nú,ú[ú]z@ ú z; )r"   ÚjoinÚsortedr#   r   r    r$   )r'   r   Úformatted_extrass      r   Ú_iter_partszRequirement._iter_parts0   s‘   è ø€ ØŠ
à�;Š;Ø"Ÿx™x¬¨t¯{©{Ó(;Ó<ÐØÐ&Ð' qÐ)Ò)à�>Š>Ü�d—n‘nÓ%Ò%à�8Š8Ø�t—x‘x�j�/Ò!Ø�{Š{Ø’	à�;Š;Ø�t—{‘{�mÐ$Ó$ð ùs   ‚B,B.c                 óV   — dj                  | j                  | j                  «      «      S )NÚ )r0   r3   r   ©r'   s    r   Ú__str__zRequirement.__str__B   s    € Ø�w‰w�t×'Ñ'¨¯	©	Ó2Ó3Ð3r   c                 ó   — d| › d�S )Nz<Requirement('z')>r   r6   s    r   Ú__repr__zRequirement.__repr__E   s   € Ø ˜v SÐ)Ð)r   c                 óŒ   — t        | j                  j                  g| j                  t	        | j
                  «      «      ¢­«      S r   )ÚhashÚ	__class__r   r3   r   r   r6   s    r   Ú__hash__zRequirement.__hash__H   s>   € Üà—‘×'Ñ'ðà×!Ñ!Ô"3°D·I±IÓ">Ó?ñó
ð 	
r   Úotherc                 ó\  — t        |t        «      st        S t        | j                  «      t        |j                  «      k(  xrj | j
                  |j
                  k(  xrO | j                  |j                  k(  xr4 | j                  |j                  k(  xr | j                  |j                  k(  S r   )	Ú
isinstancer   ÚNotImplementedr   r   r"   r#   r    r$   )r'   r>   s     r   Ú__eq__zRequirement.__eq__P   sŒ   € Ü˜%¤Ô-Ü!Ð!ô ˜dŸi™iÓ(Ô,=¸e¿j¹jÓ,IÑIò ,Ø—‘˜uŸ|™|Ñ+ò,à—‘ %§/¡/Ñ1ò,ð —‘˜EŸI™IÑ%ò,ð —‘˜uŸ|™|Ñ+ð	
r   )r   r   r   r   r   r*   r   r3   r7   r9   Úintr=   r   ÚboolrB   r   r   r   r   r      sk   „ ñðJ¨3ð J°4ó Jð% ð %¨°©ó %ð$4˜ó 4ð*˜#ó *ð
˜#ó 
ð

˜Cð 

 Dô 

r   r   N)Útypingr   r   r   r   Ú_parserr   r   Ú
_tokenizerr	   Úmarkersr
   r   Ú
specifiersr   Úutilsr   Ú
ValueErrorr   r   r   r   r   ú<module>rL      s4   ð÷
 0Ó /å <Ý )ß 4Ý $Ý $ô˜ô ÷F
ò F
r   