ó
    T=Œj+  ã                  ó˜   • S SK Jr  S SKJr  SSKJr  SSKJr  SSK	J
r
Jr  SSKJr  SSKJr  S	S
/rSS jr " S S	\5      r " S S
5      rg)é    )Úannotations)ÚIteratoré   )Úparse_requirement)ÚParserSyntaxError)ÚMarkerÚ_normalize_extra_values)ÚSpecifierSet)Úcanonicalize_nameÚInvalidRequirementÚRequirementc                 ó   • [         $ ©N)Ú__all__© ó    Úf/Users/stevendouglas/BidBrain/.venv/lib/python3.13/site-packages/pip/_vendor/packaging/requirements.pyÚ__dir__r      s   € Ü€Nr   c                  ó   • \ rS rSrSrSrg)r   é   zB
An invalid requirement was found, users should refer to PEP 508.
r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__static_attributes__r   r   r   r   r      s   † ôr   c                  óh   • \ rS rSrSrSS jrSS jrSS jrSS jrSS jr	SS jr
SS	 jrSS
 jrSrg)r   é   aO  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.

Instances are safe to serialize with :mod:`pickle`. They use a stable
format so the same pickle can be loaded in future packaging releases.

.. versionchanged:: 26.2

    Added a stable pickle format. Pickles created with packaging 26.2+ can
    be unpickled with future releases.  Backward compatibility with pickles
    from pip._vendor.packaging < 26.2 is supported but may be removed in a future
    release.
c                óê  •  [        U5      nUR                  U l        UR
                  =(       d    S U l        [        UR                  =(       d    / 5      U l        [        UR                  5      U l	        S U l
        UR                  bD  [        R                  " [        5      U l
        [        UR                  5      U R                  l        g g ! [         a  n[        [        U5      5      UeS nAff = fr   )Ú_parse_requirementr   r   ÚstrÚnameÚurlÚsetÚextrasr
   Ú	specifierÚmarkerr   Ú__new__r	   Ú_markers)ÚselfÚrequirement_stringÚparsedÚes       r   Ú__init__ÚRequirement.__init__5   s´   € ð	4Ü'Ð(:Ó;ˆFð  Ÿ™ˆŒ	Ø%Ÿz™z×1¨TˆŒÜ # F§M¡M×$7°RÓ 8ˆŒÜ'3°F×4DÑ4DÓ'EˆŒØ%)ˆŒØ�=‰=Ñ$Ü Ÿ.š.¬Ó0ˆDŒKÜ#:¸6¿=¹=Ó#IˆD�K‰KÕ ð %øô !ó 	4Ü$¤S¨£VÓ,°!Ð3ûð	4ús   ‚C Ã
C2ÃC-Ã-C2c              #  ó’  #   • Uv •  U R                   (       a,  SR                  [        U R                   5      5      nSU S3v •  U R                  (       a  [	        U R                  5      v •  U R
                  (       a&  SU R
                   3v •  U R                  (       a  Sv •  U R                  (       a  SU R                   3v •  g g 7f)NÚ,Ú[Ú]z @ Ú z; )r%   ÚjoinÚsortedr&   r!   r#   r'   )r*   r"   Úformatted_extrass      r   Ú_iter_partsÚRequirement._iter_partsD   s‘   é € ØŠ
à�;�;Ø"Ÿx™x¬¨t¯{©{Ó(;Ó<ÐØÐ&Ð' qÐ)Ò)à�>�>Ü�d—n‘nÓ%Ò%à�8�8Ø˜Ÿ™�zÐ"Ò"Ø�{�{Ø’	à�;�;Ø�t—{‘{�mÐ$Ó$ð ùs   ‚CCc                ó   • [        U 5      $ r   )r!   ©r*   s    r   Ú__getstate__ÚRequirement.__getstate__V   s   € ô �4‹yÐr   c                ó´  • [        U[        5      (       ab   [        U5      nUR
                  U l        UR                  U l        UR                  U l        UR                  U l        UR                  U l	        g [        U[        5      (       a  U R                  R                  U5        g [	        SU< 35      e! [         a  n[	        SU< 35      UeS nAff = f)Nz Cannot restore Requirement from )Ú
isinstancer!   r   r   Ú	TypeErrorr"   r#   r%   r&   r'   ÚdictÚ__dict__Úupdate)r*   ÚstateÚtmpÚexcs       r   Ú__setstate__ÚRequirement.__setstate__[   sº   € Ü�eœS×!Ñ!ðWÜ! %Ó(�ð Ÿ™ˆDŒIØ—w‘wˆDŒHØŸ*™*ˆDŒKØ Ÿ]™]ˆDŒNØŸ*™*ˆDŒKØÜ�eœT×"Ñ"à�M‰M× Ñ  Ô'ØÜÐ:¸5¹)ÐDÓEÐEøô &ó WÜÐ"BÀ5Á)Ð LÓMÐSVÐVûðWús   —B8 Â8
CÃCÃCc                óV   • SR                  U R                  U R                  5      5      $ )NÚ )r5   r8   r"   r;   s    r   Ú__str__ÚRequirement.__str__n   s    € Ø�w‰w�t×'Ñ'¨¯	©	Ó2Ó3Ð3r   c                óP   • SU R                   R                   S[        U 5      < S3$ )NÚ<Ú(z)>)Ú	__class__r   r!   r;   s    r   Ú__repr__ÚRequirement.__repr__q   s&   € Ø�4—>‘>×*Ñ*Ð+¨1¬S°«Y©M¸Ð<Ð<r   c           	     ón   • [        [        U R                  [        U R                  5      5      5      5      $ r   )ÚhashÚtupler8   r   r"   r;   s    r   Ú__hash__ÚRequirement.__hash__t   s'   € Ü”E˜$×*Ñ*Ô+<¸T¿Y¹YÓ+GÓHÓIÓJÐJr   c                óŽ  • [        U[        5      (       d  [        $ [        U R                  5      [        UR                  5      :H  =(       ay    U R
                  UR
                  :H  =(       aY    U R                  UR                  :H  =(       a9    U R                  UR                  :H  =(       a    U R                  UR                  :H  $ r   )	r?   r   ÚNotImplementedr   r"   r%   r&   r#   r'   )r*   Úothers     r   Ú__eq__ÚRequirement.__eq__w   s�   € Ü˜%¤×-Ñ-Ü!Ð!ô ˜dŸi™iÓ(Ô,=¸e¿j¹jÓ,IÑI÷ ,Ø—‘˜uŸ|™|Ñ+÷,à—‘ %§/¡/Ñ1÷,ð —‘˜EŸI™IÑ%÷,ð —‘˜uŸ|™|Ñ+ð	
r   )r%   r'   r"   r&   r#   N)r+   r!   ÚreturnÚNone)r"   r!   r]   zIterator[str])r]   r!   )rD   Úobjectr]   r^   )r]   Úint)rZ   r_   r]   Úbool)r   r   r   r   r   r.   r8   r<   rG   rK   rQ   rV   r[   r   r   r   r   r   r      s2   † ñô,Jô%ô$ô
Fô&4ô=ôK÷

r   N)r]   z	list[str])Ú
__future__r   Útypingr   Ú_parserr   r    Ú
_tokenizerr   Úmarkersr   r	   Ú
specifiersr
   Úutilsr   r   r   Ú
ValueErrorr   r   r   r   r   Ú<module>rj      sH   ðõ #å å <Ý )ß 4Ý $Ý $ð Øð€ôô˜ô ÷c
ò c
r   