
    z%iR                        	 d Z dZddlZddlZddlmZmZ ddl ddlm	Z	  e
e	      D  cg c]  } | d   dk7  s|  c} g d	z   Z[		 e d
 Zd Zd Zd ZdZdZe edez         z    ee      z   ZdZdZdZdZ edd      Z eeeee      ZdZ edd       ee      z   Zdez   Z eee      Z ededz         Z  ee ee      Z!dZ"dZ#dZ$d Z%d!Z& ee&d"z   e&d#z         Z' ee&d$z   e&d%z         Z( ed&d'd(d)d*d+d,d-d.	      Z)d/Z* ed0d1d2      Z+ ee)e*e+      Z, ee!e,e(e      Z-ee-z   Z. ee&d3z    ed4d      z   e&d5z    ed6d      z         Z/ edee'      Z0e ee0e!e,e/e      z   Z1 e2ejf                  e.e1e$e%f      \  Z4Z5Z6Z7 ed7d8d9d:       ed7d8d;d<      z  h d=z  Z8 ejf                  e"       ejf                  e#      e6e7d>e8D ci c]  }| d"e6
 c}e8D ci c]  }| d#e7
 c}e8D ci c]  }|d c}Z9d"d#he8D ch c]  }| d"	 c}z  e8D ch c]  }| d#	 c}z  Z:d4d6he8D ch c]  }| d4	 c}z  e8D ch c]  }| d6	 c}z  Z;d?Z< G d@ dAe=      Z> G dB dCe=      Z?dD Z@e@fdEZAdF ZB G dG dH      ZC ejf                  dIej                        ZE ejf                  dJej                        ZFdK ZGdL ZHdM ZIdN ZJeKdOk(  r\ddlLZL eMeLj                        dkD  r& eA eOeLj                  d         j                         y eAeLj                  j                         yyc c} w # e$ r eZY w xY wc c}w c c}w c c}w c c}w c c}w c c}w c c}w )PzKa-Ping Yee <ping@lfw.org>z@GvR, ESR, Tim Peters, Thomas Wouters, Fred Drake, Skip Montanaro    N)BOM_UTF8lookup)*   )token_)tokenizegenerate_tokens
untokenizec                  0    ddj                  |       z   dz   S )N(|))joinchoicess    J/home/uftp/.pyenv/versions/3.12.0/lib/python3.12/lib2to3/pgen2/tokenize.pygroupr   0   s    C#((7"33c99    c                      t        |  dz   S )Nr   r   r   s    r   anyr   1   s    %/C//r   c                      t        |  dz   S )N?r   r   s    r   mayber   2   s    E7Oc11r   c                  ,     t         fd D              S )Nc              3      K   | ]5  }d z   D ]+  }|j                         |j                         k7  s%||z    - 7 yw)) N)casefold).0xyls      r   	<genexpr>z _combinations.<locals>.<genexpr>4   sC      !e)qzz|qzz|/KAs   .>>)set)r#   s   `r   _combinationsr&   3   s       r   z[ \f\t]*z	#[^\r\n]*z\\\r?\nz\w+z0[bB]_?[01]+(?:_[01]+)*z(0[xX]_?[\da-fA-F]+(?:_[\da-fA-F]+)*[lL]?z0[oO]?_?[0-7]+(?:_[0-7]+)*[lL]?z[1-9]\d*(?:_\d+)*[lL]?z0[lL]?z[eE][-+]?\d+(?:_\d+)*z\d+(?:_\d+)*\.(?:\d+(?:_\d+)*)?z\.\d+(?:_\d+)*z\d+(?:_\d+)*z\d+(?:_\d+)*[jJ]z[jJ]z[^'\\]*(?:\\.[^'\\]*)*'z[^"\\]*(?:\\.[^"\\]*)*"z%[^'\\]*(?:(?:\\.|'(?!''))[^'\\]*)*'''z%[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*"""z'(?:[uUrRbBfF]|[rR][fFbB]|[fFbBuU][rR])?'''"""z'[^\n'\\]*(?:\\.[^\n'\\]*)*'z"[^\n"\\]*(?:\\.[^\n"\\]*)*"z\*\*=?z>>=?z<<=?z<>z!=z//=?z->z[+\-*/%&@|^=<>]=?~z[][(){}]z\r?\nz:=z[:;.,`@]z'[^\n'\\]*(?:\\.[^\n'\\]*)*'z"[^\n"\\]*(?:\\.[^\n"\\]*)*"rRfFbB>   UuURUruRur)r*   r+   r'   r(      c                       e Zd Zy)
TokenErrorN__name__
__module____qualname__ r   r   r:   r:          r   r:   c                       e Zd Zy)StopTokenizingNr;   r?   r   r   rB   rB      r@   r   rB   c                 `    |\  }}|\  }}t        d||||t        |    t        |      fz         y )Nz%d,%d-%d,%d:	%s	%s)printtok_namerepr)	typer   xxx_todo_changemexxx_todo_changeme1linesrowscolerowecols	            r   
printtokenrO      s<    $LT4%LT4	
 	tT4$e=> ?r   c                 >    	 	 t        | |       y # t        $ r Y y w xY wN)tokenize_looprB   )readline
tokeneaters     r   r	   r	      s(    h
+ s    	c                 .    t        |       D ]  } ||  	 y rQ   )r
   )rS   rT   
token_infos      r   rR   rR      s    %h/  
J r   c                   $    e Zd Zd Zd Zd Zd Zy)Untokenizerc                 .    g | _         d| _        d| _        y )Nr   r   )tokensprev_rowprev_col)selfs    r   __init__zUntokenizer.__init__   s    r   c                 n    |\  }}|| j                   z
  }|r| j                  j                  d|z         y y )N )r\   rZ   append)r]   startrowcol
col_offsets        r   add_whitespacezUntokenizer.add_whitespace   s8    S4==(
KKsZ/0 r   c                 f   |D ]  }t        |      dk(  r| j                  ||        np|\  }}}}}| j                  |       | j                  j	                  |       |\  | _        | _        |t        t        fv sw| xj
                  dz  c_        d| _         dj                  | j                        S )N   r   r   r   )
lencompatrf   rZ   ra   r[   r\   NEWLINENLr   )r]   iterablettok_typer   rb   endrJ   s           r   r   zUntokenizer.untokenize   s     
	"A1v{Ax(01-HeUC&KKu%+.(DM4=GR=(" !
	" wwt{{##r   c                    d}g }| j                   j                  }|\  }}|t        t        fv r|dz  }|t        t
        fv rd}|D ]  }|d d \  }}|t        t        t        t        fv r|dz  }|t        k(  r|j                  |       C|t        k(  r|j                          ]|t        t
        fv rd}n|r|r ||d          d} ||        y )NFr`   Trh   )rZ   ra   NAMENUMBERrk   rl   ASYNCAWAITINDENTDEDENTpop)	r]   r   rm   	startlineindentstoks_appendtoknumtokvaltoks	            r   rj   zUntokenizer.compat   s    	kk((dF^#cMFgr]"I 	 C !WNFF$u55#v&6!GR=( 	wGBK(!	#	 r   N)r<   r=   r>   r^   rf   r   rj   r?   r   r   rX   rX      s    
1$ r   rX   z&^[ \t\f]*#.*?coding[:=][ \t]*([-\w.]+)s   ^[ \t\f]*(?:[#\r\n]|$)c                     	 | d d j                         j                  dd      }|dk(  s|j                  d      ry|dv s|j                  d      ry| S )	N   r   -utf-8zutf-8-)zlatin-1
iso-8859-1ziso-latin-1)zlatin-1-ziso-8859-1-ziso-latin-1-r   )lowerreplace
startswith)orig_encencs     r   _get_normal_namer      sY    2
3B-



'
'S
1C
g~1
66
~~ABOr   c                     	 dd }d} fd}fd} |       }|j                  t              r	d|dd  }d}|s|g fS  ||      }|r||gfS t        j                  |      s||gfS  |       }|s||gfS  ||      }|r|||gfS |||gfS )NFr   c                  F    	          S # t         $ r t               cY S w xY wrQ   )StopIterationbytes)rS   s   r   read_or_stopz%detect_encoding.<locals>.read_or_stop  s&    	: 	7N	s   
   c                 >   	 | j                  d      }t        j                  |      }|sy t	        |j                  d            }	 t        |      }r|j                  dk7  rt        d      |dz  }|S # t        $ r Y y w xY w# t        $ r t        d|z         w xY w)Nasciir   zunknown encoding: r   zencoding problem: utf-8z-sig)
decodeUnicodeDecodeError	cookie_rematchr   r   r   LookupErrorSyntaxErrorname)rJ   line_stringr   encodingcodec	bom_founds        r   find_cookiez$detect_encoding.<locals>.find_cookie  s    	++g.K ,#EKKN3	?8$E
 zzW$!";<<H# " 		  	?2X=>>	?s   A5 B 5	B BBT   z	utf-8-sig)r   r   blank_rer   )rS   r   defaultr   r   firstsecondr   s   `      @r   detect_encodingr      s    " IHG, NE!	ab	{5!H%  >>% ^F6"H%((UFO##r   c                 :    	 t               }|j                  |       S rQ   )rX   r   )rm   uts     r   r   r   :  s    " 
B==""r   c              #   x
  K   	 dx}x}}d\  }}d }dg}d }d}	d}
d}	 	  |        }|dz   }dt        |      }}|r|st        d      j                  |      }|r4|j	                  d      x}}t
        ||d | z   ||f||z   f d\  }}d }n|r0|dd  dk7  r(|d	d  d
k7  r t        ||z   |t        |      f|f d}d }||z   }||z   }|dk(  r|s|snd}||k  rA||   dk(  r|dz   }n(||   dk(  r|t        z  dz   t        z  }n||   dk(  rd}nn|dz   }||k  rA||k(  rn|r| d }||   dv r||   dk(  r]||d  j                  d      }|t        |      z   }t        |||f||t        |      z   f|f t        ||d  ||f|t        |      f|f n,t        t        f||   dk(     ||d  ||f|t        |      f|f ||d   kD  r%|j                  |       t        |d | |df||f|f ||d   k  rC||vrt        dd|||f      |d d }|	r|
|d   k\  rd}	d}d}
t        d||f||f|f ||d   k  rC|	r#|r!|
|d   k\  rd}	d}d}
n|st        d|df      d}||k  rt        j                  ||      }|rI|j!                  d      \  }}||f||f|}}}||| ||   }}|t"        j$                  v s
|dk(  r|dk7  rt&        ||||f n|dv r)t(        }|dkD  rt        }n|	rd}|r| d }|||||f n|dk(  r|r| d }t        ||||f n|t*        v rYt,        |   }|j                  ||      }|r/|j	                  d      }||| }|r| d }t
        ||||f|f nu||f}||d  }|}no|t.        v s|d d t.        v s|d d t.        v rR|d   dk(  r4||f}t,        |   xs t,        |d      xs t,        |d      }||d  d}}|}n|r| d }t
        ||||f n|j1                         r|dv r|	r|dk(  rt2        nt4        ||||f t6        ||||f}|dk(  r|s|}|dv r=|r;|d   t6        k(  r/|d   dk(  r'|dk(  rd}	|d   }
t2        |d   |d   |d   |d   f d }|r| d }| nd|dk(  r|r| d }t        ||||f|f d}nE|d v r|dz   }n	|d!v r|dz
  }|r| d }t8        ||||f nt        ||   ||f||dz   f|f |dz   }||k  r|r| d }|dd  D ]  }t        d|df|dfdf  t:        d|df|dfdf y # t         $ r d}Y w xY ww)"Nr   )r   r   Fr   r   zEOF in multi-line stringz\
z\
r`   	z#
#z
rr   z3unindent does not match any outer indentation levelz
<tokenize>zEOF in multi-line statement.Trh   r   
)asyncawaitr   )defforr      \z([{z)]})r   ri   r:   r   rp   STRING
ERRORTOKENtabsizerstripCOMMENTrl   ra   rw   IndentationErrorrx   
pseudoprogspanstringdigitsrt   rk   triple_quotedendprogssingle_quotedisidentifierru   rv   rs   OP	ENDMARKER)rS   lnumparenlev	continuedcontstrneedcontcontliner{   stashed	async_defasync_def_indentasync_def_nlrJ   posmaxstrstartendprogendmatchrp   columncomment_tokennl_pospseudomatchrb   sposeposr   initialnewliner   indents                                  r   r
   r
   O  s     #$#D#8iGXHcG GIL
	:D axc$iS !;XFF}}T*H$LLO+cwds3$ho? ?$)!d23i61d23i86K!7T>#dCI%6B B!D.#d?]9F)9#fqjV#Y$&&'/A2Ew1N#Y$&Ag ) cz5CyG#9#$(J$5$5f$=M 3}#55F"M #;sS5G/G(H$P PtFG} &>D#d)+<dD D =cc)9:DJ #;s4y(94A A#v&tDSzD!9tSk4HH72;&(*M%tS$79 9 "#2,!1WR[!@ %I#(L'($rD#;sTBB 72;& \.>'"+.M!	$#$   !>q	JJICi$**45K(--a0
s#'-$cCd!%eC$u+wfmm+sNu|!5$d;;&%G!|"$"'+%"&"E4t<<^%"&"E4t<<m+&uoG&}}T37H&ll1o $U3"")M&*G%udT3KFF$(%="&uv,#'-"1I."1I.RyD($(%=#+G#4 $6q8J $6#+E!H#5  ,0L!#'"")M&*G%udD$??))+ 22$,1W,<5%#($d#< <$dD9C'"% .#$+AJ$$6$+AJ'$9$~,0	3:2; 0#('!*#*1:wqz#*1:#/ / '+G%"&I_%"&udT3K>> !I%'HqL E)hl8%"&udD$77!49 #;s1ut= =AgS Cii ~ !"+ 5rD!9tQi445b4)dAY
33E  	D	s<   T:T( C:T: D T:J.T:17T:(T73T:6T77T:__main__)R
__author____credits__r   recodecsr   r   lib2to3.pgen2.tokenr   r   dir__all__r   	NameErrorstrr   r   r   r&   
WhitespaceCommentIgnoreName	Binnumber	Hexnumber	Octnumber	Decnumber	IntnumberExponent
PointfloatExpfloatFloatnumber
ImagnumberNumberSingleDoubleSingle3Double3
_litprefixTripleStringOperatorBracketSpecialFunny
PlainTokenTokenContStrPseudoExtrasPseudoTokenmapcompile	tokenprogr   single3progdouble3prog_strprefixesr   r   r   r   	Exceptionr:   rB   rO   r	   rR   rX   ASCIIr   r   r   r   r   r
   r<   sysri   argvopenrS   stdin)r!   prefixs   00r   <module>r     s  #0 *
F   # ! %j
0AaDCK1
0 4, ,		 : / 1
 

	c*z12	2U7^	C&	7	.	+X6	)Y	9=	#57HIERZO[
X%J)&g(=>
	z;		2 
$	#
2
27
	zE!:#5	6	z;;;;
= GWeU%%
 
%
-h)65&$/
 
;;c:&';;c:&'( Z&15vugtLL25JJWg638 /	:{K #sC%#sC%&&'  F#*"**V*<{99EFv&~{*F9 :FFv&~{*F9 +77vt|7	9 EN"./xs^/0"./xs^/0  	#J ,-fxq\-. ,-fxq\-.   ! ! %Y %? #- & 6  6 p BJJ@"((K	2::0"((;	G$R#*`4D z
388}q(4#4#=#=>
399%%
& Y 1   E\ GF7 0/ .-sF   L#L#L(  L6L;(
M =MM
)M=M(L32L3