§
    ÇÁ³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dS )4é    )ÚannotationsN)Ú	dataclass)ÚIteratorÚNoReturné   )Ú	Specifierc                  ó.   — e Zd ZU ded<   ded<   ded<   dS )ÚTokenÚstrÚnameÚtextÚintÚpositionN)Ú__name__Ú
__module__Ú__qualname__Ú__annotations__© ó    úR/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/packaging/_tokenizer.pyr
   r
      s+   € € € € € € à€I€I�IØ€I€I�IØ€M€M�M€M€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.Úmessager   ÚsourceÚspanútuple[int, int]ÚreturnÚNonec               ór   •— || _         || _        || _        t          ¦   «                              ¦   «          d S )N)r   r   r   ÚsuperÚ__init__)Úselfr   r   r   Ú	__class__s       €r   r!   zParserSyntaxError.__init__   s6   ø€ ð ˆŒ	ØˆŒØˆŒå‰Œ×ÒÑÔÐÐÐr   c                óª   — d| j         d         z  d| j         d         | j         d         z
  z  z   dz   }d                     | j        | j        |g¦  «        S )Nú r   ú~r   ú^z
    )r   Újoinr   r   )r"   Úmarkers     r   Ú__str__zParserSyntaxError.__str__"   sO   € Ø�t”y ”|Ñ# c¨T¬Y°q¬\¸D¼IÀa¼LÑ-HÑ&IÑIÈCÑOˆØ�}Š}˜dœl¨D¬K¸Ð@ÑAÔAÐAr   )r   r   r   r   r   r   r   r   )r   r   )r   r   r   Ú__doc__r!   r*   Ú__classcell__)r#   s   @r   r   r      s_   ø€ € € € € ØAÐAðð ð ð ð ð ðBð Bð Bð Bð Bð Bð Bð 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                  ór   — 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dS )(Ú	Tokenizerz„Context-sensitive token parsing.

    Provides methods to examine the input stream to check whether the next token
    matches.
    r   r   ÚrulesrD   r   r   c               óv   — || _         d„ |                     ¦   «         D ¦   «         | _        d | _        d| _        d S )Nc                ó>   — i | ]\  }}|t          j        |¦  «        “ŒS r   )ÚreÚcompile)Ú.0r   Úpatterns      r   ú
<dictcomp>z&Tokenizer.__init__.<locals>.<dictcomp>h   s5   € ð 2
ð 2
ð 2
Ù*7¨$°ˆD•"”*˜WÑ%Ô%ð2
ð 2
ð 2
r   r   )r   ÚitemsrH   Ú
next_tokenr   )r"   r   rH   s      r   r!   zTokenizer.__init__a   sG   € ð ˆŒð2
ð 2
Ø;@¿;º;¹=¼=ð2
ñ 2
ô 2
ˆŒ
ð )-ˆŒØˆŒˆˆr   r   c                ó\   — |                       |¦  «        r|                      ¦   «          dS dS )z8Move beyond provided token name, if at current position.N)ÚcheckÚread)r"   r   s     r   ÚconsumezTokenizer.consumen   s1   € à�:Š:�dÑÔð 	Ø�IŠI‰KŒKˆKˆKˆKð	ð 	r   F)ÚpeekrV   Úboolc               ó  — | j         �J d|›d| j         ›�¦   «         ‚|| j        v sJ d|›�¦   «         ‚| j        |         }|                     | j        | j        ¦  «        }|€dS |s!t          ||d         | j        ¦  «        | _         dS )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.
        NzCannot check for z, already have zUnknown token name: Fr   T)rQ   rH   Úmatchr   r   r
   )r"   r   rV   Ú
expressionrY   s        r   rS   zTokenizer.checks   s©   € ð ŒOÐ#Ð#ØI˜tÐIÐI°d´oÐIÐIñ $Ô#Ð#à�t”zÐ!Ð!Ð!Ð#B¸$Ð#BÐ#BÑ!Ô!Ð!à”Z Ô%ˆ
à× Ò  ¤¨d¬mÑ<Ô<ˆØˆ=Ø�5Øð 	CÝ# D¨%°¬(°D´MÑBÔBˆDŒOØˆtr   Úexpectedr
   c               ó„   — |                       |¦  «        s|                      d|› �¦  «        ‚|                      ¦   «         S )zsExpect a certain token name next, failing with a syntax error otherwise.

        The token is *not* read.
        z	Expected )rS   Úraise_syntax_errorrT   )r"   r   r[   s      r   ÚexpectzTokenizer.expectˆ   sD   € ð
 �zŠz˜$ÑÔð 	BØ×)Ò)Ð*@°hÐ*@Ð*@ÑAÔAÐAØ�yŠy‰{Œ{Ðr   c                ón   — | j         }|€J ‚| xj        t          |j        ¦  «        z  c_        d| _         |S )z%Consume the next token and return it.N)rQ   r   Úlenr   )r"   Útokens     r   rT   zTokenizer.read‘   s9   € à”ˆØÐ Ð Ð àˆŒ�˜UœZ™œÑ(ˆŒØˆŒàˆr   N)Ú
span_startÚspan_endr   rb   ú
int | Nonerc   r   c               ó\   — |€| j         n||€| j         n|f}t          || j        |¬¦  «        ‚)z.Raise ParserSyntaxError at the given position.N)r   r   )r   r   r   )r"   r   rb   rc   r   s        r   r]   zTokenizer.raise_syntax_error›   sK   € ð (Ð/ˆDŒMˆM°ZØ%Ð-ˆDŒMˆM°8ð
ˆõ  ØØ”;Øð
ñ 
ô 
ð 	
r   Ú
open_tokenÚclose_tokenÚaroundúIterator[None]c             #  ó  K  — |                       |¦  «        r| j        }|                      ¦   «          nd }d V — |€d S |                       |¦  «        s |                      d|› d|› d|› �|¬¦  «         |                      ¦   «          d S )NzExpected matching z for z, after )rb   )rS   r   rT   r]   )r"   rf   rg   rh   Úopen_positions        r   Úenclosing_tokenszTokenizer.enclosing_tokens­   s­   è è € ð �:Š:�jÑ!Ô!ð 	!Ø œMˆMØ�IŠI‰KŒKˆKˆKà ˆMàˆˆˆàÐ ØˆFà�zŠz˜+Ñ&Ô&ð 	Ø×#Ò#ØS [ÐSÐS°zÐSÐSÈ6ÐSÐSØ(ð $ñ ô ð ð
 	�	Š	‰Œˆˆˆr   )r   r   rH   rD   r   r   )r   r   r   r   )r   r   rV   rW   r   rW   )r   r   r[   r   r   r
   )r   r
   )r   r   rb   rd   rc   rd   r   r   )rf   r   rg   r   rh   r   r   ri   )r   r   r   r+   r!   rU   rS   r^   rT   r]   Ú
contextlibÚcontextmanagerrl   r   r   r   rG   rG   Z   sÛ   € € € € € ðð ðð ð ð ðð ð ð ð
 05ð ð ð ð ð ð ð*ð ð ð ðð ð ð ð "&Ø#ð
ð 
ð 
ð 
ð 
ð 
ð$ Ôðð ð ñ Ôðð ð r   rG   )Ú
__future__r   rm   rK   Údataclassesr   Útypingr   r   Ú
specifiersr   r
   Ú	Exceptionr   rL   ÚVERBOSEÚ_operator_regex_strÚ_version_regex_strÚ
IGNORECASErE   r   rG   r   r   r   ú<module>rx      sv  ðØ "Ð "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ø 	€	€	€	Ø !Ð !Ð !Ð !Ð !Ð !Ø %Ð %Ð %Ð %Ð %Ð %Ð %Ð %à !Ð !Ð !Ð !Ð !Ð !ð ðð ð ð ð ñ ô ñ „ððBð Bð Bð Bð B˜	ñ Bô Bð Bð*03Ø˜ð03à˜ð03ð �Eð03ð �Uð	03ð
 �ð03ð ˆTð03ð �Z�R”Zð	ð 	Œ
ñ	ô 	ð03ð" 	Ð
%ð#03ð$ ˆoð%03ð& 	ˆ)ð'03ð( 
ˆ:ð)03ð* �
�”
ð	ð 	Œ
ñô ð+03ðJ ��”ØÔ%¨	Ô(DÑDØ
Œ
�R”]Ñ"ñô ðK03ðR 	ˆ%ðS03ðT 
ˆ:ðU03ðV Ð3ðW03ðX ˜GðY03ðZ "DØ
Øð_03ð 03ð 03€ð 0ð 0ð 0ñ 0ðfhð hð hð hð hñ hô hð hð hð hr   