§
    ÇÁ³gƒ  ã                  ó˜   — d dl mZ d dl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dS )é    )Úannotations)ÚAnyÚIteratoré   )Úparse_requirement)ÚParserSyntaxError)ÚMarkerÚ_normalize_extra_values)ÚSpecifierSet)Úcanonicalize_namec                  ó   — e Zd ZdZdS )ÚInvalidRequirementzJ
    An invalid requirement was found, users should refer to PEP 508.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    úT/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/packaging/requirements.pyr   r      s   € € € € € ðð ð ð r   r   c                  óB   — e Zd ZdZdd„Zdd	„Zdd
„Zdd„Zdd„Zdd„Z	dS )Ú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ÚstrÚreturnÚNonec                óº  — 	 t          |¦  «        }n/# t          $ r"}t          t          |¦  «        ¦  «        |‚d }~ww xY w|j        | _        |j        pd | _        t          |j        pg ¦  «        | _        t          |j	        ¦  «        | _	        d | _
        |j
        �>t          j        t          ¦  «        | _
        t          |j
        ¦  «        | j
        _        d S d S ©N)Ú_parse_requirementr   r   r   ÚnameÚurlÚsetÚextrasr   Ú	specifierÚmarkerr	   Ú__new__r
   Ú_markers)Úselfr   ÚparsedÚes       r   Ú__init__zRequirement.__init__"   sÏ   € ð	4Ý'Ð(:Ñ;Ô;ˆFˆFøÝ ð 	4ð 	4ð 	4Ý$¥S¨¡V¤VÑ,Ô,°!Ð3øøøøð	4øøøð  œˆŒ	Ø%œzÐ1¨TˆŒÝ # F¤MÐ$7°RÑ 8Ô 8ˆŒÝ'3°FÔ4DÑ'EÔ'EˆŒØ%)ˆŒØŒ=Ð$Ý œ.­Ñ0Ô0ˆDŒKÝ#:¸6¼=Ñ#IÔ#IˆDŒKÔ Ð Ð ð %Ð$s   ‚ ’
>œ9¹>r   úIterator[str]c              #  ó  K  — |V — | j         r/d                     t          | j         ¦  «        ¦  «        }d|› d�V — | j        rt	          | j        ¦  «        V — | j        rd| j        › �V — | j        rdV — | j        rd| j        › �V — d S d S )Nú,ú[ú]z@ ú z; )r"   ÚjoinÚsortedr#   r   r    r$   )r'   r   Úformatted_extrass      r   Ú_iter_partszRequirement._iter_parts1   sÎ   è è € Øˆ
ˆ
ˆ
àŒ;ð 	*Ø"Ÿxšx­¨t¬{Ñ(;Ô(;Ñ<Ô<ÐØ)Ð&Ð)Ð)Ð)Ð)Ð)Ð)àŒ>ð 	&Ý�d”nÑ%Ô%Ð%Ð%Ð%àŒ8ð 	Ø!�t”x�/�/Ð!Ð!Ð!ØŒ{ð Ø�	�	�	àŒ;ð 	%Ø$�t”{Ð$Ð$Ð$Ð$Ð$Ð$Ð$ð	%ð 	%r   c                ó\   — d                      |                      | j        ¦  «        ¦  «        S )NÚ )r1   r4   r   ©r'   s    r   Ú__str__zRequirement.__str__C   s$   € Ø�wŠw�t×'Ò'¨¬	Ñ2Ô2Ñ3Ô3Ð3r   c                ó   — d| › d�S )Nz<Requirement('z')>r   r7   s    r   Ú__repr__zRequirement.__repr__F   s   € Ø) Ð)Ð)Ð)Ð)r   Úintc                ó†   — t          | j        j        g|                      t	          | j        ¦  «        ¦  «        ¢R ¦  «        S r   )ÚhashÚ	__class__r   r4   r   r   r7   s    r   Ú__hash__zRequirement.__hash__I   sG   € Ýà”Ô'ðà×!Ò!Õ"3°D´IÑ">Ô">Ñ?Ô?ðð ñ
ô 
ð 	
r   Úotherr   Úboolc                ó  — t          |t          ¦  «        st          S t          | j        ¦  «        t          |j        ¦  «        k    o?| j        |j        k    o/| j        |j        k    o| j        |j        k    o| j        |j        k    S r   )	Ú
isinstancer   ÚNotImplementedr   r   r"   r#   r    r$   )r'   r@   s     r   Ú__eq__zRequirement.__eq__Q   s†   € Ý˜%¥Ñ-Ô-ð 	"Ý!Ð!õ ˜dœiÑ(Ô(Õ,=¸e¼jÑ,IÔ,IÒIð ,Ø”˜uœ|Ò+ð,à” %¤/Ò1ð,ð ”˜EœIÒ%ð,ð ”˜uœ|Ò+ð	
r   N)r   r   r   r   )r   r   r   r+   )r   r   )r   r;   )r@   r   r   rA   )
r   r   r   r   r*   r4   r8   r:   r?   rE   r   r   r   r   r      sš   € € € € € ðð ðJð Jð Jð Jð%ð %ð %ð %ð$4ð 4ð 4ð 4ð*ð *ð *ð *ð
ð 
ð 
ð 
ð

ð 

ð 

ð 

ð 

ð 

r   r   N)Ú
__future__r   Útypingr   r   Ú_parserr   r   Ú
_tokenizerr   Úmarkersr	   r
   Ú
specifiersr   Úutilsr   Ú
ValueErrorr   r   r   r   r   ú<module>rN      s÷   ðð #Ð "Ð "Ð "Ð "Ð "à  Ð  Ð  Ð  Ð  Ð  Ð  Ð  à <Ð <Ð <Ð <Ð <Ð <Ø )Ð )Ð )Ð )Ð )Ð )Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø $Ð $Ð $Ð $Ð $Ð $Ø $Ð $Ð $Ð $Ð $Ð $ðð ð ð ð ˜ñ ô ð ðF
ð F
ð F
ð F
ð F
ñ F
ô F
ð F
ð F
ð F
r   