ó
    T=Œj  ã                  ó  • % S SK Jr  S SKrS SKrS SKJr  S SKJrJrJ	r	  SSK
Jr  \ " S S5      5       r " S	 S
\5      r0 S\R                  " S5      _S\R                  " S5      _S\R                  " S5      _S\R                  " S5      _S\R                  " S5      _S\R                  " S5      _S\R                  " S\R                   5      _S\R                  " S5      _S\R                  " S5      _S\R                  " S5      _S\R                  " S 5      _S!\R                  " S"\R                   5      _S#\R                  " \R"                  \R                   \R$                  -  5      _S$\R                  " S%5      _S&\R                  " S'5      _S(\R                  " S)5      _S*\R                  " S+5      _\R                  " S,5      \R                  " S-5      \R                  " S.5      S/.ErS0\S1'    " S2 S35      rg)4é    )ÚannotationsN)Ú	dataclass)Ú	GeneratorÚMappingÚNoReturné   )Ú	Specifierc                  ó4   • \ rS rSr% S\S'   S\S'   S\S'   Srg)	ÚTokené   ÚstrÚnameÚtextÚintÚposition© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__Ú__static_attributes__r   ó    Úd/Users/stevendouglas/BidBrain/.venv/lib/python3.13/site-packages/pip/_vendor/packaging/_tokenizer.pyr   r      s   ‡ à
ƒIØ
ƒIØ†Mr   r   c                  óJ   ^ • \ rS rSrSr        SU 4S jjrSS jrSrU =r$ )ÚParserSyntaxErroré   z7The provided source text could not be parsed correctly.c               óF   >• X0l         Xl        X l        [        TU ]  5         g )N)ÚspanÚmessageÚsourceÚsuperÚ__init__)Úselfr    r!   r   Ú	__class__s       €r   r#   ÚParserSyntaxError.__init__   s   ø€ ð Œ	ØŒØŒä‰ÑÕr   c                ó®   • SU R                   S   -  SU R                   S   U R                   S   -
  -  -   S-   nU R                   SU R                   SU 3$ )NÚ r   Ú~r   Ú^z
    )r   r    r!   )r$   Úmarkers     r   Ú__str__ÚParserSyntaxError.__str__"   sW   € Ø�t—y‘y ‘|Ñ# c¨T¯Y©Y°q©\¸D¿I¹IÀa¹LÑ-HÑ&IÑIÈCÑOˆØ—,‘,�˜v d§k¡k ]°&¸¸ÐAÐAr   )r    r!   r   )r    r   r!   r   r   ztuple[int, int]ÚreturnÚNone)r.   r   )	r   r   r   r   Ú__doc__r#   r,   r   Ú__classcell__)r%   s   @r   r   r      s=   ø† ÙAðàðð ð	ð
 ðð 
÷÷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)
                |extras?
                |dependency_groups
            )\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ÚENDzdict[str, re.Pattern[str]]ÚDEFAULT_RULESc                  ó¸   • \ rS rSrSr      SS jrSS jrSS.SS jjrSS jrSS	 jr	S
S
S.       SS jjr
\R                          SS j5       rSrg
)Ú	Tokenizeré[   zxContext-sensitive token parsing.

Provides methods to examine the input stream to check whether the next token
matches.
c               ó8   • Xl         X l        S U l        SU l        g )Nr   )r!   ÚrulesÚ
next_tokenr   )r$   r!   rN   s      r   r#   ÚTokenizer.__init__b   s   € ð ŒØŒ
Ø(,ˆŒØˆ�r   c                óR   • U R                  U5      (       a  U R                  5         gg)z8Move beyond provided token name, if at current position.N)ÚcheckÚread)r$   r   s     r   ÚconsumeÚTokenizer.consumem   s   € à�:‰:�d×ÑØ�I‰I�Kð r   F)Úpeekc               ó@  • U R                   b   SU< SU R                   < 35       eXR                  ;   d   SU< 35       eU R                  U   nUR                  U R                  U R                  5      nUc  gU(       d  [        XS   U R                  5      U l         g)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)rO   rN   Úmatchr!   r   r   )r$   r   rV   Ú
expressionrX   s        r   rR   ÚTokenizer.checkr   s›   € ð �‰Ñ&ð 	
Ø ™x °t·±Ñ6IÐJó	
Ð&ð —z‘zÓ!ÐBÐ%9¸$¹Ð#BÓBÐ!à—Z‘Z Ñ%ˆ
à× Ñ  §¡¨d¯m©mÓ<ˆØ‰=ØÞÜ# D°©(°D·M±MÓBˆDŒOØr   c               óv   • U R                  U5      (       d  U R                  SU 35      eU R                  5       $ )zcExpect a certain token name next, failing with a syntax error otherwise.

The token is *not* read.
z	Expected )rR   Úraise_syntax_errorrS   )r$   r   Úexpecteds      r   ÚexpectÚTokenizer.expect‡   s7   € ð
 �z‰z˜$×ÑØ×)Ñ)¨I°h°ZÐ*@ÓAÐAØ�y‰y‹{Ðr   c                ó†   • U R                   nUc   eU =R                  [        UR                  5      -  sl        SU l         U$ )z%Consume the next token and return it.N)rO   r   Úlenr   )r$   Útokens     r   rS   ÚTokenizer.read�   s9   € à—‘ˆØÑ Ð Ð à�Šœ˜UŸZ™Z›Ñ(�ØˆŒàˆr   N)Ú
span_startÚspan_endc               óp   • Uc  U R                   OUUc  U R                   OU4n[        UU R                  US9e)z.Raise ParserSyntaxError at the given position.)r!   r   )r   r   r!   )r$   r    rd   re   r   s        r   r\   ÚTokenizer.raise_syntax_errorš   sC   € ð (Ñ/ˆD�MŠM°ZØ%Ñ-ˆD�MŠM°8ð
ˆô  ØØ—;‘;Øñ
ð 	
r   c             #  ó  #   • U R                  U5      (       a  U R                  nU R                  5         OS nS v •  Uc  g U R                  U5      (       d  U R                  SU SU SU 3US9  U R                  5         g 7f)NzExpected matching z for z, after )rd   )rR   r   rS   r\   )r$   Ú
open_tokenÚclose_tokenÚaroundÚopen_positions        r   Úenclosing_tokensÚTokenizer.enclosing_tokens¬   s   é € ð �:‰:�j×!Ñ!Ø ŸM™MˆMØ�I‰I�Kà ˆMãàÑ Øà�z‰z˜+×&Ñ&Ø×#Ñ#Ø$ [ M°°z°lÀ(È6È(ÐSØ(ð $ñ ð
 	�	‰	�ùs   ‚A>B )rO   r   rN   r!   )r!   r   rN   zMapping[str, re.Pattern[str]]r.   r/   )r   r   r.   r/   )r   r   rV   Úboolr.   ro   )r   r   r]   r   r.   r   )r.   r   )r    r   rd   ú
int | Nonere   rp   r.   r   )ri   r   rj   r   rk   r   r.   zGenerator[None, None, None])r   r   r   r   r0   r#   rT   rR   r^   rS   r\   Ú
contextlibÚcontextmanagerrm   r   r   r   r   rK   rK   [   s®   † ñð	àð	ð -ð		ð
 
ô	ôð
 05÷ ô*ôð "&Ø#ñ
àð
ð ð	
ð
 ð
ð 
õ
ð$ ×ÑðØðØ,/ðØ<?ðà	$óó ór   rK   )Ú
__future__r   rq   ÚreÚdataclassesr   Útypingr   r   r   Ú
specifiersr	   r   Ú	Exceptionr   ÚcompileÚVERBOSEÚ_specifier_regex_strÚ
IGNORECASErI   r   rK   r   r   r   Ú<module>r}      s-  ðÞ "ã Û 	Ý !ß /Ñ /å !ð ÷ð ó ðôB˜	ô Bð*1-Ø˜Ÿ
š
 5Ó)ð1-à˜Ÿš EÓ*ð1-ð �B—J’J˜uÓ%ð1-ð �R—Z’Z Ó&ð	1-ð
 �—’˜DÓ!ð1-ð ˆR�ZŠZ˜Óð1-ð �R—Z’Zð	ð 	�
‰
ó	ð1-ð" 	ˆ"�*Š*Ð0Ó
1ð#1-ð$ ˆb�jŠj˜Ó)ð%1-ð& 	ˆ"�*Š*�YÓ
ð'1-ð( 
ˆ2�:Š:�jÓ!ð)1-ð* �—
’
ð	ð 	�
‰
óð+1-ðL �—’Ø×&Ñ&Ø
�
‰
�R—]‘]Ñ"óðM1-ðT 	ˆ"�*Š*�UÓ
ðU1-ðV 
ˆ2�:Š:�jÓ!ðW1-ðX �"—*’*Ð>Ó?ðY1-ðZ ˜BŸJšJ wÓ/ð[1-ð\ "$§¢Ð,NÓ!OØ
�*Š*�YÓ
Ø�:Š:�dÓòa1-€Ð)ó 1÷hfò fr   