ó
    T=Œj/   ã                  óÖ   • 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KJrJrJrJr   " S	 S
\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      rg)é    )Úannotations)ÚAny)ÚSpecifierSet)ÚNormalizedNameÚcanonicalize_name)Úinstall_req_drop_extras)ÚInstallRequirementé   )Ú	CandidateÚCandidateLookupÚRequirementÚformat_namec                  óŒ   • \ 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5       r
\	SS j5       rSS	 jrSS
 jrSS jrSrg)ÚExplicitRequirementé   c                ó   • Xl         g ©N©Ú	candidate©Úselfr   s     Út/Users/stevendouglas/BidBrain/.venv/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/requirements.pyÚ__init__ÚExplicitRequirement.__init__   s   € Ø"�ó    c                ó,   • [        U R                  5      $ r   )Ústrr   ©r   s    r   Ú__str__ÚExplicitRequirement.__str__   s   € Ü�4—>‘>Ó"Ð"r   c                óP   • U R                   R                   SU R                  < S3$ ©NÚ(Ú))Ú	__class__Ú__name__r   r   s    r   Ú__repr__ÚExplicitRequirement.__repr__   s%   € Ø—.‘.×)Ñ)Ð*¨!¨D¯N©NÑ+=¸QÐ?Ð?r   c                ó,   • [        U R                  5      $ r   )Úhashr   r   s    r   Ú__hash__ÚExplicitRequirement.__hash__   s   € Ü�D—N‘NÓ#Ð#r   c                ó`   • [        U[        5      (       d  gU R                  UR                  :H  $ ©NF)Ú
isinstancer   r   ©r   Úothers     r   Ú__eq__ÚExplicitRequirement.__eq__   s&   € Ü˜%Ô!4×5Ñ5ØØ�~‰~ §¡Ñ0Ð0r   c                ó.   • U R                   R                  $ r   )r   Úproject_namer   s    r   r5   Ú ExplicitRequirement.project_name    s   € ð �~‰~×*Ñ*Ð*r   c                ó.   • U R                   R                  $ r   )r   Únamer   s    r   r8   ÚExplicitRequirement.name%   s   € ð �~‰~×"Ñ"Ð"r   c                ó6   • U R                   R                  5       $ r   )r   Úformat_for_errorr   s    r   r;   Ú$ExplicitRequirement.format_for_error*   s   € Ø�~‰~×.Ñ.Ó0Ð0r   c                ó   • U R                   S 4$ r   r   r   s    r   Úget_candidate_lookupÚ(ExplicitRequirement.get_candidate_lookup-   s   € Ø�~‰~˜tÐ#Ð#r   c                ó   • XR                   :H  $ r   r   r   s     r   Úis_satisfied_byÚ#ExplicitRequirement.is_satisfied_by0   s   € ØŸN™NÑ*Ð*r   r   N)r   r   ÚreturnÚNone©rC   r   ©rC   Úint©r1   r   rC   Úbool©rC   r   ©rC   r   ©r   r   rC   rI   )r&   Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r'   r+   r2   Úpropertyr5   r8   r;   r>   rA   Ú__static_attributes__© r   r   r   r      sS   † ô#ô#ô@ô$ô1ð
 ó+ó ð+ð ó#ó ð#ô1ô$÷+r   r   c                  ó    • \ rS rSrSS jr\SS j5       rSS jrSS jrSS jr	SS jr
\SS j5       r\SS	 j5       rSS
 jrSS jrSS jrSrg)ÚSpecifierRequirementé4   c                óª   • UR                   b   S5       eXl        S U l        S U l        [	        S U R                  R
                   5       5      U l        g )NúThis is a link, not a specifierc              3  ó8   #   • U  H  n[        U5      v •  M     g 7fr   ©r   ©Ú.0Úes     r   Ú	<genexpr>Ú0SpecifierRequirement.__init__.<locals>.<genexpr>:   ó   é € Ð QÒ?P¸!Ô!2°1×!5Ð!5Ò?Pùó   ‚)ÚlinkÚ_ireqÚ_equal_cacheÚ_hashÚ	frozensetÚextrasÚ_extras©r   Úireqs     r   r   ÚSpecifierRequirement.__init__5   sH   € Ø�y‰yÑ ÐCÐ"CÓCÐ ØŒ
Ø(,ˆÔØ!%ˆŒ
Ü Ñ Q¸t¿z¹z×?PÒ?PÓ QÓQˆ�r   c                ó€   • U R                   b  U R                   $ [        U R                  5      U l         U R                   $ r   ©rc   r   rb   r   s    r   Ú_equalÚSpecifierRequirement._equal<   ó6   € à×ÑÑ(Ø×$Ñ$Ð$ä §
¡
›OˆÔØ× Ñ Ð r   c                ó@   • [        U R                  R                  5      $ r   )r   rb   Úreqr   s    r   r   ÚSpecifierRequirement.__str__D   s   € Ü�4—:‘:—>‘>Ó"Ð"r   c                óv   • U R                   R                   S[        U R                  R                  5      < S3$ r"   )r%   r&   r   rb   rq   r   s    r   r'   ÚSpecifierRequirement.__repr__G   s.   € Ø—.‘.×)Ñ)Ð*¨!¬C°·
±
·±Ó,?Ñ+BÀ!ÐDÐDr   c                ój   • [        U[        5      (       d  [        $ U R                  UR                  :H  $ r   )r/   rT   ÚNotImplementedrm   r0   s     r   r2   ÚSpecifierRequirement.__eq__J   s)   € Ü˜%Ô!5×6Ñ6Ü!Ð!Ø�{‰{˜eŸl™lÑ*Ð*r   c                ó€   • U R                   b  U R                   $ [        U R                  5      U l         U R                   $ r   ©rd   r*   rm   r   s    r   r+   ÚSpecifierRequirement.__hash__O   ó0   € Ø�:‰:Ñ!Ø—:‘:Ðä˜$Ÿ+™+Ó&ˆŒ
Ø�z‰zÐr   c                ó˜   • U R                   R                  (       d   S5       e[        U R                   R                  R                  5      $ )Nú'Specifier-backed ireq is always PEP 508)rb   rq   r   r8   r   s    r   r5   Ú!SpecifierRequirement.project_nameV   s1   € à�z‰z�~�~ÐHÐHÓHˆ~Ü  §¡§¡×!4Ñ!4Ó5Ð5r   c                óB   • [        U R                  U R                  5      $ r   )r   r5   rg   r   s    r   r8   ÚSpecifierRequirement.name[   s   € ä˜4×,Ñ,¨d¯l©lÓ;Ð;r   c                óü   • [        U 5      R                  S5       Vs/ s H  oR                  5       PM     nn[        U5      S:X  a  g[        U5      S:X  a  US   $ SR	                  US S 5      S-   US   -   $ s  snf )NÚ,r   Ú r
   z, éÿÿÿÿz and )r   ÚsplitÚstripÚlenÚjoin)r   ÚsÚpartss      r   r;   Ú%SpecifierRequirement.format_for_error_   su   € ô
 %(¨£I§O¡O°CÔ$8Ó9Ò$8˜q—‘–Ñ$8ˆÐ9Üˆu‹:˜‹?ØÜ�‹Z˜1‹_Ø˜‘8ˆOà�y‰y˜˜s ˜Ó$ wÑ.°°r±Ñ:Ð:ùò :s   �A9c                ó   • S U R                   4$ r   )rb   r   s    r   r>   Ú)SpecifierRequirement.get_candidate_lookupl   s   € Ø�T—Z‘ZÐÐr   c                ó0  • UR                   U R                   :X  d!   SUR                    SU R                    35       eU R                  R                  (       d   S5       eU R                  R                  R                  nUR	                  UR
                  SS9$ )Nz6Internal issue: Candidate is not for this requirement z vs r}   T©Úprereleases)r8   rb   rq   Ú	specifierÚcontainsÚversion)r   r   Úspecs      r   rA   Ú$SpecifierRequirement.is_satisfied_byo   s   € Ø�~‰~ §¡Ó*ð 	
ØDØ�~‰~Ð˜d 4§9¡9 +ð/ó	
Ð*ð �z‰z�~�~ÐHÐHÓHˆ~Ø�z‰z�~‰~×'Ñ'ˆØ�}‰}˜Y×.Ñ.¸Dˆ}ÐAÐAr   ©rc   rg   rd   rb   N©ri   r	   rC   rD   rE   ©r1   ÚobjectrC   rI   rF   rJ   rK   rL   )r&   rM   rN   rO   r   rP   rm   r   r'   r2   r+   r5   r8   r;   r>   rA   rQ   rR   r   r   rT   rT   4   si   † ôRð ó!ó ð!ô#ôEô+ô
ð ó6ó ð6ð ó<ó ð<ô;ô ÷
Br   rT   c                  óJ   • \ rS rSrSrS	S jr\S
S j5       rSS jrSS jr	Sr
g)Ú!SpecifierWithoutExtrasRequirementé|   z}
Requirement backed by an install requirement on a base package.
Trims extras from its install requirement if there are any.
c                ó¾   • UR                   b   S5       e[        U5      U l        S U l        S U l        [        S U R                  R                   5       5      U l        g )NrW   c              3  ó8   #   • U  H  n[        U5      v •  M     g 7fr   rY   rZ   s     r   r]   Ú=SpecifierWithoutExtrasRequirement.__init__.<locals>.<genexpr>‡   r_   r`   )ra   r   rb   rc   rd   re   rf   rg   rh   s     r   r   Ú*SpecifierWithoutExtrasRequirement.__init__‚   sO   € Ø�y‰yÑ ÐCÐ"CÓCÐ Ü,¨TÓ2ˆŒ
Ø(,ˆÔØ!%ˆŒ
Ü Ñ Q¸t¿z¹z×?PÒ?PÓ QÓQˆ�r   c                ó€   • U R                   b  U R                   $ [        U R                  5      U l         U R                   $ r   rl   r   s    r   rm   Ú(SpecifierWithoutExtrasRequirement._equal‰   ro   r   c                ój   • [        U[        5      (       d  [        $ U R                  UR                  :H  $ r   )r/   r›   rv   rm   r0   s     r   r2   Ú(SpecifierWithoutExtrasRequirement.__eq__‘   s)   € Ü˜%Ô!B×CÑCÜ!Ð!Ø�{‰{˜eŸl™lÑ*Ð*r   c                ó€   • U R                   b  U R                   $ [        U R                  5      U l         U R                   $ r   ry   r   s    r   r+   Ú*SpecifierWithoutExtrasRequirement.__hash__–   r{   r   r–   Nr—   rE   r˜   rF   )r&   rM   rN   rO   Ú__doc__r   rP   rm   r2   r+   rQ   rR   r   r   r›   r›   |   s+   † ñô
Rð ó!ó ð!ô+÷
r   r›   c                  ó�   • \ 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5       r\
SS	 j5       rSS
 jrSS jrSS jrSrg)ÚRequiresPythonRequirementéž   z4A requirement representing Requires-Python metadata.c                óª   • Xl         [        U5      U l        S U l        X l        UR                  UR                  SS9(       a
  US 4U l        g SU l        g )NTr�   ©NN)r‘   r   Ú_specifier_stringrd   Ú
_candidater’   r“   Ú_candidate_lookup)r   r‘   Úmatchs      r   r   Ú"RequiresPythonRequirement.__init__¡   sL   € Ø"ŒÜ!$ Y£ˆÔØ!%ˆŒ
ØŒð ×Ñ˜eŸm™m¸ÐÖ>Ø7<¸d°mˆDÕ"à%1ˆDÕ"r   c                ó    • SU R                    3$ )NzPython )r‘   r   s    r   r   Ú!RequiresPythonRequirement.__str__­   s   € Ø˜Ÿ™Ð(Ð)Ð)r   c                ób   • U R                   R                   S[        U R                  5      < S3$ r"   )r%   r&   r   r‘   r   s    r   r'   Ú"RequiresPythonRequirement.__repr__°   s*   € Ø—.‘.×)Ñ)Ð*¨!¬C°·±Ó,?Ñ+BÀ!ÐDÐDr   c                ó˜   • U R                   b  U R                   $ [        U R                  U R                  45      U l         U R                   $ r   )rd   r*   r­   r®   r   s    r   r+   Ú"RequiresPythonRequirement.__hash__³   s;   € Ø�:‰:Ñ!Ø—:‘:Ðä˜4×1Ñ1°4·?±?ÐCÓDˆŒ
Ø�z‰zÐr   c                ó    • [        U[        5      (       d  gU R                  UR                  :H  =(       a    U R                  UR                  :H  $ r.   )r/   r©   r­   r®   r0   s     r   r2   Ú RequiresPythonRequirement.__eq__º   sC   € Ü˜%Ô!:×;Ñ;Øà×"Ñ" e×&=Ñ&=Ñ=÷ 4Ø—‘ 5×#3Ñ#3Ñ3ð	
r   c                ó.   • U R                   R                  $ r   )r®   r5   r   s    r   r5   Ú&RequiresPythonRequirement.project_nameÂ   s   € à�‰×+Ñ+Ð+r   c                ó.   • U R                   R                  $ r   )r®   r8   r   s    r   r8   ÚRequiresPythonRequirement.nameÆ   s   € à�‰×#Ñ#Ð#r   c                ó   • [        U 5      $ r   ©r   r   s    r   r;   Ú*RequiresPythonRequirement.format_for_errorÊ   ó   € Ü�4‹yÐr   c                ó   • U R                   $ r   )r¯   r   s    r   r>   Ú.RequiresPythonRequirement.get_candidate_lookupÍ   s   € Ø×%Ñ%Ð%r   c                ó    • UR                   U R                  R                   :X  d   S5       eU R                  R                  UR                  SS9$ )NzNot Python candidateTr�   )r8   r®   r‘   r’   r“   r   s     r   rA   Ú)RequiresPythonRequirement.is_satisfied_byÐ   sF   € Ø�~‰~ §¡×!5Ñ!5Ó5ÐMÐ7MÓMÐ5ð �~‰~×&Ñ& y×'8Ñ'8ÀdÐ&ÐKÐKr   )r®   r¯   rd   r­   r‘   N)r‘   r   r°   r   rC   rD   rE   rF   rH   rJ   rK   rL   )r&   rM   rN   rO   r§   r   r   r'   r+   r2   rP   r5   r8   r;   r>   rA   rQ   rR   r   r   r©   r©   ž   sW   † Ù>ô
2ô*ôEôô
ð ó,ó ð,ð ó$ó ð$ôô&÷Lr   r©   c                  ó�   • \ 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5       r\
SS	 j5       rSS
 jrSS jrSS jrSrg)ÚUnsatisfiableRequirementéØ   z'A requirement that cannot be satisfied.c                ó   • Xl         g r   ©Ú_name)r   r8   s     r   r   Ú!UnsatisfiableRequirement.__init__Û   s   € Ø�
r   c                ó    • U R                    S3$ )Nz (unavailable)rÊ   r   s    r   r   Ú UnsatisfiableRequirement.__str__Þ   s   € Ø—*‘*�˜^Ð,Ð,r   c                ób   • U R                   R                   S[        U R                  5      < S3$ r"   )r%   r&   r   rË   r   s    r   r'   Ú!UnsatisfiableRequirement.__repr__á   s)   € Ø—.‘.×)Ñ)Ð*¨!¬C°·
±
«OÑ+>¸aÐ@Ð@r   c                ój   • [        U[        5      (       d  [        $ U R                  UR                  :H  $ r   )r/   rÇ   rv   rË   r0   s     r   r2   ÚUnsatisfiableRequirement.__eq__ä   s)   € Ü˜%Ô!9×:Ñ:Ü!Ð!Ø�z‰z˜UŸ[™[Ñ(Ð(r   c                ó,   • [        U R                  5      $ r   )r*   rË   r   s    r   r+   Ú!UnsatisfiableRequirement.__hash__é   s   € Ü�D—J‘JÓÐr   c                ó   • U R                   $ r   rÊ   r   s    r   r5   Ú%UnsatisfiableRequirement.project_nameì   ó   € à�z‰zÐr   c                ó   • U R                   $ r   rÊ   r   s    r   r8   ÚUnsatisfiableRequirement.nameð   r×   r   c                ó   • [        U 5      $ r   r¿   r   s    r   r;   Ú)UnsatisfiableRequirement.format_for_errorô   rÁ   r   c                ó   • g)Nr¬   rR   r   s    r   r>   Ú-UnsatisfiableRequirement.get_candidate_lookup÷   s   € Ør   c                ó   • gr.   rR   r   s     r   rA   Ú(UnsatisfiableRequirement.is_satisfied_byú   s   € Ør   rÊ   N)r8   r   rC   rD   rE   r˜   rF   rJ   rK   rL   )r&   rM   rN   rO   r§   r   r   r'   r2   r+   rP   r5   r8   r;   r>   rA   rQ   rR   r   r   rÇ   rÇ   Ø   sV   † Ù1ôô-ôAô)ô
 ð óó ðð óó ðôô÷r   rÇ   N)Ú
__future__r   Útypingr   Ú pip._vendor.packaging.specifiersr   Úpip._vendor.packaging.utilsr   r   Úpip._internal.req.constructorsr   Úpip._internal.req.req_installr	   Úbaser   r   r   r   r   rT   r›   r©   rÇ   rR   r   r   Ú<module>rç      sd   ðÝ "å å 9ß Iå BÝ <ç FÓ Fô#+˜+ô #+ôLEB˜;ô EBôPÐ(<ô ôD7L ô 7Lôt#˜{õ #r   