+
    ÞN|j°Q  ã                  ó  € ^ RI Ht ^ RIt^ RIt^ RIHt ^ RIHtHtH	t	H
t
 ^ RIHt ^ RIHtHt ^ RIHt ^ RIHtHtHtHtHtHt ^ R	IHt ^ R
IHtHt ^ RIHt ^ RI H!t!H"t" ^ RI#H$t$ ^ RI%H&t& ^ RI'H(t( ^RI)H*t*H+t+H,t, ]'       d   ^RI-H.t. ]P^                  ! ]04      t1]	R',          t2]
! ]R4      t3R R lt4R(R R llt5R R lt6R R lt7 ! R R]*4      t8 ! R  R]84      t9 ! R! R]84      t: ! R" R]*4      t; ! R# R$]*4      t< ! R% R&]*4      t=R# ))é    )ÚannotationsN)ÚIterable)ÚTYPE_CHECKINGÚAnyÚUnionÚcast)ÚInvalidRequirement)ÚNormalizedNameÚcanonicalize_name)ÚVersion)ÚFailedToPrepareCandidateÚ	HashErrorÚInstallationSubprocessErrorÚInvalidInstalledPackageÚMetadataInconsistentÚMetadataInvalid)ÚBaseDistribution)ÚLinkÚlinks_equivalent)ÚWheel)Úinstall_req_from_editableÚinstall_req_from_line)ÚInstallRequirement)Údirect_url_from_link)Únormalize_version_info)Ú	CandidateÚRequirementÚformat_name)ÚFactoryÚAlreadyInstalledCandidateÚEditableCandidateÚLinkCandidatez<Python from Requires-Python>c               ó    € V ^8„  d   QhRRRR/# )é   Ú	candidater   ÚreturnzBaseCandidate | None© )Úformats   "ÚgC:\Users\alokc\chatbot\backend\venv\Lib\site-packages\pip/_internal/resolution/resolvelib/candidates.pyÚ__annotate__r*   0   s   € ÷ 	ñ 	 ð 	Ð/Cñ 	ó    c                óN   € \         \        \        3p\        W4      '       d   V # R# )z%The runtime version of BaseCandidate.N)r    r!   r"   Ú
isinstance)r%   Úbase_candidate_classess   & r)   Úas_base_candidater/   0   s+   € ô 	"ÜÜðÐô
 �)×4Ò4ØÐÙr+   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r$   Úlinkr   Útemplater   ÚversionúVersion | Noner&   r'   )r(   s   "r)   r*   r*   <   s0   € ÷ ñ Ø
ðà ðð ðð ñ	r+   c           
     ó  € VP                   '       d   Q R 4       hVeA   VP                  '       d/   VP                  '       d   VP                  P                   RV 2pM4VP                  '       d   \	        VP                  4      pMV P
                  p\        VVP                  VP                  VP                  VP                  VP                  VP                  R7      pVP                  Vn        Wn        VP                  Vn        V# )ztemplate is editableú==©Úuser_suppliedÚ
comes_fromÚisolatedÚ
constraintÚhash_optionsÚconfig_settings)ÚeditableÚreqr<   ÚnameÚstrÚurlr   r8   r9   r:   r;   r=   Úoriginal_linkr1   Úextras)r1   r2   r3   ÚlineÚireqs   &&&  r)   Úmake_install_req_from_linkrG   <   sÚ   € ð
 × × Ð Ð8Ð"8Ó8Ð ØÒ˜xŸ|Ÿ|˜|°×0E×0EÐ0Eð —,‘,×#Ñ#Ð$ B w iÐ0‰Ø	��ˆÜ�8—<‘<Ó ‰à�x‰xˆÜ ØØ×,Ñ,Ø×&Ñ&Ø×"Ñ"Ø×&Ñ&Ø×*Ñ*Ø ×0Ñ0ô€Dð "×/Ñ/€DÔØ„IØ—/‘/€D„KØ€Kr+   c               ó$   € V ^8„  d   QhRRRRRR/# )r$   r1   r   r2   r   r&   r'   )r(   s   "r)   r*   r*   Z   s$   € ÷ ñ Ø
ðØ,ðàñr+   c                ó€  € VP                   '       g   Q R 4       hVP                  '       d   VP                   RV P                   2pMV P                  p\        VVP                  VP
                  VP                  VP                  VP                  VP                  VP                  R7      pVP                  Vn        V# )ztemplate not editableú @ )r8   r9   r:   r;   Úpermit_editable_wheelsr<   r=   )r>   r@   rB   r   r8   r9   r:   r;   rK   r<   r=   rD   )r1   r2   Ú
req_stringrF   s   &&  r)   Úmake_install_req_from_editablerM   Z   s¤   € ð ××ÐÐ5Ð5Ó5ÐØ‡}‡}€}Ø Ÿ™� c¨$¯(©(¨Ð4‰
à—X‘Xˆ
Ü$ØØ×,Ñ,Ø×&Ñ&Ø×"Ñ"Ø×&Ñ&Ø'×>Ñ>Ø×*Ñ*Ø ×0Ñ0ô	€Dð —/‘/€D„KØ€Kr+   c               ó$   € V ^8„  d   QhRRRRRR/# )r$   Údistr   r2   r   r&   r'   )r(   s   "r)   r*   r*   p   s$   € ÷ ñ Ø
ðØ&8ðàñr+   c           
     ó¤  € VP                   '       d   \        VP                   4      pMSVP                  '       d'   V P                   R VP                  P                   2pMV P                   RV P
                   2p\        VVP                  VP                  VP                  VP                  VP                  VP                  R7      pWn        V# )rJ   r6   r7   )r?   rA   r1   Úcanonical_namerB   r3   r   r8   r9   r:   r;   r<   r=   Úsatisfied_by)rO   r2   rE   rF   s   &&  r)   Ú_make_install_req_from_distrS   p   s±   € ð ‡|‡|€|Ü�8—<‘<Ó ‰Ø	��ˆØ×%Ñ%Ð& c¨(¯-©-×*;Ñ*;Ð)<Ð=‰à×%Ñ%Ð& b¨¯©¨Ð7ˆÜ ØØ×,Ñ,Ø×&Ñ&Ø×"Ñ"Ø×&Ñ&Ø×*Ñ*Ø ×0Ñ0ô€Dð ÔØ€Kr+   c                  ó
  € ] tR t^†t$ RtR]R&   RtR%R R lltR R	 ltR
 R lt	R R lt
R R lt]R R l4       t]R R l4       t]R R l4       t]R R l4       tR R ltR R ltR R ltR R ltR  R! ltR" R# ltR$tR# )&Ú"_InstallRequirementBackedCandidateaË  A candidate backed by an ``InstallRequirement``.

This represents a package request with the target not being already
in the environment, and needs to be fetched and installed. The backing
``InstallRequirement`` is responsible for most of the leg work; this
class exposes appropriate information to the resolver.

:param link: The link passed to the ``InstallRequirement``. The backing
    ``InstallRequirement`` will use this link to fetch the distribution.
:param source_link: The link this candidate "originates" from. This is
    different from ``link`` when the link is found in the wheel cache.
    ``link`` would point to the wheel cache, while this points to the
    found remote link (e.g. from pypi.org).
r   rO   FNc               ó4   € V ^8„  d   QhRRRRRRRRRR	R
RRR/# )r$   r1   r   Úsource_linkrF   r   Úfactoryr   r@   úNormalizedName | Noner3   r4   r&   ÚNoner'   )r(   s   "r)   r*   Ú/_InstallRequirementBackedCandidate.__annotate__™   sP   € ÷ &ñ &àð&ð ð&ð !ð	&ð
 ð&ð $ð&ð  ð&ð 
ñ&r+   c                	ó†   € Wn         W n        W@n        W0n        WPn        W`n        V P                  4       V n        R V n        R # ©N)	Ú_linkÚ_source_linkÚ_factoryÚ_ireqÚ_nameÚ_versionÚ_preparerO   Ú_hash)Úselfr1   rW   rF   rX   r@   r3   s   &&&&&&&r)   Ú__init__Ú+_InstallRequirementBackedCandidate.__init__™   s7   € ð Œ
Ø'ÔØŒØŒ
ØŒ
ØŒØ—M‘M“OˆŒ	Ø!%ˆŽ
r+   c               ó   € V ^8„  d   QhRR/# ©r$   r&   rA   r'   )r(   s   "r)   r*   r[   «   s   € ÷ -ñ -˜ñ -r+   c                	ó8   € V P                    R V P                   2# )Ú ©r@   r3   ©rf   s   &r)   Ú__str__Ú*_InstallRequirementBackedCandidate.__str__«   s   € Ø—)‘)�˜A˜dŸl™l˜^Ð,Ð,r+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r[   ®   s   € ÷ Añ A˜#ñ Ar+   c                	ób   € V P                   P                   R \        V P                  4      : R2# ©Ú(Ú))Ú	__class__Ú__name__rA   r^   rn   s   &r)   Ú__repr__Ú+_InstallRequirementBackedCandidate.__repr__®   s)   € Ø—.‘.×)Ñ)Ð*¨!¬C°·
±
«OÑ+>¸aÐ@Ð@r+   c               ó   € V ^8„  d   QhRR/# ©r$   r&   Úintr'   )r(   s   "r)   r*   r[   ±   s   € ÷ ñ ˜#ñ r+   c                	óš   € V P                   e   V P                   # \        V P                  V P                  34      V n         V P                   # r]   )re   Úhashrv   r^   rn   s   &r)   Ú__hash__Ú+_InstallRequirementBackedCandidate.__hash__±   s9   € Ø�:‰:Ò!Ø—:‘:Ðä˜4Ÿ>™>¨4¯:©:Ð6Ó7ˆŒ
Ø�z‰zÐr+   c               ó    € V ^8„  d   QhRRRR/# ©r$   Úotherr   r&   Úboolr'   )r(   s   "r)   r*   r[   ¸   ó   € ÷ ñ ˜Cð  Dñ r+   c                	ó|   € \        WP                  4      '       d!   \        V P                  VP                  4      # R # ©F)r-   rv   r   r^   ©rf   rƒ   s   &&r)   Ú__eq__Ú)_InstallRequirementBackedCandidate.__eq__¸   s)   € Ü�eŸ^™^×,Ò,Ü# D§J¡J°·±Ó<Ð<Ùr+   c               ó   € V ^8„  d   QhRR/# ©r$   r&   zLink | Noner'   )r(   s   "r)   r*   r[   ¾   s   € ÷ !ñ !˜[ñ !r+   c                	ó   € V P                   # r]   )r_   rn   s   &r)   rW   Ú._InstallRequirementBackedCandidate.source_link½   ó   € à× Ñ Ð r+   c               ó   € V ^8„  d   QhRR/# ©r$   r&   r
   r'   )r(   s   "r)   r*   r[   Â   s   € ÷ ñ ˜nñ r+   c                ól   € V P                   f   V P                  P                  V n         V P                   # ©z:The normalised name of the project the candidate refers to)rb   rO   rQ   rn   s   &r)   Úproject_nameÚ/_InstallRequirementBackedCandidate.project_nameÁ   s)   € ð �:‰:ÒØŸ™×1Ñ1ˆDŒJØ�z‰zÐr+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r[   É   ó   € ÷ !ñ !�cñ !r+   c                	ó   € V P                   # r]   ©r”   rn   s   &r)   r@   Ú'_InstallRequirementBackedCandidate.nameÈ   r�   r+   c               ó   € V ^8„  d   QhRR/# ©r$   r&   r   r'   )r(   s   "r)   r*   r[   Í   ó   € ÷ ñ ˜ñ r+   c                	ól   € V P                   f   V P                  P                  V n         V P                   # r]   ©rc   rO   r3   rn   s   &r)   r3   Ú*_InstallRequirementBackedCandidate.versionÌ   ó'   € à�=‰=Ò Ø ŸI™I×-Ñ-ˆDŒMØ�}‰}Ðr+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r[   Ò   s   € ÷ 
ñ 
 #ñ 
r+   c                	óä   € V P                    R V P                   RV P                  '       d   RMR V P                  P                  '       d   V P                  P
                  MV P                   R2# )rl   z (from z	editable Ú ru   )r@   r3   Úis_editabler^   Úis_fileÚ	file_pathrn   s   &r)   Úformat_for_errorÚ3_InstallRequirementBackedCandidate.format_for_errorÒ   s_   € à�y‰yˆk˜˜4Ÿ<™<˜.ð )Ø$(×$4×$4Ð$4‘[¸"Ð=Ø'+§z¡z×'9×'9Ð'9ˆt�z‰z×#Ò#¸t¿z¹zÐJÈ!ðMð	
r+   c               ó   € V ^8„  d   QhRR/# ©r$   r&   r   r'   )r(   s   "r)   r*   r[   Ù   s   € ÷ :ñ :Ð'7ñ :r+   c                	ó   € \        R 4      h)zOverride in subclass)ÚNotImplementedErrorrn   s   &r)   Ú_prepare_distributionÚ8_InstallRequirementBackedCandidate._prepare_distributionÙ   s   € Ü!Ð"8Ó9Ð9r+   c               ó    € V ^8„  d   QhRRRR/# )r$   rO   r   r&   rZ   r'   )r(   s   "r)   r*   r[   Ü   s   € ÷ 6ñ 6Ð0@ð 6ÀTñ 6r+   c                óF  € V P                   eH   V P                   VP                  8w  d-   \        V P                  RV P                   VP                  4      hV P                  eZ   V P                  VP
                  8w  d?   \        V P                  R\        V P                  4      \        VP
                  4      4      h \        VP                  \        VP                  4       4      4      4       R#   \         d%   p\        T P                  \        T4      4      hRp?ii ; i)z:Check for consistency of project name and version of dist.Nr@   r3   )rb   rQ   r   ra   rc   r3   rA   ÚlistÚiter_dependenciesÚiter_provided_extrasr	   r   )rf   rO   Úes   && r)   Ú_check_metadata_consistencyÚ>_InstallRequirementBackedCandidate._check_metadata_consistencyÜ   sÙ   € à�:‰:Ò! d§j¡j°D×4GÑ4GÔ&GÜ&Ø—
‘
ØØ—
‘
Ø×#Ñ#ó	ð ð �=‰=Ò$¨¯©¸$¿,¹,Ô)FÜ&Ø—
‘
ØÜ�D—M‘MÓ"Ü�D—L‘LÓ!ó	ð ð	6Ü�×'Ñ'¬¨T×-FÑ-FÓ-HÓ(IÓJÖKøÜ!ô 	6Ü! $§*¡*¬c°!«fÓ5Ð5ûð	6ús   Â>1C1 Ã1D Ã<DÄD c               ó   € V ^8„  d   QhRR/# r«   r'   )r(   s   "r)   r*   r[   ô   s   € ÷ ñ Ð*ñ r+   c                	ó  €  V P                  4       pT P                  T4       T#   \         d   pT P                  Tn        h R p?i\         dº   p\        T P                  P                  \        4      '       d&   T P                  P                  P                  4       pMT P                  P                  pTf   Rp\        T P                  P                  ;'       g    \        T P                  4      TTP                  R7      hR p?ii ; i)Nzdirectly requested)Úpackage_nameÚrequirement_chainÚfailed_step)r®   r   ra   r?   r   r-   r9   r   Ú	from_pathr   r@   rA   r^   Úcommand_descriptionr¶   )rf   rO   rµ   ÚexcÚrequest_chains   &    r)   rd   Ú+_InstallRequirementBackedCandidate._prepareô   sÓ   € ð	Ø×-Ñ-Ó/ˆDð, 	×(Ñ(¨Ô.Øˆøô- ô 	ð —J‘JˆAŒEØûÜ*ô 	Ü˜$Ÿ*™*×/Ñ/Ô1C×DÒDØ $§
¡
× 5Ñ 5× ?Ñ ?Ó A‘à $§
¡
× 5Ñ 5�àÒ$Ø 4�ä*Ø!ŸZ™ZŸ_™_×?Ð?´°D·J±J³Ø"/Ø×3Ñ3ôð ûð	ús-   ‚% ¥D	°AÁD	ÁD	ÁBDÃ'DÄD	c               ó    € V ^8„  d   QhRRRR/# ©r$   Úwith_requiresr„   r&   zIterable[Requirement | None]r'   )r(   s   "r)   r*   r[     s   € ÷ Uñ U¨tð UÐ8Tñ Ur+   c              #  	ó<  "  € V P                   P                  V P                  P                  4      x € V'       d   V P                  P	                  4       MRpV F:  pV P                   P                  \        V4      V P                  4       R j  x€L
  K<  	  R #  L
5i©Nr'   )r`   Ú make_requires_python_requirementrO   Úrequires_pythonr³   Úmake_requirements_from_specrA   ra   )rf   rÄ   ÚrequiresÚrs   &&  r)   r³   Ú4_InstallRequirementBackedCandidate.iter_dependencies  sk   é € ð �m‰m×<Ñ<¸T¿Y¹Y×=VÑ=VÓWÒWß4A�4—9‘9×.Ñ.Ô0ÀrˆÛˆAØ—}‘}×@Ñ@ÄÀQÃÈÏÉÓT×TÒTó ÙTùs   ‚BBÂBÂBc               ó   € V ^8„  d   QhRR/# ©r$   r&   úInstallRequirement | Noner'   )r(   s   "r)   r*   r[     s   € ÷ ñ Ð)Bñ r+   c                	ó   € V P                   # r]   )ra   rn   s   &r)   Úget_install_requirementÚ:_InstallRequirementBackedCandidate.get_install_requirement  s   € Ø�z‰zÐr+   )r`   re   ra   r^   rb   r_   rc   rO   ©NN)rw   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__annotations__Úis_installedrg   ro   rx   r   r‰   ÚpropertyrW   r”   r@   r3   r¨   r®   r¶   rd   r³   rÑ   Ú__static_attributes__r'   r+   r)   rU   rU   †   s¢   ‡ ñð ÓØ€L÷&õ$-õAõõð
 ô!ó ð!ð ôó ðð ô!ó ð!ð ôó ðõ

õ:õ6õ0õ6U÷ñ r+   rU   c                  óB   a € ] tR tRtRtRR V 3R llltR R ltRtV ;t# )	r"   i  Fc               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# ©r$   r1   r   r2   r   rX   r   r@   rY   r3   r4   r&   rZ   r'   )r(   s   "r)   r*   ÚLinkCandidate.__annotate__  sF   € ÷ /
ñ /
àð/
ð %ð/
ð ð	/
ð
 $ð/
ð  ð/
ð 
ñ/
r+   c           	     	ó¢  <€ TpVP                  Wd4      pVe-   \        P                  RVP                  4       VP                  p\	        WVR7      pVP                  V8X  g   Q hVP                  P
                  '       d�   VP                  P                  '       gq   \        VP                  P                  4      p	V	P                  p
WJ8X  g   Q V: RV
: R24       hVe-   \        V	P                  4      pW[8X  g   Q V: RV: RV 24       hVeª   VP                  P
                  '       g   Q hVP                  P                  '       g   Q hVP                  '       d!   VP                  VP                  J d   Whn        VP                  e   VP                  Vn        M\#        WgP                  R7      Vn        \$        SV `M  VVVVVVR7       R # )NzUsing cached wheel link: %s©r3   z != z
 for wheelz for wheel )Úlink_is_in_wheel_cache©r1   rW   rF   rX   r@   r3   )Úget_wheel_cache_entryÚloggerÚdebugr1   rG   Úis_wheelr¦   r   Úfilenamer@   r   r3   Ú
persistentrC   Úcached_wheel_source_linkÚoriginÚdownload_infor   Úsuperrg   )rf   r1   r2   rX   r@   r3   rW   Úcache_entryrF   ÚwheelÚ
wheel_nameÚwheel_versionrv   s   &&&&&&      €r)   rg   ÚLinkCandidate.__init__  s¥  ø€ ð ˆØ×3Ñ3°KÓFˆØÒ"Ü�L‰LÐ6¸×8HÑ8HÔIØ×#Ñ#ˆDÜ)¨$À'ÔJˆØ�y‰y˜DÔ Ð Ð Ø�9‰9××Ð d§i¡i×&7×&7Ð&7Ü˜$Ÿ)™)×,Ñ,Ó-ˆEØŸ™ˆJØÔ%ÐN¨$©°°j±^À:Ð'NÓNÐ%àÒ"Ü '¨¯©Ó 6�àÔ,ðHà‘[  ]Ñ$5°[ÀÀÐGóHØ,ð Ò"Ø—9‘9×%×%Ð%Ð%Ð%Ø—9‘9×$×$Ð$Ð$Ð$Ø×%×%Ð%¨(¯-©-¸8×;QÑ;QÓ*QØ0;Ô-Ø×!Ñ!Ò-Ø%0×%7Ñ%7�Õ"ô &:Ø×8NÑ8Nô&�Ô"ô 	‰ÑØØ#ØØØØð 	ö 	
r+   c               ó   € V ^8„  d   QhRR/# r«   r'   )r(   s   "r)   r*   rß   O  s   € ÷ Uñ UÐ'7ñ Ur+   c                	óh   € V P                   P                  pVP                  V P                  R R7      # )T)Úparallel_builds)r`   ÚpreparerÚprepare_linked_requirementra   )rf   rö   s   & r)   r®   Ú#LinkCandidate._prepare_distributionO  s+   € Ø—=‘=×)Ñ)ˆØ×2Ñ2°4·:±:ÈtÐ2ÓTÐTr+   r'   rÓ   ©	rw   rÔ   rÕ   rÖ   r¥   rg   r®   rÛ   Ú__classcell__©rv   s   @r)   r"   r"     s   ø† Ø€K÷/
ò /
÷bUó Ur+   c                  óB   a € ] tR tRtRtRR V 3R llltR R ltRtV ;t# )	r!   iT  Tc               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# rÞ   r'   )r(   s   "r)   r*   ÚEditableCandidate.__annotate__W  sF   € ÷ 
ñ 
àð
ð %ð
ð ð	
ð
 $ð
ð  ð
ð 
ñ
r+   c           	     	óD   <€ \         SV `  VV\        W4      VVVR 7       R# )rã   N)rí   rg   rM   )rf   r1   r2   rX   r@   r3   rv   s   &&&&&&€r)   rg   ÚEditableCandidate.__init__W  s.   ø€ ô 	‰ÑØØÜ/°Ó?ØØØð 	ö 	
r+   c               ó   € V ^8„  d   QhRR/# r«   r'   )r(   s   "r)   r*   rþ   h  s   € ÷ Oñ OÐ'7ñ Or+   c                	ó`   € V P                   P                  P                  V P                  4      # r]   )r`   rö   Úprepare_editable_requirementra   rn   s   &r)   r®   Ú'EditableCandidate._prepare_distributionh  s!   € Ø�}‰}×%Ñ%×BÑBÀ4Ç:Á:ÓNÐNr+   r'   rÓ   rù   rû   s   @r)   r!   r!   T  s   ø† Ø€K÷
ò 
÷"Oó Or+   c                  óÖ   € ] tR tRtRtRtR R ltR R ltR R	 ltR
 R lt	R R lt
]R R l4       t]R R l4       t]R R l4       t]R R l4       tR R ltR R ltR R ltRtR# )r    il  TNc               ó(   € V ^8„  d   QhRRRRRRRR/# )	r$   rO   r   r2   r   rX   r   r&   rZ   r'   )r(   s   "r)   r*   Ú&AlreadyInstalledCandidate.__annotate__p  s8   € ÷ Pñ PàðPð %ðPð ð	Pð
 
ñPr+   c                	óœ   € Wn         \        W4      V n        W0n        R V n        RpVP
                  P                  V P                  V4       R # )Nzalready satisfied)rO   rS   ra   r`   rc   rö   Úprepare_installed_requirement)rf   rO   r2   rX   Úskip_reasons   &&&& r)   rg   Ú"AlreadyInstalledCandidate.__init__p  sB   € ð Œ	Ü0°Ó@ˆŒ
ØŒØˆŒð *ˆØ×Ñ×6Ñ6°t·z±zÀ;ÖOr+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r  ‚  s   € ÷ ñ ˜ñ r+   c                	ó,   € \        V P                  4      # r]   )rA   rO   rn   s   &r)   ro   Ú!AlreadyInstalledCandidate.__str__‚  s   € Ü�4—9‘9‹~Ðr+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r  …  s   € ÷ ;ñ ;˜#ñ ;r+   c                	óP   € V P                   P                   R V P                  : R2# rs   )rv   rw   rO   rn   s   &r)   rx   Ú"AlreadyInstalledCandidate.__repr__…  s$   € Ø—.‘.×)Ñ)Ð*¨!¨D¯I©I©=¸Ð:Ð:r+   c               ó    € V ^8„  d   QhRRRR/# )r$   rƒ   Úobjectr&   r„   r'   )r(   s   "r)   r*   r  ˆ  s   € ÷ Iñ I˜Fð I tñ Ir+   c                	ó®   € \        V\        4      '       g   \        # V P                  VP                  8H  ;'       d    V P                  VP                  8H  # r]   )r-   r    ÚNotImplementedr@   r3   rˆ   s   &&r)   r‰   Ú AlreadyInstalledCandidate.__eq__ˆ  s>   € Ü˜%Ô!:×;Ò;Ü!Ð!Ø�y‰y˜EŸJ™JÑ&×HÐH¨4¯<©<¸5¿=¹=Ñ+HÐHr+   c               ó   € V ^8„  d   QhRR/# r{   r'   )r(   s   "r)   r*   r  �  s   € ÷ /ñ /˜#ñ /r+   c                	óD   € \        V P                  V P                  34      # r]   )r~   r@   r3   rn   s   &r)   r   Ú"AlreadyInstalledCandidate.__hash__�  s   € Ü�T—Y‘Y §¡Ð-Ó.Ð.r+   c               ó   € V ^8„  d   QhRR/# r‘   r'   )r(   s   "r)   r*   r  ‘  s   € ÷ (ñ (˜nñ (r+   c                	ó.   € V P                   P                  # r]   )rO   rQ   rn   s   &r)   r”   Ú&AlreadyInstalledCandidate.project_name�  s   € à�y‰y×'Ñ'Ð'r+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r  •  r—   r+   c                	ó   € V P                   # r]   r™   rn   s   &r)   r@   ÚAlreadyInstalledCandidate.name”  r�   r+   c               ó   € V ^8„  d   QhRR/# rœ   r'   )r(   s   "r)   r*   r  ™  r�   r+   c                	ól   € V P                   f   V P                  P                  V n         V P                   # r]   rŸ   rn   s   &r)   r3   Ú!AlreadyInstalledCandidate.version˜  r¡   r+   c               ó   € V ^8„  d   QhRR/# ©r$   r&   r„   r'   )r(   s   "r)   r*   r  Ÿ  s   € ÷ "ñ "˜Tñ "r+   c                	ó.   € V P                   P                  # r]   )rO   r>   rn   s   &r)   r¥   Ú%AlreadyInstalledCandidate.is_editablež  s   € à�y‰y×!Ñ!Ð!r+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r  ¢  s   € ÷ 9ñ 9 #ñ 9r+   c                	ó:   € V P                    R V P                   R2# )rl   z (Installed)rm   rn   s   &r)   r¨   Ú*AlreadyInstalledCandidate.format_for_error¢  s   € Ø—)‘)�˜A˜dŸl™l˜^¨<Ð8Ð8r+   c               ó    € V ^8„  d   QhRRRR/# rÃ   r'   )r(   s   "r)   r*   r  ¥  s   € ÷ Uñ U¨tð UÐ8Tñ Ur+   c              #  	ó.  "  € V'       g   R #  V P                   P                  4        F:  pV P                  P                  \	        V4      V P
                  4       R j  x€L
  K<  	  R #  L
  \         d   p\        T P                   TR7      R hR p?ii ; i5i)N)rO   Úinvalid_exc)rO   r³   r`   rÉ   rA   ra   r	   r   )rf   rÄ   rË   r¿   s   &&  r)   r³   Ú+AlreadyInstalledCandidate.iter_dependencies¥  sr   é € ßÙð	UØ—Y‘Y×0Ñ0Ö2�ØŸ=™=×DÑDÄSÈÃVÈTÏZÉZÓX×XÒXó 3ÙXøÜ!ô 	UÜ)¨t¯y©yÀcÔJÐPTÐTûð	Uüs;   ‚BŽAA* ÁA(ÁA* Á&BÁ(A* Á*BÁ5BÂBÂBc               ó   € V ^8„  d   QhRR/# rÎ   r'   )r(   s   "r)   r*   r  ¯  ó   € ÷ ñ Ð)Bñ r+   c                	ó   € R # r]   r'   rn   s   &r)   rÑ   Ú1AlreadyInstalledCandidate.get_install_requirement¯  ó   € Ùr+   )r`   ra   rc   rO   )rw   rÔ   rÕ   rÖ   rÙ   rW   rg   ro   rx   r‰   r   rÚ   r”   r@   r3   r¥   r¨   r³   rÑ   rÛ   r'   r+   r)   r    r    l  sŒ   † Ø€LØ€KõPõ$õ;õIõ
/ð ô(ó ð(ð ô!ó ð!ð ôó ðð
 ô"ó ð"õ9õU÷ñ r+   c                  ó  € ] tR tRtRtRR/R R lltR R ltR	 R
 ltR R ltR R lt	]
R R l4       t]
R R l4       t]
R R l4       tR R lt]
R R l4       t]
R R l4       t]
R R l4       tR R ltR R  ltR!tR# )"ÚExtrasCandidatei³  a¥  A candidate that has 'extras', indicating additional dependencies.

Requirements can be for a project with dependencies, something like
foo[extra].  The extras don't affect the project/version being installed
directly, but indicate that we need additional dependencies. We model that
by having an artificial ExtrasCandidate that wraps the "base" candidate.

The ExtrasCandidate differs from the base in the following ways:

1. It has a unique name, of the form foo[extra]. This causes the resolver
   to treat it as a separate node in the dependency graph.
2. When we're getting the candidate's dependencies,
   a) We specify that we want the extra dependencies as well.
   b) We add a dependency on the base candidate.
      See below for why this is needed.
3. We return None for the underlying InstallRequirement, as the base
   candidate will provide it, and we don't want to end up with duplicates.

The dependency on the base candidate is needed so that the resolver can't
decide that it should recommend foo[extra1] version 1.0 and foo[extra2]
version 2.0. Having those candidates depend on foo=1.0 and foo=2.0
respectively forces the resolver to recognise that this is a conflict.
r9   Nc               ó(   € V ^8„  d   QhRRRRRRRR/# )	r$   ÚbaseÚBaseCandidaterD   zfrozenset[str]r9   rÏ   r&   rZ   r'   )r(   s   "r)   r*   ÚExtrasCandidate.__annotate__Ì  s8   € ÷ Uñ UàðUð ðUð
 .ðUð 
ñUr+   c               óŽ   € Wn         \        R V 4       4      V n        Ve	   W0n        R# V P                   P                  V n        R# )a‡  
:param comes_from: the InstallRequirement that led to this candidate if it
    differs from the base's InstallRequirement. This will often be the
    case in the sense that this candidate's requirement has the extras
    while the base's does not. Unlike the InstallRequirement backed
    candidates, this requirement is used solely for reporting purposes,
    it does not do any leg work.
c              3  ó8   "  € T F  p\        V4      x € K  	  R # 5ir]   )r   )Ú.0rµ   s   & r)   Ú	<genexpr>Ú+ExtrasCandidate.__init__.<locals>.<genexpr>Ü  s   é € ÐE¹f¸Ô 1°!× 4Ð 4»fùó   ‚N)r6  Ú	frozensetrD   ra   Ú_comes_from)rf   r6  rD   r9   s   &&&$r)   rg   ÚExtrasCandidate.__init__Ì  s5   € ð Œ	ÜÑE¹fÓEÓEˆŒØ)3Ò)?˜:ÖÀTÇYÁYÇ_Á_ˆÖr+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r8  ß  s   € ÷ Eñ E˜ñ Er+   c                	ó¨   € \        V P                  4      P                  R ^4      w  rRP                  VRP	                  V P
                  4      V4      # )rl   z	{}[{}] {}Ú,)rA   r6  Úsplitr(   ÚjoinrD   )rf   r@   Úrests   &  r)   ro   ÚExtrasCandidate.__str__ß  s@   € Ü˜Ÿ™“^×)Ñ)¨#¨qÓ1‰
ˆØ×!Ñ! $¨¯©°·±Ó(=¸tÓDÐDr+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r8  ã  s   € ÷ Xñ X˜#ñ Xr+   c                	ól   € V P                   P                   R V P                  : RV P                  : R2# )z(base=z	, extras=ru   )rv   rw   r6  rD   rn   s   &r)   rx   ÚExtrasCandidate.__repr__ã  s/   € Ø—.‘.×)Ñ)Ð*¨&°·±±¸YÀtÇ{Á{ÁoÐUVÐWÐWr+   c               ó   € V ^8„  d   QhRR/# r{   r'   )r(   s   "r)   r*   r8  æ  s   € ÷ .ñ .˜#ñ .r+   c                	óD   € \        V P                  V P                  34      # r]   )r~   r6  rD   rn   s   &r)   r   ÚExtrasCandidate.__hash__æ  s   € Ü�T—Y‘Y §¡Ð,Ó-Ð-r+   c               ó    € V ^8„  d   QhRRRR/# r‚   r'   )r(   s   "r)   r*   r8  é  r…   r+   c                	ó°   € \        WP                  4      '       d;   V P                  VP                  8H  ;'       d    V P                  VP                  8H  # R # r‡   )r-   rv   r6  rD   rˆ   s   &&r)   r‰   ÚExtrasCandidate.__eq__é  s<   € Ü�eŸ^™^×,Ò,Ø—9‘9 §
¡
Ñ*×JÐJ¨t¯{©{¸e¿l¹lÑ/JÐJÙr+   c               ó   € V ^8„  d   QhRR/# r‘   r'   )r(   s   "r)   r*   r8  ï  s   € ÷ &ñ &˜nñ &r+   c                	ó.   € V P                   P                  # r]   )r6  r”   rn   s   &r)   r”   ÚExtrasCandidate.project_nameî  ó   € à�y‰y×%Ñ%Ð%r+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r8  ó  s   € ÷ @ñ @�cñ @r+   c                óV   € \        V P                  P                  V P                  4      # r“   )r   r6  r”   rD   rn   s   &r)   r@   ÚExtrasCandidate.nameò  s   € ô ˜4Ÿ9™9×1Ñ1°4·;±;Ó?Ð?r+   c               ó   € V ^8„  d   QhRR/# rœ   r'   )r(   s   "r)   r*   r8  ø  s   € ÷ !ñ !˜ñ !r+   c                	ó.   € V P                   P                  # r]   )r6  r3   rn   s   &r)   r3   ÚExtrasCandidate.version÷  s   € à�y‰y× Ñ Ð r+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r8  û  s   € ÷ 
ñ 
 #ñ 
r+   c                	óš   € R P                  V P                  P                  4       RP                  \	        V P
                  4      4      4      # )z{} [{}]z, )r(   r6  r¨   rF  ÚsortedrD   rn   s   &r)   r¨   Ú ExtrasCandidate.format_for_errorû  s9   € Ø×ÑØ�I‰I×&Ñ&Ó(¨$¯)©)´F¸4¿;¹;Ó4GÓ*Hó
ð 	
r+   c               ó   € V ^8„  d   QhRR/# r$  r'   )r(   s   "r)   r*   r8    s   € ÷ &ñ &˜dñ &r+   c                	ó.   € V P                   P                  # r]   )r6  rÙ   rn   s   &r)   rÙ   ÚExtrasCandidate.is_installed   rU  r+   c               ó   € V ^8„  d   QhRR/# r$  r'   )r(   s   "r)   r*   r8    s   € ÷ %ñ %˜Tñ %r+   c                	ó.   € V P                   P                  # r]   )r6  r¥   rn   s   &r)   r¥   ÚExtrasCandidate.is_editable  ó   € à�y‰y×$Ñ$Ð$r+   c               ó   € V ^8„  d   QhRR/# rŒ   r'   )r(   s   "r)   r*   r8  	  s   € ÷ %ñ %˜[ñ %r+   c                	ó.   € V P                   P                  # r]   )r6  rW   rn   s   &r)   rW   ÚExtrasCandidate.source_link  rf  r+   c               ó    € V ^8„  d   QhRRRR/# rÃ   r'   )r(   s   "r)   r*   r8    s   € ÷ ñ ¨tð Ð8Tñ r+   c              #  	óÄ  "  € V P                   P                  pVP                  V P                   4      x € V'       g   R # V P                  P	                  V P                   P
                  P                  4       4      pV P                  P                  V P                   P
                  P                  4       4      p\        V4       F9  p\        P                  RV P                   P                  V P                  V4       K;  	  V P                   P
                  P                  V4       F1  pVP                  \        V4      V P                   V4       R j  x€L
  K3  	  R #  L
5i)Nz%%s %s does not provide the extra '%s')r6  r`   Úmake_requirement_from_candidaterD   ÚintersectionrO   r´   Ú
differencer^  rå   Úwarningr@   r3   r³   rÉ   rA   r@  )rf   rÄ   rX   Úvalid_extrasÚinvalid_extrasÚextrarË   s   &&     r)   r³   Ú!ExtrasCandidate.iter_dependencies  s   é € Ø—)‘)×$Ñ$ˆð ×5Ñ5°d·i±iÓ@Ò@ßÙð —{‘{×/Ñ/°·	±	·±×0SÑ0SÓ0UÓVˆØŸ™×/Ñ/°·	±	·±×0SÑ0SÓ0UÓVˆÜ˜NÖ+ˆEÜ�N‰NØ7Ø—	‘	—‘Ø—‘Øö	ñ ,ð —‘—‘×1Ñ1°,Ö?ˆAØ×:Ñ:Ü�A“Ø× Ñ Øó÷ ò ó @ñùs   ‚EE ÅEÅE c               ó   € V ^8„  d   QhRR/# rÎ   r'   )r(   s   "r)   r*   r8  (  s   € ÷ ñ Ð)Bñ r+   c                	ó   € R # r]   r'   rn   s   &r)   rÑ   Ú'ExtrasCandidate.get_install_requirement(  s   € ñ r+   )r@  r6  rD   )rw   rÔ   rÕ   rÖ   r×   rg   ro   rx   r   r‰   rÚ   r”   r@   r3   r¨   rÙ   r¥   rW   r³   rÑ   rÛ   r'   r+   r)   r4  r4  ³  s¼   † ñð0Uð
 15÷Uõ&EõXõ.õð
 ô&ó ð&ð ô@ó ð@ð ô!ó ð!õ
ð
 ô&ó ð&ð ô%ó ð%ð ô%ó ð%õ÷8ñ r+   r4  c                  ó¨   € ] tR tRtRtRtR R ltR R ltR R	 lt]	R
 R l4       t
]	R R l4       t]	R R l4       tR R ltR R ltR R ltRtR# )ÚRequiresPythonCandidatei/  FNc               ó    € V ^8„  d   QhRRRR/# )r$   Úpy_version_infoztuple[int, ...] | Noner&   rZ   r'   )r(   s   "r)   r*   Ú$RequiresPythonCandidate.__annotate__3  s   € ÷ Hñ HÐ(>ð HÀ4ñ Hr+   c                	ó    € Ve   \        V4      pM\        P                  R,          p\        RP	                  R V 4       4      4      V n        R # )N:Né   NÚ.c              3  ó8   "  € T F  p\        V4      x € K  	  R # 5ir]   )rA   )r;  Úcs   & r)   r<  Ú3RequiresPythonCandidate.__init__.<locals>.<genexpr>8  s   é € Ð(F¹°A¬¨Q¯¨»ùr>  )r   ÚsysÚversion_infor   rF  rc   )rf   rz  rƒ  s   && r)   rg   Ú RequiresPythonCandidate.__init__3  s=   € ØÒ&Ü1°/ÓB‰Lä×+Ñ+¨BÕ/ˆLÜ §¡Ñ(F¹Ó(FÓ FÓGˆŽr+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r{  >  s   € ÷ )ñ )˜ñ )r+   c                	ó    € R V P                    2# ©zPython ©rc   rn   s   &r)   ro   ÚRequiresPythonCandidate.__str__>  s   € Ø˜Ÿ™˜Ð(Ð(r+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r{  A  s   € ÷ ?ñ ?˜#ñ ?r+   c                	óP   € V P                   P                   R V P                  : R2# rs   )rv   rw   rc   rn   s   &r)   rx   Ú RequiresPythonCandidate.__repr__A  s%   € Ø—.‘.×)Ñ)Ð*¨!¨D¯M©MÑ+<¸AÐ>Ð>r+   c               ó   € V ^8„  d   QhRR/# r‘   r'   )r(   s   "r)   r*   r{  E  s   € ÷ *ñ *˜nñ *r+   c                	ó   € \         # r]   ©ÚREQUIRES_PYTHON_IDENTIFIERrn   s   &r)   r”   Ú$RequiresPythonCandidate.project_nameD  ó   € ä)Ð)r+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r{  I  s   € ÷ *ñ *�cñ *r+   c                	ó   € \         # r]   r�  rn   s   &r)   r@   ÚRequiresPythonCandidate.nameH  r’  r+   c               ó   € V ^8„  d   QhRR/# rœ   r'   )r(   s   "r)   r*   r{  M  s   € ÷ ñ ˜ñ r+   c                	ó   € V P                   # r]   rˆ  rn   s   &r)   r3   ÚRequiresPythonCandidate.versionL  s   € à�}‰}Ðr+   c               ó   € V ^8„  d   QhRR/# rj   r'   )r(   s   "r)   r*   r{  P  s   € ÷ (ñ ( #ñ (r+   c                	ó    € R V P                    2# r‡  rá   rn   s   &r)   r¨   Ú(RequiresPythonCandidate.format_for_errorP  s   € Ø˜Ÿ™˜Ð'Ð'r+   c               ó    € V ^8„  d   QhRRRR/# rÃ   r'   )r(   s   "r)   r*   r{  S  s   € ÷ ñ ¨tð Ð8Tñ r+   c                	ó   € R# rÆ   r'   )rf   rÄ   s   &&r)   r³   Ú)RequiresPythonCandidate.iter_dependenciesS  s   € Øˆ	r+   c               ó   € V ^8„  d   QhRR/# rÎ   r'   )r(   s   "r)   r*   r{  V  r/  r+   c                	ó   € R # r]   r'   rn   s   &r)   rÑ   Ú/RequiresPythonCandidate.get_install_requirementV  r2  r+   rˆ  )rw   rÔ   rÕ   rÖ   rÙ   rW   rg   ro   rx   rÚ   r”   r@   r3   r¨   r³   rÑ   rÛ   r'   r+   r)   rx  rx  /  sl   † Ø€LØ€KõHõ)õ?ð ô*ó ð*ð ô*ó ð*ð ôó ðõ(õ÷ñ r+   rx  )r    r!   r"   r]   )>Ú
__future__r   Úloggingr‚  Úcollections.abcr   Útypingr   r   r   r   Ú"pip._vendor.packaging.requirementsr	   Úpip._vendor.packaging.utilsr
   r   Úpip._vendor.packaging.versionr   Úpip._internal.exceptionsr   r   r   r   r   r   Úpip._internal.metadatar   Úpip._internal.models.linkr   r   Úpip._internal.models.wheelr   Úpip._internal.req.constructorsr   r   Úpip._internal.req.req_installr   Ú&pip._internal.utils.direct_url_helpersr   Úpip._internal.utils.miscr   r6  r   r   r   rX   r   Ú	getLoggerrw   rå   r7  r�  r/   rG   rM   rS   rU   r"   r!   r    r4  rx  r'   r+   r)   Ú<module>r²     sì   ðÝ "ã Û 
Ý $ß 2Ó 2å Aß IÝ 1÷÷ õ 4ß <Ý ,÷õ =Ý GÝ ;ç 5Ñ 5çÝ à	×	Ò	˜8Ó	$€àðõ€ñ " .Ð2QÓRÐ õ	÷õ<õ,ô,R¨ô Rôj6UÐ6ô 6UôrOÐ:ô Oô0D 	ô DôNy�iô yôx(˜iö (r+   