+
    ii                        ^ RI Ht ^ RIt^ RIHtHt ^RIHtHt . ROt	]P                  ! R4      t]! R]4      t ! R R]4      tR	 R
 ltR# )    )annotationsN)NewTypecast)
EXCEPTIONSLICENSESInvalidLicenseExpressionNormalizedLicenseExpressionz^[A-Za-z0-9.-]*$c                      ] tR t^2tRtRtR# )r   zRaised when a license-expression string is invalid

>>> canonicalize_license_expression("invalid")
Traceback (most recent call last):
    ...
packaging.licenses.InvalidLicenseExpression: Invalid license expression: 'invalid'
 N)__name__
__module____qualname____firstlineno____doc____static_attributes__r       ;lib/python3.14/site-packages/packaging/licenses/__init__.pyr   r   2   s    r   c                    V ^8  d   QhRRRR/# )   raw_license_expressionstrreturnr	   r   )formats   "r   __annotate__r   <   s      W WW Wr   c           	        V '       g   R V : 2p\        V4      hV P                  RR4      P                  RR4      pRpVP                  4        Uu/ uF\  pVP                  4       P	                  VP                  4       4      '       g   K8  VP                  4       RV\        V4      R ,           bK^  	  ppVP                  4       pVP                  4       p. pV F  pVR9  d   VP                  R	4       K  VR8X  d   VP                  R4       K7  VR8X  d   V'       d   VR,          R9  g   VR8X  d(   V'       d    VR,          R8X  d   R V : 2p\        V4      hVP                  V4       K  	  R
P                  V4      p	 \        V	RR4       . p
T EFP  pTR9   d"   T
P                  TP                  4       4       K,  T
'       dP   T
R,          R8X  dB   T\        9  d   RT: 2p\        T4      hT
P                  \        T,          R,          4       K  TP                  R4      '       d	   TRR pRpMTpRpTP	                  R4      '       dN   \        P                  T4      '       g   RT: 2p\        T4      hT
P                  Y[,          T,           4       EK
  T\        9  d   RT: 2p\        T4      hT
P                  \        T,          R,          T,           4       EKS  	  R
P                  T
4      p\!        RTP                  RR4      P                  RR4      4      # u upi   \         d    R T : 2p\        T4      Rhi ; i)zInvalid license expression: (z ( )z ) zLicenseRef-NorwithFalse  evalWITHzUnknown license exception: id+zlicenseref-zInvalid licenseref: zUnknown license: r	   z( z )>   r   r   r   andr   >   r   r   r'   )r   replacesplitlower
startswithlenappendjoincompileSyntaxErrorupperr   endswithlicense_ref_allowedmatchr   r   )r   messagelicense_expressionlicenseref_prefixreflicense_refstokenspython_tokenstokenpython_expressionnormalized_tokensfinal_tokensuffixnormalized_expressions   &             r   canonicalize_license_expressionrC   <   s%    "01G0JK&w// 077UCKKCQVW% &++--C99;!!"3"9"9";< 	C		]S->)?)A%BBB-   ,113%%'F M77  )f_  &SLb!);;sl}r1Bc1I45K4NOG*733  '  /:!2v. 33$$U[[]3!22!6&!@J&7yA.w77$$Z%6t%<=~~c""#CRj#%%m44*00== 4[ODG27;;!(()BV)KLh. 1+AG27;;!((+)>t)Dv)MN9 <  HH%67%%%dC088sC SF  :01G0JK&w/T9:s   5L$
(L$L) )M)r   r	   rC   )
__future__r   retypingr   r   _spdxr   r   __all__r0   r4   r   r	   
ValueErrorr   rC   r   r   r   <module>rJ      sM   @ # 	   ' jj!34 %&CSI z Wr   