+
     h/  c                  s  a  0 t $ ^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RIHtH	t	H
t
HtHtHtHt ^RIHtHtHtHtHt ^RIHt ^RIHt ^RIHtHt ^RIHt . R1Ot]
]]]]],          3,          .] 3,          t!]R2,          t"RR0t# ! R R	]$4      t% ! R R]$4      t& ! R R]$4      t' ! R R]4      t(R R lt)R3R R llt*RR RR R]PV                  R]PX                  R]PZ                  R]P\                  R ]P^                  R!]P`                  /t1R"]2R#&   R$ R% lt3R& R' lt4R( R) lt5R* R+ lt6R, R- lt7 ! R. R
4      t8R/ R0 lt9R# )4i    )annotationsN)AbstractSetAnyCallableLiteral	TypedDictUnioncast)
MarkerAtom
MarkerListOpValueVariable)parse_marker)ParserSyntaxError)InvalidSpecifier	Specifier)canonicalize_nameInvalidMarkerMarkerUndefinedComparisonUndefinedEnvironmentNameextrasdependency_groupsc                  s    ] tR t^!tRtRtR# )r   z=
An invalid marker was found, users should refer to PEP 508.
 N__name__
__module____qualname____firstlineno__Z__doc____static_attributes__r       B/usr/lib/python3.14/site-packages/pip/_vendor/packaging/markers.pyr   r   !       r   c                  s    ] tR t^'tRtRtR# )r   zH
An invalid operation was attempted on a value that doesn't support it.
r   Nr   r   r   r    r   r   '   r!   r   c                  s    ] tR t^-tRtRtR# )r   zP
A name was attempted to be used that does not exist inside of the
environment.
r   Nr   r   r   r    r   r   -   s    r   c                  s    ] tR t^4t$ R]R&    R]R&    R]R&    R]R&    R]R&    R]R&    R]R&    R]R	&    R]R
&    R]R&    R]R&   RtR# )Environmentstrimplementation_nameimplementation_versionos_nameplatform_machineplatform_releaseplatform_systemplatform_versionpython_full_versionplatform_python_implementationpython_versionsys_platformr   N)r   r   r   r   __annotations__r   r   r   r    r"   r"   4   s    >
 L
      %(' 9r   r"   c                    V ^8  d   QhRRRR/# )   resultsr   returnr   Zformat   "r    __annotate__r6   |   s      S S r   c                s   \        V ^ ,          \        4      '       d   V ^ ,          w  rp\        V\        4      '       d3   VP                  R8X  d"   \	        VP                  4      p\        V4      pMG\        V\        4      '       d2   VP                  R8X  d!   \	        VP                  4      p\        V4      pWV3V ^ &   V # )z
Normalize extra values.
extra)
isinstancetupler   valuer   r   )r2   lhsoprhsZnormalized_extras   &    r    _normalize_extra_valuesr>   |   s     '!*e$$qzc8$$g)=0;()CX&&399+?0;()Cc\
Nr   c               $    V ^8  d   QhRRRRRR/# )r1   markerzlist[str] | MarkerAtom | strfirstzbool | Noner3   r#   r   r4   r5   r    r6   r6      s$      (1<r   c                sB   \        V \        \        \        34      '       g   Q h\        V \        4      '       dF   \	        V 4      ^8X  d6   \        V ^ ,          \        \        34      '       d   \        V ^ ,          4      # \        V \        4      '       dB   R V  4       pV'       d   RP                  V4      # RRP                  V4      ,           R,           # \        V \        4      '       d/   RP                  V  Uu. uF  q3P                  4       NK  	  up4      # V # u upi )   c              3  s<   "   T F  p\        VR R7      x  K  	  R# 5i)F)rA   N)_format_marker).0m   & r    	<genexpr>Z!_format_marker.<locals>.<genexpr>   s     @A//s   Z Z(Z))r8   listr9   r#   ZlenrC   join	serialize)r@   rA   ZinnerrE   s   &&  r    rC   rC      s     ftUC01111 	64  K1vay4-00fQi((&$@@88E?"%(3..	FE	"	"xx71788 8s   ;DZinc                s
    W9   # Nr   r;   r=      &&r    <lambda>rN      s    3:r   znot inc                s
    W9  # rK   r   rL   rM   r    rN   rN      s    s~r   Z<z<=z==z!=z>=Z>zdict[str, Operator]
_operatorsc               s(    V ^8  d   QhRRRRRRRR/# )	r1   r;   r#   r<   r
   r=   str | AbstractSet[str]r3   boolr   r4   r5   r    r6   r6      s)      # 2 $: t r   c           	     sZ   \        V\        4      '       d?    \        R P                  VP	                  4       V.4      4      pVP                  V RR7      # \        P                  VP	                  4       4      pVf   \        RV: RV : RV: R24      hV! W4      #   \         d     LTi ; i) T)Zprereleasesz
Undefined z on z and .)
r8   r#   r   rI   rJ   Zcontainsr   rO   Zgetr   )r;   r<   r=   ZspecZopers   &&&  r    _eval_oprT      s    #s	8RWWbllnc%:;<D ==$=77&NN2<<>:D|!JrfDuSG1"MNN>   		s   *B B*)B*c               s(    V ^8  d   QhRRRRRRRR/# )r1   r;   r#   r=   rP   keyr3   z"tuple[str, str | AbstractSet[str]]r   r4   r5   r    r6   r6      s,      	)03'r   c                s@   VR 8X  d4   \        V\        4      '       g   Q R4       h\        V 4      \        V4      3# V\        9   dS   \        V\        4      '       d   \        V 4      \        V4      3# \        V 4      V Uu0 uF  p\        V4      kK  	  up3# W3# u upi )r7   zextra value must be a string)r8   r#   r   MARKERS_ALLOWING_SET)r;   r=   rU   Zv   &&& r    
_normalizerX      s     g~#s##C%CC#!#&(9#(>??
""c3%c*,=c,BCC%c*3,O3a->q-A3,OPP 8O -Ps    Bc               r?   )r1   markersr	   environment!dict[str, str | AbstractSet[str]]r3   rQ   r   r4   r5   r    r6   r6      s$     - --&G-	-r   c                s   . .pV  EFG  p\        V\        \        \        34      '       g   Q h\        V\        4      '       d$   VR,          P	                  \        W14      4       K`  \        V\        4      '       d   Vw  rEp\        V\        4      '       d"   VP                  pW,          pVP                  p	M VP                  pVP                  pW,          p	\        V\        4      '       g   Q R4       h\        WVR7      w  rVR,          P	                  \        WV	4      4       EK#  VR9   g   Q hVR8X  g   EK6  VP	                  . 4       EKJ  	  \        ;QJ d    R V 4       F  '       g   K   R# 	  R# ! R V 4       4      # )	rB   zlhs must be a string)rU   orc              3  s8   "   T F  p\        V4      x  K  	  R # 5irK   )Zall)rD   ZitemrF   r    rG   Z$_evaluate_markers.<locals>.<genexpr>   s     ,VTs4yyVs   TFi)Zandr\   )r8   rH   r9   r#   Zappend_evaluate_markersr   r:   rX   rT   Zany)
rY   rZ   Zgroupsr@   r;   r<   r=   Zenvironment_keyZ	lhs_valueZ	rhs_values
   &&        r    r]   r]      s8    !#tF&4"45555fd##2J/DE&&!LCS#x(("%))'8	II	II	"%))'8	i--E/EE-#-i#X I2Jhyi@A]***~b!- 0 3,V,33,3,3,V,,,r   c                    V ^8  d   QhRRRR/# )r1   infozsys._version_infor3   r#   r   r4   r5   r    r6   r6      s      / C r   c                s    V P                    R V P                   R V P                   2pV P                  pVR8w  d*   W^ ,          \	        V P
                  4      ,           ,          pV# )rS   Zfinal)ZmajorZminorZmicroZreleaselevelr#   Zserial)r_   versionZkinds   &  r    format_full_versionra      sU    Adjj\4::,7GDw7S---Nr   c                   V ^8  d   QhRR/# )r1   r3   r"   r   r4   r5   r    r6   r6      s      [ r   c                 s   \        \        P                  P                  4      p \        P                  P                  pR VRV R\
        P                  R\        P                  ! 4       R\        P                  ! 4       R\        P                  ! 4       R\        P                  ! 4       R\        P                  ! 4       R\        P                  ! 4       R	R
P                  \        P                  ! 4       R,          4      R\        P                  /# )r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   rS   :Nr1   Nr.   )ra   sysZimplementationr`   ZnameosplatformZmachineZreleaseZsystemr-   Zpython_implementationrI   Zpython_version_tuple)Ziverr$   s     r    default_environmentrf      s    s1199:D,,112 $277H,,.H,,.8??,H,,.x668((*H*H*J#((8#@#@#B2#FG r   c                  sb    ] 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 R llt	Rt
R# )r   i  c               r^   )r1   r@   r#   r3   ZNoner   r4   r5   r    r6   Marker.__annotate__  s     / /s /t /r   c                	s     \        \        V4      4      V n        R #   \         d   p\	        \        T4      4      ThR p?ii ; irK   )r>   _parse_marker_markersr   r   r#   )selfr@   Zes   && r    __init__ZMarker.__init__  s;    	/3M&4IJDM" ! 	/A'Q.	/s    A=Ac               rb   r1   r3   r#   r   r4   r5   r    r6   rg   ,  s     - - -r   c                	s,    \        V P                  4      # rK   )rC   ri   rj      &r    __str__ZMarker.__str__,  s    dmm,,r   c               rb   rl   r   r4   r5   r    r6   rg   /  s     % %# %r   c                	s    R V  R2# )z	<Marker('z')>r   rm   rn   r    __repr__ZMarker.__repr__/  s    4&$$r   c               rb   )r1   r3   Zintr   r4   r5   r    r6   rg   2  s     : :# :r   c                	sV    \        V P                  P                  \        V 4      34      # rK   )ZhashZ	__class__r   r#   rm   rn   r    __hash__ZMarker.__hash__2  s     T^^,,c$i899r   c               r^   )r1   otherr   r3   rQ   r   r4   r5   r    r6   rg   5  s     ' 'C 'D 'r   c                	sh    \        V\        4      '       g   \        # \        V 4      \        V4      8H  # rK   )r8   r   ZNotImplementedr#   )rj   rr   rM   r    __eq__ZMarker.__eq__5  s(    %((!!4yCJ&&r   Nc               r?   )r1   rZ   zdict[str, str] | NonecontextEvaluateContextr3   rQ   r   r4   r5   r    r6   rg   ;  s(     "
 "
*"
 !"
 
	"
r   c                s.   \        R\        4       4      pVR8X  d%   VP                  \        4       \        4       R7       MVR8X  d   RVR&   Ve)   VP                  V4       RV9   d   VR,          f   RVR&   \	        V P
                  \        V4      4      # )a  Evaluate a marker.

Return the boolean from evaluating the given marker against the
environment. environment is an optional argument to override all or
part of the determined environment. The *context* parameter specifies what
context the markers are being evaluated for, which influences what markers
are considered valid. Acceptable values are "metadata" (for core metadata;
default), "lock_file", and "requirement" (i.e. all other situations).

The environment is determined from the current Python process.
r[   	lock_file)r   r   metadatarR   r7   )r   rf   ZupdateZ	frozensetr]   ri   _repair_python_full_version)rj   rZ   rt   Zcurrent_environmentrW   r    evaluateZMarker.evaluate;  s      #/1D1F
 k!&& {ik '  
"+-("&&{3 --2Eg2N2V/1#G, MM67JK
 	
r   )ri   )Nrw   )r   r   r   r   rk   ro   rp   rq   rs   ry   r   r   r   r    r   r     s%    /2-%:'"
 "
r   c               r0   )r1   envr[   r3   r   r4   r5   r    r6   r6   `  s     
 
	*
&
r   c                sr    \        \        V R,          4      pVP                  R4      '       d	   V R2V R&   V # )zw
Work around platform.python_version() returning something that is not PEP 440
compliant for non-tagged Python builds.
r+   Z+Zlocal)r   r#   Zendswith)rz   r+   rF   r    rx   rx   `  s@     sC(=$>?##C(((;'<E%B!"Jr   )ru   r   r   r   r   rf   )rw   rv   Zrequirement)T):__conditional_annotations__Z
__future__r    Zoperatorrd   re   rc   Ztypingr   r   r   r   r   r   r   Z_parserr   r	   r
   r   r   r   rh   Z
_tokenizerr   Z
specifiersr   r   Zutilsr   Z__all__r#   rQ   ZOperatorru   rV   Z
ValueErrorr   r   r   r"   r>   rC   ZltZleZeqZneZgeZgtrO   r/   rT   rX   r]   ra   rf   r   rx   )r{   s   @r    <module>r|      s4  
 # "  	  
 N N N @ @ 2 ) 3 $ S%[%5 567=>@A "56 J * z E) EP : 	
%-(++(++(++(++	#
 	 (-@$K
 K
\
r   