Ë
    oûàgS  ã                  óœ   — d dl mZ d dlZd dlmZmZ d dlmZmZ g d¢Z	 ej                  d«      Z ede«      Z G d„ d	e«      Z	 	 	 	 dd
„Zy)é    )ÚannotationsN)ÚNewTypeÚcast)Ú
EXCEPTIONSÚLICENSES)ÚNormalizedLicenseExpressionÚInvalidLicenseExpressionÚcanonicalize_license_expressionz^[A-Za-z0-9.-]*$r   c                  ó   — e Zd ZdZy)r	   zõRaised 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__Ú__doc__© ó    úY/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/packaging/licenses/__init__.pyr	   r	   2   s   „ òr   r	   c           	     óœ  — | sd| ›�}t        |«      ‚| j                  dd«      j                  dd«      }d}|j                  «       D �ci c]O  }|j                  «       j	                  |j                  «       «      r |j                  «       d|t        |«      d  z   “ŒQ }}|j                  «       }|j                  «       }g }|D ]^  }|dvr|j                  d«       Œ|d	k(  r|j                  d
«       Œ0|dk(  r|r|d   dvrd| ›�}t        |«      ‚|j                  |«       Œ` dj                  |«      }		 t        |	t        «       t        «       «      }
|
durd| ›�}t        |«      d ‚g }|D �]  }|dv r |j                  |j                  «       «       Œ(|r<|d   dk(  r4|t        vrd|›�}t        |«      ‚|j                  t        |   d   «       Œf|j                  d«      r|d d }d}n|}d}|j	                  d«      r=t        j!                  |«      sd|›�}t        |«      ‚|j                  ||   |z   «       ŒÑ|t"        vrd|›�}t        |«      ‚|j                  t"        |   d   |z   «       �Œ	 dj                  |«      }t%        t&        |j                  dd«      j                  dd«      «      S c c}w # t        $ r d}
Y �Œww xY w)NzInvalid license expression: ú(z ( ú)z ) zLicenseRef->   ÚorÚandÚwithr   r   ÚFalser   r   éÿÿÿÿ>   r   r   ú TFÚWITHzUnknown license exception: Úidú+Ú zlicenseref-zInvalid licenseref: zUnknown license: z( z ))r	   ÚreplaceÚsplitÚlowerÚ
startswithÚlenÚappendÚjoinÚevalÚglobalsÚlocalsÚ	ExceptionÚupperr   ÚendswithÚlicense_ref_allowedÚmatchr   r   r   )Úraw_license_expressionÚmessageÚlicense_expressionÚlicenseref_prefixÚrefÚlicense_refsÚtokensÚpython_tokensÚtokenÚpython_expressionÚinvalidÚnormalized_tokensÚfinal_tokenÚsuffixÚnormalized_expressions                  r   r
   r
   <   s   € ñ "Ø0Ð1GÐ0JÐKˆÜ& wÓ/Ð/ð 0×7Ñ7¸¸UÓC×KÑKÈCÐQVÓWÐØ%Ðð &×+Ñ+Ó-öàØ�9‰9‹;×!Ñ!Ð"3×"9Ñ"9Ó";Ô<ð 	�	‰	‹�] S¬Ð->Ó)?Ð)AÐ%BÑBÑBð€Lð ð ,×1Ñ1Ó3Ðà×%Ñ%Ó'€Fð
 €MØò 	(ˆØÐ7Ñ7Ø× Ñ  Õ)Ø�fŠ_Ø× Ñ  Õ&Ø�cŠ\™m°¸bÑ0AÈÑ0VØ4Ð5KÐ4NÐOˆGÜ*¨7Ó3Ð3à× Ñ  Õ'ð	(ð Ÿ™ Ó/ÐðÜÐ(¬'«)´V³XÓ>ˆð �eÑØ0Ð1GÐ0JÐKˆÜ& wÓ/°TÐ9ð ÐØó OˆØÐ3Ñ3Ø×$Ñ$ U§[¡[£]Ô3ØáÐ!2°2Ñ!6¸&Ò!@ØœJÑ&Ø7¸°yÐA�Ü.¨wÓ7Ð7à×$Ñ$¤Z°Ñ%6°tÑ%<Õ=à�~‰~˜cÔ"Ø# C R˜j�Ø‘à#�Ø�à×%Ñ% mÔ4Ü*×0Ñ0°Ô=Ø 4°[°OÐD�GÜ2°7Ó;Ð;Ø!×(Ñ(¨°kÑ)BÀVÑ)KÕLà¤hÑ.Ø 1°+°ÐA�GÜ2°7Ó;Ð;Ø!×(Ñ(¬°+Ñ)>¸tÑ)DÀvÑ)MÖNð9Oð<  ŸH™HÐ%6Ó7ÐäÜ#Ø×%Ñ% d¨CÓ0×8Ñ8¸¸sÓCóð ùòOøô< ò Ø‹ðús   Á	AJ7Ä6J< Ê<KË
K)r/   ÚstrÚreturnr   )Ú
__future__r   ÚreÚtypingr   r   Úpackaging.licenses._spdxr   r   Ú__all__Úcompiler-   r>   r   Ú
ValueErrorr	   r
   r   r   r   ú<module>rG      sa   ðõ@ #ã 	ß  ç 9ò€ð !�b—j‘jÐ!3Ó4Ð á%Ð&CÀSÓIÐ ô˜zô ðUØðUà ôUr   