+
    )O|j}-  ã                  ó´  € ^ RI Ht ^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	H
t
HtHt ]	'       d/   ^ RIt^ RIHt ^ RIHt ]P                   R-8¼  d   ^ RIHt M^ RIHt . R.OtR R lt]! R4      t ! R R]4      t]! R]R7      tR R ltR R ltR R ltR R lt]P8                  ! R4      tR R ltR R  ltR! R" lt  ! R# R]!4      t" ! R$ R%]"4      t#]PH                  ! R&R'R(7       ! R) R4      4       t%]PH                  ! R&R'R(7       ! R* R4      4       t&]PH                  ! R&R'R(7       ! R+ R	4      4       t']PH                  ! R&R'R(7       ! R, R
4      4       t(R# )/é    )ÚannotationsN)ÚMapping)ÚTYPE_CHECKINGÚAnyÚProtocolÚTypeVar)Ú
Collection)ÚSplitResult)ÚSelfÚArchiveInfoÚDirInfoÚ	DirectUrlÚDirectUrlValidationErrorÚVcsInfoc               ó   € V ^8„  d   QhRR/# )é   Úreturnz	list[str]© )Úformats   "ÚMC:\Users\alokc\chatbot\backend\venv\Lib\site-packages\packaging/direct_url.pyÚ__annotate__r      s   € ÷ ñ �ñ ó    c                 ó   € \         # ©N)Ú__all__r   r   r   Ú__dir__r      s   € Ü€Nr   Ú_Tc                  ó,   € ] tR t^#t]R R l4       tRtR# )Ú_FromMappingProtocolc               ó    € V ^8„  d   QhRRRR/# ©r   ÚdúMapping[str, Any]r   r   r   )r   s   "r   r   Ú!_FromMappingProtocol.__annotate__%   s   € ×:Ñ:Ð,Ð:°Ñ:r   c                	ó   € R # r   r   ©Úclsr"   s   &&r   Ú
_from_dictÚ_FromMappingProtocol._from_dict$   s   € Ù7:r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Úclassmethodr(   Ú__static_attributes__r   r   r   r   r   #   s   † ØÜ:ó Ü:r   r   Ú_FromMappingProtocolT)Úboundc               ó    € V ^8„  d   QhRRRR/# )r   Údatazlist[tuple[str, Any]]r   zdict[str, Any]r   )r   s   "r   r   r   +   s   € ÷ Dñ DÐ2ð D°~ñ Dr   c                óF   € V  UUu/ uF  w  rVf   K  WbK  	  upp# u uppi r   r   )r3   ÚkeyÚvalues   &  r   Ú_json_dict_factoryr7   +   s"   € Ù)-ÔC©™:˜3°ŒJˆCŠJ©ÒCÐCùÓCs   †“c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   r"   r#   Úexpected_typeútype[_T]r5   Ústrr   z	_T | Noner   )r   s   "r   r   r   /   s)   € ÷ 
ñ 
Ðð 
¨hð 
¸Sð 
ÀYñ 
r   c                ó¸   € V P                  V4      ;pf   R# \        W14      '       g2   \        R\        V4      P                   RVP                   R2VR7      hV# )zBGet a value from the dictionary and verify it's the expected type.NzUnexpected type z (expected Ú)©Úcontext)ÚgetÚ
isinstancer   Útyper*   ©r"   r9   r5   r6   s   &&& r   Ú_getrD   /   sd   € à—‘�s“ÐˆÒ$ÙÜ�e×+Ò+Ü&Øœt E›{×3Ñ3Ð4ð 5Ø&×/Ñ/Ð0°ð3àô
ð 	
ð
 €Lr   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   r"   r#   r9   r:   r5   r;   r   r   r   )r   s   "r   r   r   <   s)   € ÷ ñ Ð&ð °xð Àcð Èbñ r   c                ó<   € \        WV4      ;pf   \        V4      hV# )zKGet a required value from the dictionary and verify it's the expected type.)rD   Ú_DirectUrlRequiredKeyErrorrC   s   &&& r   Ú_get_requiredrH   <   s$   € ä�a¨Ó,Ð,ˆÒ5Ü(¨Ó-Ð-Ø€Lr   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   r"   r#   Útarget_typeztype[_FromMappingProtocolT]r5   r;   r   z_FromMappingProtocolT | Noner   )r   s   "r   r   r   C   s,   € ÷ 	>ñ 	>Øð	>Ø'Bð	>ØILð	>à!ñ	>r   c                ó”   € \        V \        V4      ;pf   R#  VP                  V4      #   \         d   p\	        YBR7      ThRp?ii ; i)zIGet a dictionary value from the dictionary and convert it to a dataclass.Nr>   )rD   r   r(   Ú	Exceptionr   )r"   rJ   r5   r6   Úes   &&&  r   Ú_get_objectrN   C   sN   € ô �aœ #Ó&Ð&ˆÒ/Ùð>Ø×%Ñ% eÓ,Ð,øÜô >Ü& qÔ6¸AÐ=ûð>ús   ™* ªAµAÁAz.^\$\{[A-Za-z0-9-_]+\}(:\$\{[A-Za-z0-9-_]+\})?$c               ó$   € V ^8„  d   QhRRRRRR/# )r   Únetlocr;   Úsafe_user_passwordsúCollection[str]r   r   )r   s   "r   r   r   T   s"   € ÷ ñ  Cð ¸oð ÐRUñ r   c                óŠ   € R V 9  d   V # V P                  R ^4      w  r#W!9   d   V # \        P                  V4      '       d   V # V# )Ú@)ÚrsplitÚ _PEP610_USER_PASS_ENV_VARS_REGEXÚmatch)rP   rQ   Ú	user_passÚnetloc_no_user_passs   &&  r   Ú_strip_auth_from_netlocrZ   T   sI   € Ø
�&ÔØˆØ%+§]¡]°3¸Ó%:Ñ"€IØÔ'ØˆÜ'×-Ñ-¨i×8Ò8ØˆØÐr   c               ó$   € V ^8„  d   QhRRRRRR/# )r   Úurlr;   rQ   rR   r   r   )r   s   "r   r   r   _   s!   € ÷ ñ �Cð ¨oð À#ñ r   c                ó  € \         P                  P                  V 4      p\        VP                  V4      p\         P                  P                  VP                  VVP                  VP                  VP                  34      # )z™url with user:password part removed unless it is formed with
environment variables as specified in PEP 610, or it is a safe user:password
such as `git`.
)
ÚurllibÚparseÚurlsplitrZ   rP   Ú
urlunsplitÚschemeÚpathÚqueryÚfragment)r\   rQ   Ú
parsed_urlrP   s   &&  r   Ú
_strip_urlrg   _   sl   € ô
 —‘×&Ñ& sÓ+€JÜ$ Z×%6Ñ%6Ð8KÓL€FÜ�<‰<×"Ñ"à×ÑØØ�O‰OØ×ÑØ×Ñð	
óð r   c               ó    € V ^8„  d   QhRRRR/# )r   rf   r
   r   Úboolr   )r   s   "r   r   r   q   s   € ÷ +ñ +¨Kð +¸Dñ +r   c                ó8   € V P                   P                  R 4      # )Ú/)rc   Ú
startswith)rf   s   &r   Ú_file_url_has_absolute_pathrm   q   s   € Ø�?‰?×%Ñ% cÓ*Ð*r   c                  óT   € ] tR t^ut$ RtRtR]R&   R]R&   RR/R R lltR	 R
 ltRt	R# )r   zKRaised when when input data is not spec-compliant.

.. versionadded:: 26.1
Nú
str | Noner?   r;   Úmessagec               ó$   € V ^8„  d   QhRRRRRR/# )r   Úcausezstr | Exceptionr?   ro   r   ÚNoner   )r   s   "r   r   Ú%DirectUrlValidationError.__annotate__~   s(   € ÷ &ñ &àð&ð ð	&ð
 
ñ&r   c               	ó
  € \        V\        4      '       dW   VP                  '       d,   V'       d   V R VP                   2MVP                  V n        MW n        VP                  V n        R# W n        \	        V4      V n        R# )Ú.N)rA   r   r?   rp   r;   )Úselfrr   r?   s   &&$r   Ú__init__Ú!DirectUrlValidationError.__init__~   s^   € ô �eÔ5×6Ò6Ø�}�}ˆ}ç4;�w�i˜q §¡ Ñ0ÀÇÁð •ð  '”Ø Ÿ=™=ˆDŽLà"ŒLÜ˜u›:ˆDŽLr   c               ó   € V ^8„  d   QhRR/# )r   r   r;   r   )r   s   "r   r   rt   �   s   € ÷ ñ ˜ñ r   c                	óv   € V P                   '       d   V P                   R V P                   : 2# V P                  # )z in ©r?   rp   ©rw   s   &r   Ú__str__Ú DirectUrlValidationError.__str__�   s/   € Ø�<�<ˆ<Ø—l‘l�^ 4¨¯©Ñ'7Ð8Ð8Ø�|‰|Ðr   r|   )
r*   r+   r,   r-   Ú__doc__r?   Ú__annotations__rx   r~   r/   r   r   r   r   r   u   s1   ‡ ñð
 €GˆZÓØƒLð&ð #÷	&÷$ñ r   c                  ó.   a € ] tR t^–tR V 3R lltRtV ;t# )rG   c               ó    € V ^8„  d   QhRRRR/# )r   r5   r;   r   rs   r   )r   s   "r   r   Ú'_DirectUrlRequiredKeyError.__annotate__—   s   € ÷ @ñ @˜Cð @ Dñ @r   c                	ó*   <€ \         SV `  R VR7       R# )zMissing required valuer>   N)Úsuperrx   )rw   r5   Ú	__class__s   &&€r   rx   Ú#_DirectUrlRequiredKeyError.__init__—   s   ø€ Ü‰ÑÐ1¸3ÐÖ?r   r   )r*   r+   r,   r-   rx   r/   Ú__classcell__)r‡   s   @r   rG   rG   –   s   ø† ÷@ö @r   rG   TF)ÚfrozenÚinitc                  óh   € ] tR t^›t$ RtR]R&   R]R&   RtR]R&   RR/R R	 llt]R
 R l4       t	Rt
R# )r   z8The version control information of a :class:`DirectUrl`.r;   ÚvcsÚ	commit_idNro   Úrequested_revisionc               ó(   € V ^8„  d   QhRRRRRRRR/# )r   r�   r;   rŽ   r�   ro   r   rs   r   )r   s   "r   r   ÚVcsInfo.__annotate__£   s:   € ÷ 	Kñ 	Kð ð	Kð ð		Kð
 'ð	Kð 
ñ	Kr   c               	ó�   € \         P                  V R V4       \         P                  V RV4       \         P                  V RV4       R# )r�   rŽ   r�   N©ÚobjectÚ__setattr__)rw   r�   rŽ   r�   s   &$$$r   rx   ÚVcsInfo.__init__£   s<   € ô 	×Ñ˜4 ¨Ô,Ü×Ñ˜4 ¨iÔ8Ü×Ñ˜4Ð!5Ð7IÖJr   c               ó    € V ^8„  d   QhRRRR/# r!   r   )r   s   "r   r   r‘   ¯   s   € ÷ 
ñ 
Ð,ð 
°ñ 
r   c           	     	ór   € V ! \        V\        R 4      \        V\        R4      \        V\        R4      R7      # )r�   r�   rŽ   )r�   r�   rŽ   )rH   r;   rD   r&   s   &&r   r(   ÚVcsInfo._from_dict®   s6   € ñ Ü˜a¤ eÓ,Ü# A¤sÐ,@ÓAÜ# A¤s¨KÓ8ô
ð 	
r   r   )r*   r+   r,   r-   r€   r�   r�   rx   r.   r(   r/   r   r   r   r   r   ›   s?   ‡ áBà	ƒHØƒNØ%)Ð˜
Ó)ð	Kð
 *.÷	Kð ô
ó ô
r   c                  óT   € ] tR t^¸t$ RtRtR]R&   RR/R R llt]R R l4       t	R	t
R# )
r   z0The archive information of a :class:`DirectUrl`.NúMapping[str, str] | NoneÚhashesc               ó    € V ^8„  d   QhRRRR/# )r   rœ   r›   r   rs   r   )r   s   "r   r   ÚArchiveInfo.__annotate__¾   s    € ÷ 3ñ 3ð )ð3ð 
ñ	3r   c               	ó4   € \         P                  V R V4       R# )rœ   Nr“   )rw   rœ   s   &$r   rx   ÚArchiveInfo.__init__¾   s   € ô
 	×Ñ˜4 ¨6Ö2r   c               ó    € V ^8„  d   QhRRRR/# r!   r   )r   s   "r   r   rž   Æ   s   € ÷ "ñ "Ð,ð "°ñ "r   c                	óü  € \        V\        R 4      pVed   \        ;QJ d*    R VP                  4        4       F  '       d   K   RM	  RM! R VP                  4        4       4      '       g   \	        RR R7      h\        V\
        R4      pVeh   RV9  d   \	        RRR7      hVP                  R^4      w  rEVf   WE/pM7WB9  d   \	        R	V: R
2R R7      hW$,          V8w  d   \	        R	V: R2RR7      hV ! VR7      # )rœ   c              3  óB   "  € T F  p\        V\        4      x € K  	  R # 5ir   )rA   r;   )Ú.0Úhs   & r   Ú	<genexpr>Ú)ArchiveInfo._from_dict.<locals>.<genexpr>È   s   é € Ð)VÁoÀ¬*°Q¼×*<Ð*<Ãoùs   ‚FTzHash values must be stringsr>   ÚhashÚ=z3Invalid hash format (expected '<algorithm>=<hash>')z
Algorithm z2 used in hash field is not present in hashes fieldz7 used in hash field has different value in hashes field)rœ   )rD   r   ÚallÚvaluesr   r;   Úsplit)r'   r"   rœ   Úlegacy_hashÚhash_algorithmÚ
hash_values   &&    r   r(   ÚArchiveInfo._from_dictÅ   s  € ä�aœ (Ó+ˆØÒ§c£cÑ)VÀfÇmÁmÄoÓ)V§c§c¢cÑ)VÀfÇmÁmÄoÓ)V×&VÒ&VÜ*Ø-°xôð ô ˜1œc 6Ó*ˆØÒ"Ø˜+Ô%Ü.ØIØ"ôð ð *5×):Ñ):¸3ÀÓ)BÑ&ˆNØŠ~à(Ð5‘ð "Ô/Ü2Ø$ ^Ñ$6ð 79ð :à (ôð ð
 Õ)¨ZÔ7Ü2Ø$ ^Ñ$6ð 7>ð ?à &ôð ñ
 ˜&Ô!Ð!r   r   )r*   r+   r,   r-   r€   rœ   r�   rx   r.   r(   r/   r   r   r   r   r   ¸   s3   ‡ á:à'+€FÐ$Ó+ð3ð ,0÷3ð ô"ó ô"r   c                  óT   € ] tR t^èt$ RtRtR]R&   RR/R R llt]R R l4       t	R	t
R# )
r   z8The local directory information of a :class:`DirectUrl`.Núbool | NoneÚeditablec               ó    € V ^8„  d   QhRRRR/# )r   r³   r²   r   rs   r   )r   s   "r   r   ÚDirInfo.__annotate__î   s    € ÷ 7ñ 7ð ð7ð 
ñ	7r   c               	ó4   € \         P                  V R V4       R# )r³   Nr“   )rw   r³   s   &$r   rx   ÚDirInfo.__init__î   s   € ô
 	×Ñ˜4 ¨XÖ6r   c               ó    € V ^8„  d   QhRRRR/# r!   r   )r   s   "r   r   rµ   ö   s   € ÷ 
ñ 
Ð,ð 
°ñ 
r   c                	ó2   € V ! \        V\        R 4      R7      # )r³   )r³   )rD   ri   r&   s   &&r   r(   ÚDirInfo._from_dictõ   s   € áÜ˜!œT :Ó.ô
ð 	
r   r   )r*   r+   r,   r-   r€   r³   r�   rx   r.   r(   r/   r   r   r   r   r   è   s2   ‡ áBà €HˆkÓ ð7ð !%÷7ð ô
ó ô
r   c                  óÒ   € ] tR t^üt$ RtR]R&   RtR]R&   RtR]R&   RtR	]R
&   Rt	R]R&   RRRRR
RRR/R R llt
]R R l4       t]R R l4       tRRRRRR/R R lltR R ltRtR# )r   z;A class representing a direct URL.

.. versionadded:: 26.1
r;   r\   NúArchiveInfo | NoneÚarchive_infoúVcsInfo | NoneÚvcs_infoúDirInfo | NoneÚdir_inforo   Úsubdirectoryc               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r   r\   r;   r½   r¼   r¿   r¾   rÁ   rÀ   rÂ   ro   r   rs   r   )r   s   "r   r   ÚDirectUrl.__annotate__	  sH   € ÷ ?ñ ?ð ð?ð )ð	?ð
 !ð?ð !ð?ð !ð?ð 
ñ?r   c               	óì   € \         P                  V R V4       \         P                  V RV4       \         P                  V RV4       \         P                  V RV4       \         P                  V RV4       R# )r\   r½   r¿   rÁ   rÂ   Nr“   )rw   r\   r½   r¿   rÁ   rÂ   s   &$$$$$r   rx   ÚDirectUrl.__init__	  s^   € ô 	×Ñ˜4 ¨Ô,Ü×Ñ˜4 °Ô>Ü×Ñ˜4 ¨XÔ6Ü×Ñ˜4 ¨XÔ6Ü×Ñ˜4 °Ö>r   c               ó    € V ^8„  d   QhRRRR/# r!   r   )r   s   "r   r   rÄ     s   € ÷ ñ Ð,ð °ñ r   c                	óN  € V ! \        V\        R 4      \        V\        R4      \        V\        R4      \        V\
        R4      \        V\        R4      R7      p\        VP                  4      \        VP                  4      ,           \        VP                  4      ,           ^8w  d   \        R4      hVP                  ef   \        P                  P                  VP                  4      pVP                   R8w  d   \        RR R	7      h\#        V4      '       g   \        R
R R	7      hV# )r\   r½   r¿   rÁ   rÂ   )r\   r½   r¿   rÁ   rÂ   z?Exactly one of vcs_info, archive_info, dir_info must be presentÚfilez3URL scheme must be file:// when dir_info is presentr>   z2File URL must be absolute when dir_info is present)rH   r;   rN   r   r   r   rD   ri   r¿   r½   rÁ   r   r^   r_   r`   r\   rb   rm   )r'   r"   Ú
direct_urlrf   s   &&  r   r(   ÚDirectUrl._from_dict  s	  € áÜ˜a¤ eÓ,Ü$ Q¬°^ÓDÜ  ¤G¨ZÓ8Ü  ¤G¨ZÓ8Ü˜a¤ nÓ5ô
ˆ
ô �×$Ñ$Ó%Ü�:×*Ñ*Ó+õ,ä�:×&Ñ&Ó'õ(ð ô	ô
 +ØQóð ð ×ÑÒ*ÜŸ™×.Ñ.¨z¯~©~Ó>ˆJØ× Ñ  FÔ*Ü.ØIØ!ôð ô /¨z×:Ò:Ü.ØHØ!ôð ð
 Ðr   c               ó    € V ^8„  d   QhRRRR/# r!   r   )r   s   "r   r   rÄ   9  s   € ÷ !ñ !Ð+ð !°4ñ !r   c               ó$   € V P                  V4      # )z@Create and validate a DirectUrl instance from a JSON dictionary.)r(   r&   s   ""r   Ú	from_dictÚDirectUrl.from_dict8  s   € ð �~‰~˜aÓ Ð r   Úgenerate_legacy_hashFÚstrip_user_passwordTrQ   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r   rÐ   ri   rÑ   rQ   rR   r   r#   r   )r   s   "r   r   rÄ   =  s4   € ÷ ñ ð #ðð "ð	ð
 -ðð 
ñr   c               ó~  € \         P                  ! V \        R7      pV'       dx   V P                  '       df   V P                  P                  '       dJ   \        \        V P                  P                  P                  4       4      4      w  rVV RV 2VR,          R&   V'       d   \        V P                  V4      VR&   V# )a>  Convert the DirectUrl instance to a JSON dictionary.

:param generate_legacy_hash: If True, include a legacy `hash` field in
    `archive_info` for backward compatibility with tools that don't
    support the `hashes` field.
:param strip_user_password: If True, strip user:password from the URL
    unless it is formed with environment variables as specified in PEP
    610, or it is a safe user:password such as `git`.
:param safe_user_passwords: A collection of user:password strings that
    should not be stripped from the URL even if `strip_user_password` is
    True.
)Údict_factoryr©   r½   r¨   r\   )
ÚdataclassesÚasdictr7   r½   rœ   ÚnextÚiterÚitemsrg   r\   )rw   rÐ   rÑ   rQ   Úresr®   r¯   s   &$$$   r   Úto_dictÚDirectUrl.to_dict=  s•   € ô& × Ò  Ô4FÔGˆß D×$5×$5Ð$5¸$×:KÑ:K×:R×:RÐ:RÜ)-¬d°4×3DÑ3D×3KÑ3K×3QÑ3QÓ3SÓ.TÓ)UÑ&ˆNØ-;Ð,<¸A¸j¸\Ð*JˆC�Õ Ñ'ßÜ# D§H¡HÐ.AÓBˆC�‰JØˆ
r   c               ó   € V ^8„  d   QhRR/# )r   r   rs   r   )r   s   "r   r   rÄ   X  s   € ÷ 'ñ '˜$ñ 'r   c                óD   € V P                  V P                  4       4       R# )zqValidate the DirectUrl instance against the specification.

Raises :class:`DirectUrlValidationError` if invalid.
N)rÎ   rÛ   r}   s   &r   ÚvalidateÚDirectUrl.validateX  s   € ð
 	�‰�t—|‘|“~Ö&r   r   )Úgit)r*   r+   r,   r-   r€   r�   r½   r¿   rÁ   rÂ   rx   r.   r(   rÎ   rÛ   rß   r/   r   r   r   r   r   ü   s¹   ‡ ñð
 
ƒHØ'+€LÐ$Ó+Ø#€HˆnÓ#Ø#€HˆnÓ#Ø#€L�*Ó#ð?ð ,0ð	?ð
 $(ð?ð $(ð?ð $(÷?ð ôó ðð> ô!ó ð!ðð &+ðð %)ð	ð
 08÷÷6'ñ 'r   )é   é   )r   r   r   r   r   ))Ú
__future__r   rÕ   ÚreÚurllib.parser^   Úcollections.abcr   Útypingr   r   r   r   Úsysr	   r
   Úversion_infor   Útyping_extensionsr   r   r   r   r0   r7   rD   rH   rN   ÚcompilerV   rZ   rg   rm   rL   r   rG   Ú	dataclassr   r   r   r   r   r   r   Ú<module>rî      s^  ðÝ "ã Û 	Û Ý #ß 8Ó 8çÛÝ*Ý(à
×Ñ˜7Ô"Þå*ò€õñ ˆTƒ]€ô;˜8ô ;ñ
  Ð 7Ð?SÔTÐ õDõ
õõ	>ð $&§:¢:Ø5ó$Ð  õ
õõ$+ô˜yô ôB@Ð!9ô @ð
 ×Ò˜d¨Ô/÷
ð 
ó 0ð
ð8 ×Ò˜d¨Ô/÷,"ð ,"ó 0ð,"ð^ ×Ò˜d¨Ô/÷
ð 
ó 0ð
ð& ×Ò˜d¨Ô/÷`'ð `'ó 0ò`'r   