Ë ØÅ]ð"–Üãó†—ddlmZmZmZmZddlmZddlm Z ddl m Z m Z ddl mZddlmZGd„d e«ZGd „d «Zy ) é)ÚAnyÚIteratorÚOptionalÚSeté)Úparse_requirement)ÚParserSyntaxError)ÚMarkerÚ_normalize_extra_values)Ú SpecifierSet)Úcanonicalize_namecó—eZdZdZy)ÚInvalidRequirementzJ An invalid requirement was found, users should refer to PEP 508. N)Ú__name__Ú __module__Ú __qualname__Ú__doc__©óú;/usr/lib/python3.12/site-packages/packaging/requirements.pyrrs„òrrcój—eZdZdZdeddfd„Zdedeefd„Zdefd„Zdefd „Z de fd „Z d e de fd „Zy) Ú 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 xsd|_t |jr |jng«|_t|j«|_ d|_ |j�Ctjt«|_ t|j«|j_yy#t$r}tt|««|‚d}~wwxYw©N)Ú_parse_requirementr rÚstrÚnameÚurlÚsetÚextrasr Ú specifierÚmarkerr Ú__new__r Ú_markers)ÚselfrÚparsedÚes rÚ__init__zRequirement.__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/rc#ó`K—|–—|jr,djt|j««}d|›d�–—|jrt |j«–—|j r!d|j ›�–—|j rd–—|j rd|j ›�–—yy­w)NÚ,Ú[Ú]z@ Ú z; )r"ÚjoinÚsortedr#rr r$)r'rÚformatted_extrass rÚ _iter_partszRequirement._iter_parts0s‘èø€ØŠ à �;Š;Ø"Ÿx™x¬¨t¯{©{Ó(;Ó<Ð ØÐ&Ð' qÐ)Ò )à �>Š>Ü�d—n‘nÓ%Ò %à �8Š8Ø�t—x‘x�j�/Ò !Ø�{Š{Ø’ à �;Š;Ø�t—{‘{�mÐ$Ó $ð ùs‚B,B.cóV—dj|j|j««S)NÚ)r0r3r©r's rÚ__str__zRequirement.__str__Bs €Ø�w‰w�t×'Ñ'¨¯ © Ó2Ó3Ð3rcó—d|›d�S)Nzrr6s rÚ__repr__zRequirement.__repr__Es€Ø ˜v SÐ)Ð)rcóŒ—t|jjg|jt |j ««¢­«Sr)ÚhashÚ __class__rr3r rr6s rÚ__hash__zRequirement.__hash__Hs>€Üà—‘×'Ñ'ð à×!Ñ!Ô"3°D·I±IÓ">Ó?ñ ó ð rÚothercó\—t|t«stSt|j«t|j«k(xrj|j |j k(xrO|j |j k(xr4|j|jk(xr|j|jk(Sr) Ú isinstancerÚNotImplementedr rr"r#r r$)r'r>s rÚ__eq__zRequirement.__eq__PsŒ€Ü˜%¤Ô-Ü!Ð !ô ˜dŸi™iÓ (Ô,=¸e¿j¹jÓ,IÑ Iò ,Ø— ‘ ˜uŸ|™|Ñ+ò ,à—‘ %§/¡/Ñ1ò ,𗑘EŸI™IÑ%ò ,ð— ‘ ˜uŸ|™|Ñ+ð  r)rrrrrr*rr3r7r9Úintr=rÚboolrBrrrrrsk„ñð J¨3ð J°4ó Jð% ð%¨°© ó%ð$4˜ó4ð*˜#ó*ð ˜#ó ð  ˜Cð   Dô  rrN)ÚtypingrrrrÚ_parserrrÚ _tokenizerr Úmarkersr r Ú specifiersr Úutilsr Ú ValueErrorrrrrrÚrLs4ð÷ 0Ó/å<Ý)ß4Ý$Ý$ô˜ô÷ F òF r