
    -hh@T              
       H   S r SrSSKJr  SSKJrJr  SSKrSSK	r	SSK
Jr  SSKrSSKrSSKrSSK7  SSKJr  SSKr\R&                  " S	\R(                  5      r\R&                  " S
\R(                  5      rSSKr\R.                  / SQ-   rC " S S\R0                  " SS5      5      rS rS rS rSrSr\\" S\-   5      -   \" \5      -   rSr Sr!Sr"Sr#Sr$\" \!\"\#\$5      r%Sr&\" SS5      \" \&5      -   r'S\&-   r(\" \'\(5      r)\" S\)S-   5      r*\" \*\)\%5      r+S  r,\	RZ                  S! 5       r.\" \," 5       6 r/S"r0S#r1S$r2S%r3\" \/S&-   \/S'-   5      r4\" \/S(-   \/S)-   5      r5\" \6" \Rn                  \8" \S*S+95      6 r9\" S,\95      r:\" \+\:\5\ 5      r;\\;-   r<\" \/S--   \" S.S5      -   \/S/-   \" S0S5      -   5      r=\" S1\\45      r>\\" \>\+\:\=\ 5      -   r?0 r@\," 5        H#  rA\0\@\AS.-   '   \1\@\AS0-   '   \2\@\AS&-   '   \3\@\AS'-   '   M%     CA\B" 5       rC\B" 5       rD\," 5        HG  rE\ES0-   \ES.-   4 H  rF\CR                  \F5        M     \ES'-   \ES&-   4 H  rF\DR                  \F5        M     MI     CECFS2rH " S3 S4\I5      rJ " S5 S65      rKS7 rLS8 rMS9 rNS: rS; rOS< rPS= rQS> rRSAS? jrS\TS@:X  a  \Q" 5         gg)BzKa-Ping Yee <ping@lfw.org>zpGvR, ESR, Tim Peters, Thomas Wouters, Fred Drake, Skip Montanaro, Raymond Hettinger, Trent Nelson, Michael Foord    )open)lookupBOM_UTF8N)TextIOWrapper)*)EXACT_TOKEN_TYPESz&^[ \t\f]*#.*?coding[:=][ \t]*([-\w.]+)s   ^[ \t\f]*(?:[#\r\n]|$))tokenizegenerate_tokensdetect_encoding
untokenize	TokenInfor   
TokenErrorc                   *    \ rS rSrS r\S 5       rSrg)r   /   c                 j    SU R                   [        U R                      4-  nSU R                  US9-  $ )Nz%d (%s)z8TokenInfo(type=%s, string=%r, start=%r, end=%r, line=%r))type)r   tok_name_replace)selfannotated_types     1/opt/python-3.13.8/usr/lib/python3.13/tokenize.py__repr__TokenInfo.__repr__0   s9    "dii$))1D%EEJ>23 	4    c                     U R                   [        :X  a'  U R                  [        ;   a  [        U R                     $ U R                   $ N)r   OPstringr   r   s    r   
exact_typeTokenInfo.exact_type5   s2    99?t{{.??$T[[1199r    N)__name__
__module____qualname____firstlineno__r   propertyr    __static_attributes__r"   r   r   r   r   /   s    4
  r   r   ztype string start end linec                  0    SSR                  U 5      -   S-   $ )N(|))joinchoicess    r   groupr0   <   s    C#((7"33c99r   c                      [        U 6 S-   $ )Nr   r0   r.   s    r   anyr3   =   s    %/C//r   c                      [        U 6 S-   $ )N?r2   r.   s    r   mayber6   >   s    E7Oc11r   z[ \f\t]*z	#[^\r\n]*z\\\r?\nz\w+z0[xX](?:_?[0-9a-fA-F])+z0[bB](?:_?[01])+z0[oO](?:_?[0-7])+z(?:0(?:_?0)*|[1-9](?:_?[0-9])*)z[eE][-+]?[0-9](?:_?[0-9])*z)[0-9](?:_?[0-9])*\.(?:[0-9](?:_?[0-9])*)?z\.[0-9](?:_?[0-9])*z[0-9](?:_?[0-9])*z[0-9](?:_?[0-9])*[jJ]z[jJ]c            
         / SQn S1nU  Hz  n[         R                  " U5       H]  n[         R                  " U Vs/ s H  oDUR                  5       4PM     sn6  H#  nUR	                  SR                  U5      5        M%     M_     M|     U$ s  snf )N)brufbrfr )
_itertoolspermutationsproductupperaddr-   )_valid_string_prefixesresultprefixtcr:   s         r   _all_string_prefixesrI   U   s     >TF(((0A  ''!)D!Qaggi.!)DE

2771:& F 1 ) M *Es   B
c                 L    [         R                  " U [         R                  5      $ r   )recompileUNICODE)exprs    r   _compilerO   d   s    ::dBJJ''r   z[^'\\]*(?:\\.[^'\\]*)*'z[^"\\]*(?:\\.[^"\\]*)*"z%[^'\\]*(?:(?:\\.|'(?!''))[^'\\]*)*'''z%[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*"""z'''z"""z'[^\n'\\]*(?:\\.[^\n'\\]*)*'z"[^\n"\\]*(?:\\.[^\n"\\]*)*"T)reversez\r?\nz'[^\n'\\]*(?:\\.[^\n'\\]*)*'z"[^\n"\\]*(?:\\.[^\n"\\]*)*"z
\\\r?\n|\Z   c                       \ rS rSrSrg)r      r"   N)r#   r$   r%   r&   r(   r"   r   r   r   r      s    Tr   r   c                   8    \ rS rSrS rS rS rS rS rS r	Sr
g	)
Untokenizer   c                 X    / U l         SU l        SU l        S U l        SU l        S U l        g )N   r   r>   )tokensprev_rowprev_col	prev_type	prev_lineencodingr   s    r   __init__Untokenizer.__init__   s,    r   c                 P   Uu  p#X R                   :  d  X R                   :X  a?  X0R                  :  a0  [        SR                  X#U R                   U R                  5      5      eU R	                  U5        X0R                  -
  nU(       a  U R
                  R                  SU-  5        g g )Nz+start ({},{}) precedes previous end ({},{}) )r\   r]   
ValueErrorformatadd_backslash_continuationr[   append)r   startrowcol
col_offsets        r   add_whitespaceUntokenizer.add_whitespace   s    #"63;NJ$fSt}}dmmLN N''.==(
KKsZ/0 r   c                    US   nX R                   -
  nUS:X  a  g U R                  R                  S5      (       a  SOSnU R                  R                  S5      nSR	                  [
        R                  " [        R                  [        U5      5      5      nU R                  R                  USU 3U-  -   5        SU l        g )Nr   z

z\
r>   \)r\   r_   endswithrstripr-   r?   	takewhilestrisspacereversedr[   rh   r]   )r   ri   rj   
row_offsetnewlinelinewss          r   rg   &Untokenizer.add_backslash_continuation   s     Ah==(
? NN33F;;&~~$$X.WWZ))#++x~FG2"WI ;;<r   c                 h   / nSnU H  nUS:X  a  U(       a  SnOUR                  U5        US:X  a]  [        S [        R                  " SR                  USS S2   5       5       5      nUS-  S	:X  d	  US   S
:w  a  UR                  U5        OSnUR                  U5        M     SR                  U5      $ )NF}{c              3   &   #    U  H  nS v   M	     g7f)rZ   Nr"   ).0chars     r   	<genexpr>.Untokenizer.escape_brackets.<locals>.<genexpr>   s      $#$A #s   rq      r   NTr>   )rh   sumr?   rt   __eq__r-   )r   token
charactersconsume_until_next_bracket	charactern_backslashess         r   escape_bracketsUntokenizer.escape_brackets   s    
%*"IC-16.%%i0C # $","6"6"26r6*#$ ! !1$)Z^s-B%%i015.i(# $ wwz""r   c                    [        U5      n/ nSnU GH  n[        U5      S:X  a  U R                  XR5          GOUu  pgpn
U[        :X  a  Xpl        M?  U[
        :X  a    GOU[        :X  a  UR                  U5        Mi  U[        :X  a!  UR                  5         U	u  U l
        U l        M  U[        [        4;   a  SnOU(       aL  U(       aE  US   nUS   [        U5      :  a+  U R                  R                  U5        [        U5      U l        SnOhU[        :X  a^  SU;   d  SU;   aR  U R!                  U5      nUR"                  " 5       S   nU	u  pUR%                  S5      UR%                  S	5      -   nXU-   4n	U R'                  U5        U R                  R                  U5        U	u  U l
        U l        U[        [        4;   a  U =R                  S-  sl
        S
U l        X`l        Xl        GM     SR-                  U R                  5      $ )NFr   Tr   rZ   r   r~   z{{z}}r   r>   )iterlencompatENCODINGr`   	ENDMARKERINDENTrh   DEDENTpopr\   r]   NEWLINENLr[   FSTRING_MIDDLEr   
splitlinescountrm   r^   r_   r-   )r   iterableitindents	startlinerG   tok_typer   ri   endrz   indent	last_lineend_lineend_colextra_charss                   r   r   Untokenizer.untokenize   s   (^	A1v{A"01-HU8# %9$6!u%V#/2,t}gr]* 	w 8s6{*KK&&v.$'KDM!	^+%<3%< 007E % 0 0 22 6I(+%H"+//$"7)//$:O"OK#{%:;C&KKu%+.(DM4=GR=(" !%N!NQ R wwt{{##r   c                    / nU R                   R                  nUS   [        [        4;   nSnSn[        R
                  " U/U5       GHx  nUS S u  pU	[        :X  a  Xl        M  U	[        [        4;   a  U
S-  n
U	[        :X  a  U(       a  SU
-   n
SnOSnU	[        :X  a  US-  nOU	[        :X  a  US-  nU	[        :X  a  UR                  U
5        M  U	[        :X  a  UR                  5         M  U	[        [        4;   a  SnO7U(       a  U(       a  U" US   5        SnOU	[         :X  a  U R#                  U
5      n
U
S;   a0  U R                   (       a  U R                   S   U
:X  a  U(       a  SU
-   n
U	[        [        4;   a5  U R$                  [        [        4;   a  U R                   R                  S5        U" U
5        Xl        GM{     g )	Nr   Fr   rd   TrZ   r   >   r   r~   )r[   rh   r   r   r?   chainr   r`   NAMENUMBERSTRINGFSTRING_STARTFSTRING_ENDr   r   r   r   r   r^   )r   r   r   r   toks_appendr   
prevstring
in_fstringtoktoknumtokvals              r   r   Untokenizer.compat  s   kk((!H"-	

##UGX6C !WNF! &$'#  6\F!
"
&a
;&a
v&6!GR=( 	wGBK(!	>)--f5 #B68QV`v &-00T^^P[G\5\""3'#NY 7r   )r`   r]   r_   r\   r^   r[   N)r#   r$   r%   r&   ra   rm   rg   r   r   r   r(   r"   r   r   rW   rW      s!    1"#.-$^3$r   rW   c                     [        5       nUR                  U 5      nUR                  b  UR                  UR                  5      nU$ r   )rW   r   r`   encode)r   utouts      r   r   r   F  s:     
B
--
!C	{{jj%Jr   c                     U S S R                  5       R                  SS5      nUS:X  d  UR                  S5      (       a  gUS;   d  UR                  S5      (       a  gU $ )	N   _-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   [  s^     3B-



'
'S
1C
g~11
66
~~ABBOr   c                   ^ ^^  T R                   R                  mSmS nSnU 4S jnUU4S jnU" 5       nUR                  [        5      (       a	  SmUSS  nSnU(       d  U/ 4$ U" U5      nU(       a  X/4$ [
        R                  U5      (       d  X%/4$ U" 5       nU(       d  X%/4$ U" U5      nU(       a  XU/4$ X%U/4$ ! [         a    S m Nf = f)NFr   c                  4   >  T " 5       $ ! [          a     gf = f)Nr   )StopIterationreadlines   r   read_or_stop%detect_encoding.<locals>.read_or_stop~  s"    	: 		s   
 
c                   >  U R                  S5      n[        R                  U5      nU(       d  g [        UR                  S5      5      n [        U5      nT(       a-  US:w  a"  Tc  SnOSR                  T5      n[        U5      eUS	-  nU$ ! [         a#    SnTb  SR                  UT5      n[        U5      ef = f! [         a'    Tc  SU-   nOSR                  TU5      n[        U5      ef = f)
Nr   z'invalid or missing encoding declarationz{} for {!r}rZ   zunknown encoding: zunknown encoding for {!r}: {}zencoding problem: utf-8z encoding problem for {!r}: utf-8z-sig)
decodeUnicodeDecodeErrorrf   SyntaxError	cookie_rematchr   r0   r   LookupError)rz   line_stringmsgr   r`   codec	bom_foundfilenames         r   find_cookie$detect_encoding.<locals>.find_cookie  s
   		# ++g.K ,#EKKN3		#8$E 7"#3C<CCHMC!#&&H= " 	#;C##**39c""		#  	#*X55<<X "c""	#s   B B= -B:=1C.T   	utf-8-sig)__self__nameAttributeErrorr   r   blank_rer   )	r   r`   defaultr   r   firstsecondr   r   s	   `      @@r   r   r   f  s    "$$)) IHG$L NE!!	ab	{5!H  >>%  ^F6"H((FO##O  s   B? ?CCc                     [        U S5      n [        UR                  5      u  p#UR                  S5        [	        XSS9nSUl        U$ !   UR                  5         e = f)Nrbr   T)line_bufferingr9   )_builtin_openr   r   seekr   modeclose)r   bufferr`   linestexts        r   r   r     s[     8T*F)&//:AVdC	s   :A	 	Ac              #      #    [        U 5      u  p[        R                  " U[        U S5      5      nUb  US:X  a  Sn[	        [
        USSS5      v   [        UR                  USS9 S h  vN   g  N7f)Nr   r   r   )r   r   r>   Textra_tokens)r   r?   r   r   r   r   !_generate_tokens_from_c_tokenizer__next__)r   r`   consumedrl_gens       r   r	   r	     sj     & )2HhXs(;<F{"H(FFB??0(Y]^^^s   A'A1)A/*A1c                     [        U SS9$ )NTr   )r   r   s    r   r
   r
     s     -XDIIr   c                  j  ^ SS K n S mSU4S jjnU R                  SS9nUR                  SSSS	S
9  UR                  SSSSSS9  UR                  5       n UR                  (       a@  UR                  n[        US5       n[        [        UR                  5      5      nS S S 5        O$Sn[        [        R                  R                  SS9nW Hp  nUR                  nUR                  (       a  UR                  nSUR                  UR                   -   -  n	[#        U	<S [$        U   <S UR&                  <S 35        Mr     g ! , (       d  f       N= f! [(         a6  n
U
R*                  S   SS u  pU" U
R*                  S   WX45         S n
A
g S n
A
f[,         a3  n
U
R*                  S   u  pU" U
R*                  S   WX45         S n
A
g S n
A
f[.         a  n
U" U
W5         S n
A
g S n
A
f[0         a  n
U" U
5         S n
A
g S n
A
f[2         a    [#        S5         g [4         a  n
T" SU
-  5        e S n
A
ff = f)Nr   c                     [         R                  R                  U 5        [         R                  R                  S5        g )Nrp   )sysstderrwrite)messages    r   perrormain.<locals>.perror  s&    

!

r   c                    > U(       a  U4U-   U 4-   nT" SU-  5        O"U(       a  T" U< SU < 35        OT" SU -  5        [         R                  " S5        g )Nz%s:%d:%d: error: %sz	: error: z	error: %srZ   )r   exit)r   r   locationargsr   s       r   errormain.<locals>.error  sO    ;)WJ6D(4/0h89;()r   zpython -m tokenize)progr   r5   zfilename.pyz'the file to tokenize; defaults to stdin)destnargsmetavarhelpz-ez--exactexact
store_truez(display token names using the exact type)r	  actionr  r   z<stdin>Tr   z%d,%d-%d,%d:2015rZ   r   zinterrupted
zunexpected error: %s)NN)argparseArgumentParseradd_argument
parse_argsr   r   listr	   r   r   r   stdinr   r  r    ri   r   printr   r   IndentationErrorr  r   r   OSErrorKeyboardInterrupt	Exception)r  r  parserr  r   r;   r[   r   
token_typetoken_rangeerrrz   columnr   s                @r   mainr"    s    $$*>$?F
Zs -F  H iglG  ID"==}}Hx.!hqzz23 /. !H6		""7F
 EJzz"--
(EKK%)),CDK 4ellD E  /.   5xx{1Q'chhqk8d^44 5xx{chhqk8d^44 c8 c

 o %+,sg   )E ?EB#E 
EE 
H2,FH2)G		H2	G$$H21G>>H2	H2!H--H2c                     SU ;   a  gU $ )Nz)unterminated triple-quoted string literalzEOF in multi-line stringr"   )r   s    r   _transform_msgr$  5  s     3c9)Jr   c              #   f  #    Uc  [         R                  " XS9nO[         R                  " XUS9n U H  n[        R                  U5      v   M     g ! [         aR  n[        U5      [        :w  a  US e[        UR                  5      n[        XeR                  UR                  45      S eS nAff = f7f)Nr   )r`   r   )	_tokenizeTokenizerIterr   _maker   r   r$  r   r   linenooffset)sourcer`   r   r   infoer   s          r   r   r   ?  s     $$VG$$V\Z>D//$''  >7k!QUU#xx23=	>s)   .B1 A B1
B.AB))B..B1__main__)NF)U
__author____credits__builtinsr   r   codecsr   r   collections	functoolsior   	itertoolsr?   rK   r   r   r   r&  rL   ASCIIr   r   __all__
namedtupler   r0   r3   r6   
WhitespaceCommentIgnoreName	Hexnumber	Binnumber	Octnumber	Decnumber	IntnumberExponent
PointfloatExpfloatFloatnumber
ImagnumberNumberrI   	lru_cacherO   StringPrefixSingleDoubleSingle3Double3TripleStringmapescapesortedSpecialFunny
PlainTokenTokenContStrPseudoExtrasPseudoTokenendpats_prefixsetsingle_quotedtriple_quotedrG   r:   rC   tabsizer  r   rW   r   r   r   r	   r
   r"  r$  r   r#   r"   r   r   <module>ra     s  . *
 + #     	 
  # JJ@"((K	::0"((; 
-- L L	&&{4PQ  : / 1 

	c*z12	2U7^	C&		 	.	)Y	9=	(?)+-28_=
(*J)+[7-BC
	z;		2 ( (
 *,- 
$	#
2
2	|e#\E%9	:	|====
? RYY'8$ GH
Ih 65&$/
 ==c:&'==c:&'( ]GV45vugtLL
 #%G#GGcM#GGcM&GGeO&GGeO	 &
  		A#gq3w!  %iU#! $ 
 
 q
 ! !^$ ^$B*	Z$z_8J=~>  zF r   