python (3.11.7)

(root)/
lib/
python3.11/
lib2to3/
pgen2/
__pycache__/
pgen.cpython-311.opt-2.pyc

e6ddlmZmZmZGddejZGddeZGddeZGdd	eZ	d
dZ
dS))grammartokentokenizeceZdZdS)PgenGrammarN)__name__
__module____qualname__F/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/lib2to3/pgen2/pgen.pyrrsDrrc~eZdZddZdZdZdZdZdZdZ	d	Z
d
ZdZdZ
d
ZdZdZdZddZdZdZdS)ParserGeneratorNcNd}|t|d}|j}||_||_t	j|j|_||	\|_
|_|
|i|_|
dS)Nzutf-8)encoding)openclosefilenamestreamrgenerate_tokensreadline	generatorgettokenparsedfasstartsymbolfirstaddfirstsets)selfrrclose_streams    r
__init__zParserGenerator.__init__s>(W555F!<L 
!1&/BB

&*jjll#	4##LNNN
rc	t}t|j}|||j|d|j|D]-}dt|j	z}||j	|<||j
|<.|D]}|j|}g}|D]}g}t|j
D]C\}	}
||||	||
fD|jr*|d||f|||j|||||f|j|j	|<|j	|j|_|S)N)rlistrkeyssortremoverinsertlen
symbol2number
number2symbolsortedarcsitemsappend
make_labelindexisfinalstates
make_firststart)rcnamesnameidfar4stater.labelnexts           r
make_grammarzParserGenerator.make_grammarsMMTY^^%%&&


T%&&&
Q()))	&	&Dc!/***A$%AOD!!%AOA	O	OD)D/CF
$
$#)%**:*:*<*<#=#=NNKE4KKE!:!:CIIdOO LMMMM=7KKCIIe$4$4 5666

d####
HOOF###-3T__Q5M5M,NAF1?4())/$"23rc~|j|}i}t|D]}|||}d||<|SNr)rr-r1)rr7r9rawfirstrr=ilabels       r
r5zParserGenerator.make_first4sM:d#H%%		E__Q..FE&MMrc,t|j}|dr||jvrI||jvr
|j|S|j|j|df||j|<|St
t|d}||jvr
|j|S|j|df||j|<|St|}|drH||j
vr
|j
|S|jtj|f||j
|<|Stj
|}||jvr
|j|S|j|df||j|<|SNr#)r*labelsisalphar+symbol2labelr0getattrrtokensevalkeywordsNAMEropmap)rr7r=rCitokenvalues      r
r1zParserGenerator.make_label=sQX8)	"''AN**>%00HOOQ_U%;T$BCCC,2AN5)!M!t44QX%%8F++HOOVTN333'-AHV$!MKKEQx!!
"AJ&&:e,,HOOUZ$7888(.AJu%!M!u-QX%%8F++HOOVTN333'-AHV$!Mrct|j}||D] }||jvr||!dSN)r%rr&r'r	calcfirst)rr8r9s   r
rzParserGenerator.addfirstsetsksaTY^^%%&&

	%	%D4:%%t$$$	%	%rc
.|j|}d|j|<|d}i}i}|jD]\}}||jvrh||jvr"|j|}|t	d|zn"|||j|}|||||<vd||<|di||<i}	|D]4\}}
|
D],}||	vr!t	d|d|d|d|	|||	|<-5||j|<dS)Nr#zrecursion for rule %rrzrule z is ambiguous; z is in the first sets of z as well as )rrr.r/
ValueErrorrSupdate)rr9r;r<totalsetoverlapcheckr=r>fsetinverseitsfirstsymbols            r
rSzParserGenerator.calcfirstssio
4A :++--
	1
	1KE4	!!DJ&&:e,D|()@4)GHHH$NN5))):e,D%%%&*U##"#',ajU##+1133	(	(OE8"
(
(W$$$*&*ddFFFEEE76??&LMMM#(
($
4rcti}d}|jtjkr|jtjkr)||jtjk)|tj}|tjd|\}}|tj|	||}t|}||t|}|||<||}|jtjk||fS)N:)typer	ENDMARKERNEWLINErexpectrMOP	parse_rhsmake_dfar*simplify_dfa)	rrrr9azr;oldlennewlens	         r
rzParserGenerator.parses	i5?**)u},,

)u},,;;uz**DKK#&&&>>##DAqKK
&&&--1%%CXXFc"""XXFDJ""#i5?**$[  rc
fd}fdt|||g}|D]}i}|jD]1}|jD]'\}}	| |	||i(2t	|D]R\}}
|D]}|j|
krn&t|
|}|||||S|S)Nc$i}|||SrRr)r<base
addclosures  r
closurez)ParserGenerator.make_dfa.<locals>.closuresDJud###KrcT||vrdSd||<|jD]\}}|||dSrAr.)r<rmr=r>rns    r
rnz,ParserGenerator.make_dfa.<locals>.addclosuresQ}}DK$z
+
+t=JtT***
+
+r)DFAStatenfasetr.
setdefaultr-r/r0addarc)
rr6finishror4r<r.nfastater=r>rsstrns
            @r
rezParserGenerator.make_dfasM						+	+	+	+	+775>>6223
	(
	(ED!L
E
E#+=EEKE4("
4)C)CDDDE"(

!5!5
(
(
v &&ByF**+"&&11BMM"%%%R''''
(
rcltd||g}t|D]\}}td|||urdpd|jD]l\}}||vr||}	n$t	|}	|||td|	zXtd||	fzmdS)NzDump of NFA for  State(final)z	    -> %d    %s -> %d)print	enumerater.r2r*r0)
rr9r6rvtodor:r<r=r>js
          r
dump_nfazParserGenerator.dump_nfas
&&&w!$	7	7HAu)Q =I CDDD$z	
7	
7t4<<

4((AAD		AKK%%%=+/****.E1:56666	
7	7	7rc	*td|t|D]r\}}td||jrdpdt|jD],\}}td|||fz-sdS)NzDump of DFA forrzr{r|r})r~rr3r-r.r/r2)rr9r;r:r<r=r>s       r
dump_dfazParserGenerator.dump_dfas
&&&!#	A	AHAu)Q
 ;) ArBBB%ej&6&6&8&899
A
Atnsyy'??@@@@
A	A	Arcd}|rnd}t|D]X\}}t|dzt|D]2}||}||kr"||=|D]}|||d}n3Y|ldSdS)NTFr)rranger*
unifystate)rr;changesr:state_irstate_jr<s        r
rfzParserGenerator.simplify_dfas	G'nn	
	

7qsCHH--A!!fG'))F%(??E!,,Wg>>>>"&
*					rc|\}}|jdkr||fSt}t}|||||jdkr`||\}}|||||jdk`||fS)N|)	parse_altrPNFAStaterur)rrgrhaazzs     r
rdzParserGenerator.parse_rhss~~1:a4KBBIIaLLL
HHRLLL*##

~~''1		!	*##
r6Mrc4|\}}|jdvs|jtjtjfvrV|\}}|||}|jdv7|jtjtjfvV||fS)N)([)
parse_itemrPr_rrMSTRINGru)rrgbr7ds     r
rzParserGenerator.parse_alt
s  1zZ''yUZ666??$$DAq
HHQKKKA	zZ''yUZ666!trc|jdkrd||\}}|tjd||||fS|\}}|j}|dvr||fS||||dkr||fS||fS)Nr])+*r)rPrrdrbrrcru
parse_atom)rrgrhrPs    r
rzParserGenerator.parse_items:MMOOO>>##DAqKK#&&&
HHQKKKa4K??$$DAqJEJ&&!tMMOOO
HHQKKK||!t!trc|jdkrO||\}}|tjd||fS|jtjtjfvrOt}t}|
||j|||fS|d|j|jdS)Nr)z+expected (...) or NAME or STRING, got %s/%s)rPrrdrbrrcr_rMrrruraise_error)rrgrhs   r
rzParserGenerator.parse_atom(s:MMOOO>>##DAqKK#&&&a4K
Y5:u|4
4
4

A

A
HHQ
###MMOOOa4KJ!Y

4
4
4
4
4rc|j|ks
|.|j|kr#|d|||j|j|j}||S)Nzexpected %s/%s, got %s/%s)r_rPrr)rr_rPs   r
rbzParserGenerator.expect9sd9!2tzU7J7J8!5$)TZ
A
A
A


rct|j}|dtjtjfvr4t|j}|dtjtjfv4|\|_|_|_|_|_	dSrE)
r>rrCOMMENTNLr_rPbeginendline)rtups  r
rzParserGenerator.gettokenAsr4>""!f)8;777t~&&C!f)8;777AD>	4:tz48TYYYrc
|rG	||z}n@#d|gttt|z}YnxYwt	||j|jd|jd|jf)N r#r)joinr%mapstrSyntaxErrorrrr)rmsgargss   r
rzParserGenerator.raise_errorHs	=
=Dj
=hhutCTNN';';;<<#
tx{ $TY 899	9s	
;ArR)rr	r
r!r?r5r1rrSrrerrrfrdrrrrbrrrrr
rr
s4



2,",","\%%%$$$<!!!0"""H777 AAA*"(444"EEE99999rrceZdZdZddZdS)rcg|_dSrRrq)rs r
r!zNFAState.__init__Ss
			rNc>|j||fdSrR)r.r0rr>r=s   r
ruzNFAState.addarcVs$	
	%'''''rrR)rr	r
r!rurrr
rrQs7((((((rrc*eZdZdZdZdZdZdZdS)rrc4||_||v|_i|_dSrR)rsr3r.)rrsfinals   r
r!zDFAState.__init__]s!			rc||j|<dSrRrqrs   r
ruzDFAState.addarces 	%rc`|jD]\}}||ur
||j|<dSrR)r.r/)roldnewr=r>s     r
rzDFAState.unifystateksA9??,,	'	'KE4s{{#&	% 	'	'rc|j|jkrdSt|jt|jkrdS|jD]$\}}||j|urdS%dS)NFT)r3r*r.r/get)rotherr=r>s    r
__eq__zDFAState.__eq__ps<5=((5ty>>S__,,59??,,		KE45:>>%0000uu1trN)rr	r
r!rurr__hash__rrr
rrrr[sQ   '''
HHHrrrGrammar.txtcHt|}|SrR)rr?)rps  r
generate_grammarrs!!A>>rN)r)r|rrrGrammarrobjectrrrrrrrr
<module>rs
'&&&&&&&&&					'/			E9E9E9E9E9fE9E9E9N
(((((v(((#####v###Jr