+
    %i*                       ^ 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 ]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]P6                  ! R4      tR R ltR R lt ! R  R
]4      t  ! R! R"] 4      t!]PD                  ! R#R$R%7       ! R& R4      4       t#]PD                  ! R#R$R%7       ! R' R4      4       t$]PD                  ! R#R$R%7       ! R( R4      4       t%]PD                  ! R#R$R%7       ! R) R	4      4       t&R# ),    )annotationsN)Mapping)TYPE_CHECKINGAnyProtocolTypeVar)
Collection)SelfArchiveInfoDirInfo	DirectUrlDirectUrlValidationErrorVcsInfoc                   V ^8  d   QhRR/# )   returnz	list[str] )formats   "R/var/www/html/photoedit/myenv/lib/python3.14/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   )r2   keyvalues   &  r   _json_dict_factoryr6   *   s"    )-C:3JCJCCCs   c               (    V ^8  d   QhRRRRRRRR/# )	r   r!   r"   expected_typetype[_T]r4   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!   r8   r4   r5   s   &&& r   _getrC   .   sd    s$e++&tE{334 5&//03
 	

 Lr   c               (    V ^8  d   QhRRRRRRRR/# )	r   r!   r"   r8   r9   r4   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.)rC   _DirectUrlRequiredKeyErrorrB   s   &&& r   _get_requiredrG   ;   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]r4   r:   r   z_FromMappingProtocolT | Noner   )r   s   "r   r   r   B   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=   )rC   r   r'   	Exceptionr   )r!   rI   r4   r5   es   &&&  r   _get_objectrM   B   sN     a#&&/>%%e,, >&q6A=>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   S   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# )@)split _PEP610_USER_PASS_ENV_VARS_REGEXmatch)rO   rP   	user_passnetloc_no_user_passs   &&  r   _strip_auth_from_netlocrY   S   sI    
&%+\\#q%9"I''--i88r   c               $    V ^8  d   QhRRRRRR/# )r   urlr:   rP   rQ   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      # )zurl 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urlsplitrY   rO   
urlunsplitschemepathqueryfragment)r[   rP   
parsed_urlrO   s   &&  r   
_strip_urlrf   ^   sl    
 &&s+J$Z%6%68KLF<<""OO	
 r   c                  T    ] tR t^pt$ RtRtR]R&   R]R&   RR/R R lltR	 R
 ltRt	R# )r   z2Raised when when input data is not spec-compliant.N
str | Noner>   r:   messagec               $    V ^8  d   QhRRRRRR/# )r   causezstr | Exceptionr>   rh   r   Noner   )r   s   "r   r   %DirectUrlValidationError.__annotate__v   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)r@   r   r>   ri   r:   )selfrk   r>   s   &&$r   __init__!DirectUrlValidationError.__init__v   s^     e566}}}4;wiq0   ' ==DL"Lu:DLr   c                   V ^8  d   QhRR/# )r   r   r:   r   )r   s   "r   r   rm      s       r   c                	v    V P                   '       d   V P                   R V P                   : 2# V P                  # )z in r>   ri   rp   s   &r   __str__ DirectUrlValidationError.__str__   s/    <<<ll^4'788||r   ru   )
r)   r*   r+   r,   __doc__r>   __annotations__rq   rw   r.   r   r   r   r   r   p   s-    <GZL& #	&$ r   c                  .   a  ] tR t^tR V 3R lltRtV ;t# )rF   c                    V ^8  d   QhRRRR/# )r   r4   r:   r   rl   r   )r   s   "r   r   '_DirectUrlRequiredKeyError.__annotate__   s     @ @C @D @r   c                	*   < \         SV `  R VR7       R# )zMissing required valuer=   N)superrq   )rp   r4   	__class__s   &&r   rq   #_DirectUrlRequiredKeyError.__init__   s    13?r   r   )r)   r*   r+   r,   rq   r.   __classcell__)r   s   @r   rF   rF      s    @ @r   rF   TF)frozeninitc                  d    ] tR t^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   r:   vcs	commit_idNrh   requested_revisionc               (    V ^8  d   QhRRRRRRRR/# )r   r   r:   r   r   rh   r   rl   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__)rp   r   r   r   s   &$$$r   rq   VcsInfo.__init__   s<     	4,4i84!57I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   )rG   r:   rC   r%   s   &&r   r'   VcsInfo._from_dict   s6     ae,#As,@A#AsK8
 	
r   r   )
r)   r*   r+   r,   rz   r   rq   r-   r'   r.   r   r   r   r   r      s<    	HN%)
)	K
 *.	K 
 
r   c                  P    ] tR t^t$ RtR]R&   RR/R R llt]R R l4       tRt	R# )	r   NMapping[str, str] | Nonehashesc                    V ^8  d   QhRRRR/# )r   r   r   r   rl   r   )r   s   "r   r   ArchiveInfo.__annotate__   s      3 3 )3 
	3r   c               	4    \         P                  V R V4       R# )r   Nr   )rp   r   s   &$r   rq   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   )r@   r:   ).0hs   & r   	<genexpr>)ArchiveInfo._from_dict.<locals>.<genexpr>   s     )Vo*Q*<*<os   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   )rC   r   allvaluesr   r:   rT   )r&   r!   r   legacy_hashhash_algorithm
hash_values   &&    r   r'   ArchiveInfo._from_dict   s   a(+cc)Vfmmo)Vccc)Vfmmo)V&V&V*-x  1c6*"+%.I"  *5):):3)B&N~(5 "/2$^$6 79 : ( 
 )Z72$^$6 7> ? & 
 &!!r   r   )
r)   r*   r+   r,   r   rz   rq   r-   r'   r.   r   r   r   r   r      s0    '+F$+3 ,03 " "r   c                  P    ] tR t^t$ RtR]R&   RR/R R llt]R R l4       tRt	R# )	r   Nbool | Noneeditablec                    V ^8  d   QhRRRR/# )r   r   r   r   rl   r   )r   s   "r   r   DirInfo.__annotate__   s      7 7 7 
	7r   c               	4    \         P                  V R V4       R# )r   Nr   )rp   r   s   &$r   rq   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   )rC   boolr%   s   &&r   r'   DirInfo._from_dict   s    !T:.
 	
r   r   )
r)   r*   r+   r,   r   rz   rq   r-   r'   r.   r   r   r   r   r      s/     Hk 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.r:   r[   NArchiveInfo | Nonearchive_infoVcsInfo | Nonevcs_infoDirInfo | Nonedir_inforh   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   rh   r   rl   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   )rp   r[   r   r   r   r   s   &$$$$$r   rq   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                	   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                  e/   VP                  P                  R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 presentzfile://z3URL scheme must be file:// when dir_info is presentr=   )rG   r:   rM   r   r   r   rC   r   r   r   r   r   r[   
startswith)r&   r!   
direct_urls   && r   r'   DirectUrl._from_dict  s    ae,$Q^D GZ8 GZ8an5

 $$%:**+,:&&'( 	
 +Q  *:>>3L3LY3W3W*E 
 r   c                    V ^8  d   QhRRRR/# r    r   )r   s   "r   r   r   !  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_dict   s     ~~a  r   generate_legacy_hashFstrip_user_passwordTrP   c               (    V ^8  d   QhRRRRRRRR/# )r   r   r   r   rP   rQ   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asdictr6   r   r   nextiteritemsrf   r[   )rp   r   r   rP   resr   r   s   &$$$   r   to_dictDirectUrl.to_dict%  s    &   4FGD$5$5$5$:K:K:R:R:R)-d43D3D3K3K3Q3Q3S.T)U&N-;,<Aj\*JC'#DHH.ABCJ
r   c                   V ^8  d   QhRR/# )r   r   rl   r   )r   s   "r   r   r   @  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   rv   s   &r   validateDirectUrl.validate@  s    
 	t||~&r   r   )git)r)   r*   r+   r,   ry   rz   r   r   r   r   rq   r-   r'   r   r   r   r.   r   r   r   r   r      s    ,	H'+L$+#Hn##Hn##L*#? ,0	?
 $(? $(? $(?  0 ! ! &+ %)	
 086' 'r   )      )r   r   r   r   r   )'
__future__r   r   reurllib.parser]   collections.abcr   typingr   r   r   r   sysr	   version_infor
   typing_extensionsr   r   r   r   r/   r6   rC   rG   rM   compilerU   rY   rf   rK   r   rF   	dataclassr   r   r   r   r   r   r   <module>r      sU   "  	  # 8 8*
7"* T];8 ;
   7?ST D
	> $&::5$  
$y <@!9 @
 d/
 
 0
4 d/*" *" 0*"Z d/
 
 0
" d/V' V' 0V'r   