+
    hA)                    >  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 ^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 . R/Ot]	]].]3,          t ! R R	]4      t  ! R R]4      t! ! R R]4      t" ! R R]
4      t#R R lt$R0R R llt%RR RR R]PL                  R]PN                  R]PP                  R]PR                  R]PT                  R]PV                  /t,R ]-R!&   R" R# lt.R$ R% lt/R& R' lt0R( R) lt1R* R+ lt2 ! R, R
4      t3R- R. lt4R# )1    )annotationsN)AnyCallable	TypedDictcast)
MarkerAtom
MarkerListOpValueVariable)parse_marker)ParserSyntaxError)InvalidSpecifier	Specifiercanonicalize_nameInvalidMarkerMarkerUndefinedComparisonUndefinedEnvironmentNamec                      ] 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____doc____static_attributes__r       F/usr/lib/python3/dist-packages/setuptools/_vendor/packaging/markers.pyr   r          r    c                      ] 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                      ] 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                      ] tR t^1t$ 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&   1   s    >
 L
      %(' 9r    r&   c                    V ^8  d   QhRRRR/# )   resultsr   returnr   )formats   "r!   __annotate__r9   y   s      S S r    c                   \        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   )r6   lhsoprhsnormalized_extras   &    r!   _normalize_extra_valuesrC   y   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/# )r5   markerzlist[str] | MarkerAtom | strfirstzbool | Noner7   r'   r   )r8   s   "r!   r9   r9      s$      (1<r    c                B   \        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  <   "   T F  p\        VR R7      x  K  	  R# 5i)F)rF   N)_format_marker).0ms   & r!   	<genexpr>!_format_marker.<locals>.<genexpr>   s     @A//s    ())r<   listr=   r'   lenrJ   join	serialize)rE   rF   innerrL   s   &&  r!   rJ   rJ      s     ftUC01111 	64  K1vay4-00fQi((&$@@88E?"%(3..	FE	"	"xx71788 8s   ;Dinc                
    W9   # Nr   r?   rA   s   &&r!   <lambda>r[      s    3:r    znot inc                
    W9  # rY   r   rZ   s   &&r!   r[   r[      s    s~r    <z<=z==z!=z>=>zdict[str, Operator]
_operatorsc               (    V ^8  d   QhRRRRRRRR/# )r5   r?   r'   r@   r
   rA   r7   boolr   )r8   s   "r!   r9   r9      s(      # 2 C D r    c           	     .    \        R P                  VP                  4       V.4      4      pVP                  V RR7      #   \         d     Mi ; i\
        P                  TP                  4       4      pTf   \        RT: RT : RT: R24      hT! Y4      # ) T)prereleasesz
Undefined z on z and .)r   rT   rU   containsr   r_   getr   )r?   r@   rA   specopers   &&&  r!   _eval_oprj      s    4",,.#!678 }}Sd}33  
 'NN2<<>:D|!JrfDuSG1"MNN>s   *? AAc               $    V ^8  d   QhRRRRRR/# )r5   valuesr'   keyr7   ztuple[str, ...]r   )r8   s   "r!   r9   r9      s!     	 	 	# 	/ 	r    c                l    V R 8X  d-   \         ;QJ d    . R V 4       F  NK  	  5# ! R V 4       4      # V# )r;   c              3  8   "   T F  p\        V4      x  K  	  R # 5irY   r   )rK   vs   & r!   rM   _normalize.<locals>.<genexpr>   s     :6a&q))6   )r=   )rm   rl   s   $*r!   
_normalizers      s4    
 g~u:6:u:u:6::: Mr    c               $    V ^8  d   QhRRRRRR/# )r5   markersr	   environmentdict[str, str]r7   ra   r   )r8   s   "r!   r9   r9      s!     - -z - -4 -r    c                   . .pV  EF*  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	\        WVR7      w  rVR,          P	                  \        WV	4      4       EK  VR9   g   Q hVR8X  g   EK  VP	                  . 4       EK-  	  \        ;QJ d    R V 4       F  '       g   K   R# 	  R# ! R V 4       4      # )rH   )rm   orc              3  8   "   T F  p\        V4      x  K  	  R # 5irY   )all)rK   items   & r!   rM   $_evaluate_markers.<locals>.<genexpr>   s     ,VTs4yyVrr   TF)andry   )r<   rR   r=   r'   append_evaluate_markersr   r>   rs   rj   any)
ru   rv   groupsrE   r?   r@   rA   environment_key	lhs_value	rhs_values
   &&        r!   r   r      s    "tF&4"45555fd##2J/DE&&!LCS#x(("%))'8	II	II	"%))'8	#-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/# )r5   infozsys._version_infor7   r'   r   )r8   s   "r!   r9   r9      s      / C r    c                    V P                    R V P                   R V P                   2pV P                  pVR8w  d*   W^ ,          \	        V P
                  4      ,           ,          pV# )re   final)majorminormicroreleaselevelr'   serial)r   versionkinds   &  r!   format_full_versionr      sU    Adjj\4::,7GDw7S---Nr    c                   V ^8  d   QhRR/# )r5   r7   r&   r   )r8   s   "r!   r9   r9      s      [ r    c                    \        \        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/   r0   r1   re   :Nr5   Nr2   )r   sysimplementationr   nameosplatformmachinereleasesystemr1   python_implementationrT   python_version_tuple)iverr(   s     r!   default_environmentr      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                  b    ] 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                    V ^8  d   QhRRRR/# )r5   rE   r'   r7   Noner   )r8   s   "r!   r9   Marker.__annotate__  s     / /s /t /r    c                	     \        \        V4      4      V n        R #   \         d   p\	        \        T4      4      ThR p?ii ; irY   )rC   _parse_marker_markersr   r   r'   )selfrE   es   && r!   __init__Marker.__init__  s;    	/3M&4IJDM" ! 	/A'Q.	/s    A=Ac                   V ^8  d   QhRR/# r5   r7   r'   r   )r8   s   "r!   r9   r     s     - - -r    c                	,    \        V P                  4      # rY   )rJ   r   r   s   &r!   __str__Marker.__str__  s    dmm,,r    c                   V ^8  d   QhRR/# r   r   )r8   s   "r!   r9   r   !  s     % %# %r    c                	    R V  R2# )z	<Marker('z')>r   r   s   &r!   __repr__Marker.__repr__!  s    4&$$r    c                   V ^8  d   QhRR/# )r5   r7   intr   )r8   s   "r!   r9   r   $  s     : :# :r    c                	V    \        V P                  P                  \        V 4      34      # rY   )hash	__class__r   r'   r   s   &r!   __hash__Marker.__hash__$  s     T^^,,c$i899r    c                    V ^8  d   QhRRRR/# )r5   otherr   r7   ra   r   )r8   s   "r!   r9   r   '  s     ' 'C 'D 'r    c                	h    \        V\        4      '       g   \        # \        V 4      \        V4      8H  # rY   )r<   r   NotImplementedr'   )r   r   s   &&r!   __eq__Marker.__eq__'  s(    %((!!4yCJ&&r    Nc                    V ^8  d   QhRRRR/# )r5   rv   zdict[str, str] | Noner7   ra   r   )r8   s   "r!   r9   r   -  s     
 
$9 
T 
r    c                    \        R\        4       4      pRVR&   Ve"   VP                  V4       VR,          f   RVR&   \        V P                  \        V4      4      # )zEvaluate 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 environment is determined from the current Python process.
rw   rc   r;   )r   r   updater   r   _repair_python_full_version)r   rv   current_environments   && r!   evaluateMarker.evaluate-  sj     ##35H5JK')G$"&&{3 #7+3/1#G, MM67JK
 	
r    )r   rY   )r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r   r     s%    /2-%:'
 
r    c                    V ^8  d   QhRRRR/# )r5   envrw   r7   r   )r8   s   "r!   r9   r9   D  s      ^  r    c                l    V R,          P                  R4      '       d   V R;;,          R,          uu&   V # )zw
Work around platform.python_version() returning something that is not PEP 440
compliant for non-tagged Python builds.
r/   +local)endswith)r   s   &r!   r   r   D  s1    
  !**3//!"g-"Jr    )r   r   r   r   r   )T)5__conditional_annotations__
__future__r   operatorr   r   r   typingr   r   r   r   _parserr   r	   r
   r   r   r   r   
_tokenizerr   
specifiersr   r   utilsr   __all__r'   ra   Operator
ValueErrorr   r   r   r&   rC   rJ   ltleeqnegegtr_   r3   rj   rs   r   r   r   r   r   )r   s   @r!   <module>r      s  
 # "  	  
 1 1 @ @ 2 ) 3 $ S#J$%J * z E) EP : 	
%-(++(++(++(++	#
 		-<$=
 =
@r    