Ë
    nûàg™  ã                  óü  — U d dl mZ d dlZd dlZd dlmZ d dlmZmZ ddl	m
Z
 e G d„ d«      «       Z G d	„ d
e«      Zi dd“dd“dd“dd“dd“dd“d ej                  dej                  «      “dd“dd“dd“dd “d! ej                  d"ej                  «      “d# ej                  e
j                   e
j"                  z   ej                  ej$                  z  «      “d$d%“d&d'“d(d)“d*d+“d,d-d.d/œ¥Zd0ed1<    G d2„ d3«      Zy)4é    )ÚannotationsN)Ú	dataclass)ÚIteratorÚNoReturné   )Ú	Specifierc                  ó,   — e Zd ZU ded<   ded<   ded<   y)ÚTokenÚstrÚnameÚtextÚintÚpositionN)Ú__name__Ú
__module__Ú__qualname__Ú__annotations__© ó    úe/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/setuptools/_vendor/packaging/_tokenizer.pyr
   r
      s   … à
ƒIØ
ƒIØ„Mr   r
   c                  ó<   ‡ — e Zd ZdZ	 	 	 	 	 	 	 	 dˆ fd„Zdd„Zˆ xZS )ÚParserSyntaxErrorz7The provided source text could not be parsed correctly.c               óL   •— || _         || _        || _        t        ‰| �  «        y )N)ÚspanÚmessageÚsourceÚsuperÚ__init__)Úselfr   r   r   Ú	__class__s       €r   r   zParserSyntaxError.__init__   s%   ø€ ð ˆŒ	ØˆŒØˆŒä‰ÑÕr   c                óÂ   — d| j                   d   z  d| j                   d   | j                   d   z
  z  z   dz   }dj                  | j                  | j                  |g«      S )Nú r   ú~r   ú^z
    )r   Újoinr   r   )r   Úmarkers     r   Ú__str__zParserSyntaxError.__str__"   sV   € Ø�t—y‘y ‘|Ñ# c¨T¯Y©Y°q©\¸D¿I¹IÀa¹LÑ-HÑ&IÑIÈCÑOˆØ�}‰}˜dŸl™l¨D¯K©K¸Ð@ÓAÐAr   )r   r   r   r   r   ztuple[int, int]ÚreturnÚNone)r(   r   )r   r   r   Ú__doc__r   r'   Ú__classcell__)r    s   @r   r   r      s7   ø„ ÙAðàðð ð	ð
 ðð 
õ÷Br   r   ÚLEFT_PARENTHESISz\(ÚRIGHT_PARENTHESISz\)ÚLEFT_BRACKETz\[ÚRIGHT_BRACKETz\]Ú	SEMICOLONú;ÚCOMMAú,ÚQUOTED_STRINGzk
            (
                ('[^']*')
                |
                ("[^"]*")
            )
        ÚOPz(===|==|~=|!=|<=|>=|<|>)ÚBOOLOPz\b(or|and)\bÚINz\bin\bÚNOTz\bnot\bÚVARIABLEa‡  
            \b(
                python_version
                |python_full_version
                |os[._]name
                |sys[._]platform
                |platform_(release|system)
                |platform[._](version|machine|python_implementation)
                |python_implementation
                |implementation_(name|version)
                |extra
            )\b
        Ú	SPECIFIERÚATz\@ÚURLz[^ \t]+Ú
IDENTIFIERz\b[a-zA-Z0-9][a-zA-Z0-9._-]*\bÚVERSION_PREFIX_TRAILz\.\*z\+[a-z0-9]+(?:[-_\.][a-z0-9]+)*z[ \t]+ú$)ÚVERSION_LOCAL_LABEL_TRAILÚWSÚENDú dict[str, str | re.Pattern[str]]ÚDEFAULT_RULESc                  óž   — e Zd ZdZ	 	 	 	 	 	 dd„Zdd„Zddœdd„Zdd„Zdd„Zd	d	d
œ	 	 	 	 	 	 	 dd„Z	e
j                  	 	 	 	 	 	 	 	 dd„«       Zy	)Ú	Tokenizerz„Context-sensitive token parsing.

    Provides methods to examine the input stream to check whether the next token
    matches.
    c               ó²   — || _         |j                  «       D ��ci c]  \  }}|t        j                  |«      “Œ c}}| _        d | _        d| _        y c c}}w )Nr   )r   ÚitemsÚreÚcompileÚrulesÚ
next_tokenr   )r   r   rK   r   Úpatterns        r   r   zTokenizer.__init__a   sO   € ð ˆŒà;@¿;¹;»=÷2
Ù*7¨$°ˆD”"—*‘*˜WÓ%Ñ%ó2
ˆŒ
ð )-ˆŒØˆ�ùó	2
s   › Ac                óH   — | j                  |«      r| j                  «        yy)z8Move beyond provided token name, if at current position.N)ÚcheckÚread)r   r   s     r   ÚconsumezTokenizer.consumen   s   € à�:‰:�dÔØ�I‰I�Kð r   F)Úpeekc               ó,  — | j                   �J d|›d| j                   ›�«       ‚|| j                  v s
J d|›�«       ‚| j                  |   }|j                  | j                  | j                  «      }|€y|st        ||d   | j                  «      | _         y)zÿCheck whether the next token has the provided name.

        By default, if the check succeeds, the token *must* be read before
        another check. If `peek` is set to `True`, the token is not loaded and
        would need to be checked again.
        zCannot check for z, already have zUnknown token name: Fr   T)rL   rK   Úmatchr   r   r
   )r   r   rR   Ú
expressionrT   s        r   rO   zTokenizer.checks   sŸ   € ð �O‰OÐ#ð	Jà˜t˜h o°d·o±oÐ5HÐIó	JØ#à�t—z‘zÑ!ÐBÐ%9¸$¸Ð#BÓBÐ!à—Z‘Z Ñ%ˆ
à× Ñ  §¡¨d¯m©mÓ<ˆØˆ=ØÙÜ# D¨%°©(°D·M±MÓBˆDŒOØr   c               ól   — | j                  |«      s| j                  d|› �«      ‚| j                  «       S )zsExpect a certain token name next, failing with a syntax error otherwise.

        The token is *not* read.
        z	Expected )rO   Úraise_syntax_errorrP   )r   r   Úexpecteds      r   ÚexpectzTokenizer.expectˆ   s4   € ð
 �z‰z˜$ÔØ×)Ñ)¨I°h°ZÐ*@ÓAÐAØ�y‰y‹{Ðr   c                ó„   — | j                   }|€J ‚| xj                  t        |j                  «      z  c_        d| _         |S )z%Consume the next token and return it.N)rL   r   Úlenr   )r   Útokens     r   rP   zTokenizer.read‘   s9   € à—‘ˆØÐ Ð Ð à�Šœ˜UŸZ™Z›Ñ(�ØˆŒàˆr   N)Ú
span_startÚspan_endc               ór   — |€| j                   n||€| j                   n|f}t        || j                  |¬«      ‚)z.Raise ParserSyntaxError at the given position.)r   r   )r   r   r   )r   r   r]   r^   r   s        r   rW   zTokenizer.raise_syntax_error›   sC   € ð (Ð/ˆD�MŠM°ZØ%Ð-ˆD�MŠM°8ð
ˆô  ØØ—;‘;Øô
ð 	
r   c             #  óô   K  — | j                  |«      r| j                  }| j                  «        nd }d –— |€y | j                  |«      s| j                  d|› d|› d|› �|¬«       | j                  «        y ­w)NzExpected matching z for z, after )r]   )rO   r   rP   rW   )r   Ú
open_tokenÚclose_tokenÚaroundÚopen_positions        r   Úenclosing_tokenszTokenizer.enclosing_tokens­   sz   è ø€ ð �:‰:�jÔ!Ø ŸM™MˆMØ�I‰I�Kà ˆMãàÐ Øà�z‰z˜+Ô&Ø×#Ñ#Ø$ [ M°°z°lÀ(È6È(ÐSØ(ð $ô ð
 	�	‰	�ùs   ‚A6A8)r   r   rK   rC   r(   r)   )r   r   r(   r)   )r   r   rR   Úboolr(   rf   )r   r   rX   r   r(   r
   )r(   r
   )r   r   r]   ú
int | Noner^   rg   r(   r   )ra   r   rb   r   rc   r   r(   zIterator[None])r   r   r   r*   r   rQ   rO   rY   rP   rW   Ú
contextlibÚcontextmanagerre   r   r   r   rF   rF   Z   s®   „ ñðàðð 0ð	ð
 
óóð
 05õ ó*óð "&Ø#ñ
àð
ð ð	
ð
 ð
ð 
ó
ð$ ×ÑðØðØ,/ðØ<?ðà	òó ñr   rF   )Ú
__future__r   rh   rI   Údataclassesr   Útypingr   r   Ú
specifiersr   r
   Ú	Exceptionr   rJ   ÚVERBOSEÚ_operator_regex_strÚ_version_regex_strÚ
IGNORECASErD   r   rF   r   r   r   ú<module>rs      s¢  ðÞ "ã Û 	Ý !ß %å !ð ÷ð ó ðôB˜	ô Bð*03Ø˜ð03à˜ð03ð �Eð03ð �Uð	03ð
 �ð03ð ˆTð03ð �Z�R—Z‘Zð	ð 	�
‰
ó	ð03ð" 	Ð
%ð#03ð$ ˆoð%03ð& 	ˆ)ð'03ð( 
ˆ:ð)03ð* �
�—
‘
ð	ð 	�
‰
óð+03ðJ ��—‘Ø×%Ñ%¨	×(DÑ(DÑDØ
�
‰
�R—]‘]Ñ"óðK03ðR 	ˆ%ðS03ðT 
ˆ:ðU03ðV Ð3ðW03ðX ˜GðY03ðZ "DØ
Øò_03€Ð/ó 0÷fhò hr   