Viewing File: /opt/imunify360/venv/lib/python3.11/site-packages/pycparser/ply/__pycache__/yacc.cpython-311.pyc



]jk
ddlZddlZddlZddlZddlZddlZddlZdZdZ	dZ
dZdZdZ
dZdZd	ZdZejddkreZneZejZGd
deZGdd
eZGddeZdZdZdada da!dZ"dZ#dZ$dZ%dZ&GddZ'GddZ(GddZ)ej*dZ+GddeZ,Gd d!eZ-Gd"d#eZ.d$Z/Gd%d&eZ0Gd'd(eZ1Gd)d*eZ2Gd+d,eZ3d-Z4d.Z5Gd/d0eZ6Gd1d2e3Z7d3Z8d4Z9Gd5d6eZ:de
deddddeddddf
d7Z;dS)8Nz3.10Tz
parser.outparsetabLALRF(c.eZdZdZdZeZdZdZeZdS)	PlyLoggerc||_dSN)f)selfrs  r/builddir/build/BUILD/imunify360-venv-2.6.3/opt/imunify360/venv/lib/python3.11/site-packages/pycparser/ply/yacc.py__init__zPlyLogger.__init__ns
cF|j||zdzdS)N
rwritermsgargskwargss    r
debugzPlyLogger.debugqs%cDjD()))))rcL|jd||zzdzdS)Nz	WARNING: rrrs    r
warningzPlyLogger.warningvs*[C$J/$677777rcL|jd||zzdzdS)NzERROR: rrrs    r
errorzPlyLogger.errorys*Y#*-455555rN)	__name__
__module____qualname__rrinforrcriticalrr
rrmsX***D888666HHHrrceZdZdZdZdS)
NullLoggerc|Sr
r")rnames  r
__getattribute__zNullLogger.__getattribute__rc|Sr
r")rrrs   r
__call__zNullLogger.__call__r(rN)rrrr'r*r"rr
r$r$s2rr$ceZdZdS)	YaccErrorNrrrr"rr
r,r,Drr,ct|}d|vrt|}t|tkr|dtdz}dt|jt||fz}|S)Nrz ...z<%s @ 0x%x> (%s))reprlenresultlimittyperid)rrepr_strresults   r

format_resultr8slAwwHx>>
8}}{""L[L)F2
477#3RUUH"E
EFMrct|}d|vrt|}t|dkr|Sdt|jt	|fzS)Nrz<%s @ 0x%x>)r0r1r3rr4)r5r6s  r
format_stack_entryr;sXAwwHx>>
8}}rQ 0"Q%%888raPLY: Don't use global functions errok(), token(), and restart() in p_error().
Instead, invoke the methods on the associated parser instance:

    def p_error(p):
        ...
        # Use parser.errok(), parser.token(), parser.restart()
        ...

    parser = yacc.yacc()
cPtjttSr
)warningswarn_warnmsg_errokr"rr
errokrAM(88OrcPtjttSr
)r=r>r?_restartr"rr
restartrEsM(::rcPtjttSr
)r=r>r?_tokenr"rr
tokenrHrBrcp|ja|ja|ja||}	bbbn#t$rYnwxYw|Sr
)rAr@rHrGrErD	NameError)	errorfuncrHparserr5s    r
call_errorfuncrMsY
\F
\F~H	%A
FHH



Hs&
33ceZdZdZdZdS)
YaccSymbolc|jSr
r3rs r
__str__zYaccSymbol.__str__s
yrc t|Sr
strrRs r
__repr__zYaccSymbol.__repr__s4yyrN)rrrrSrWr"rr
rOrOs2rrOcReZdZd
dZdZdZdZdZdZdZ	d	Z
d
ZdZdZ
dS)YaccProductionNc>||_||_d|_d|_dSr
)slicestacklexerrL)rsr\s   r
rzYaccProduction.__init__s"


rct|trd|j|DS|dkr|j|jS|j|jS)Ncg|]	}|j
Sr"value.0r^s  r

<listcomp>z.YaccProduction.__getitem__.<locals>.<listcomp>s333AG333rr)
isinstancer[rbr\rns  r
__getitem__zYaccProduction.__getitem__sUa	'33TZ]3333
!VV:a=&&:a=&&rc*||j|_dSr
)r[rb)rrhvs   r
__setitem__zYaccProduction.__setitem__s
1
rc4d|j||DS)Ncg|]	}|j
Sr"rarcs  r
rez/YaccProduction.__getslice__.<locals>.<listcomp>s111A111r)r[)rijs   r
__getslice__zYaccProduction.__getslice__s 11AaC1111rc*t|jSr
)r1r[rRs r
__len__zYaccProduction.__len__s4:rc:t|j|ddS)Nlinenorgetattrr[rgs  r
ruzYaccProduction.linenotz!}h222rc*||j|_dSr
)r[ru)rrhrus   r

set_linenozYaccProduction.set_linenos%
1
rczt|j|dd}t|j|d|}||fS)Nrur	endlinenorv)rrh	startlineendlines    r
linespanzYaccProduction.linespans;DJqM8Q77	$*Q-i@@'!!rc:t|j|ddS)Nlexposrrvrgs  r
rzYaccProduction.lexposrxrczt|j|dd}t|j|d|}||fS)Nrr	endlexposrv)rrhstartposendposs    r
lexspanzYaccProduction.lexspans;4:a=(A66AX>>rctr
)SyntaxErrorrRs r
rzYaccProduction.errorsrr
)rrrrrirlrqrsrurzrrrrr"rr
rYrYs'''   222333&&&"""
333   
rrYcLeZdZdZdZdZdZdZddZdd	Z	dd
Z
ddZdS)
LRParserc|j|_|j|_|j|_||_|d|_dSNT)	lr_productionsproductions	lr_actionactionlr_gotogotorKset_defaulted_stateserrorok)rlrtaberrorfs   r
rzLRParser.__init__sC /oM	!!###rcd|_dSr)rrRs r
rAzLRParser.errok&s
rc|jdd=|jdd=t}d|_|j||jddS)N$endr)
statestacksymstackrOr3append)rsyms  r
rEzLRParser.restart)s`OAAAM!!!ll
S!!!q!!!!!rci|_|jD]U\}}t|}t|dkr|ddkr|d|j|<VdSNr)defaulted_statesritemslistvaluesr1)rstateactionsruless    r
rzLRParser.set_defaulted_states9sy ""k//11	8	8NE7))**E5zzQ58a<</4Qx%e,	8	8rci|_dSr
)rrRs r
disable_defaulted_statesz!LRParser.disable_defaulted_states@s "rNFc
|strGt|trttj}||||||S|r||||||S||||||Sr
)		yaccdevelrfintrsysstderr
parsedebugparseoptparseopt_notrack)rinputr]rtracking	tokenfuncs      r
parsezLRParser.parseCs	SI	S%%%
.!#*--??5%)LLL
	S==uh	JJJ((uh	RRRrcd}g}|j}|j}	|j}
|j}t	d}d}
|d|s
ddlm}|j}||_||_	||
|||j}n|}||_g}||_g}||_
||_d}|dt!}d|_||d}	|d|d|||vr]|s8|s|}n|}|st!}d|_|j}|||}n ||}|d	|||d
dd|Dddd
t-|||dkrM|||}|d|||d}|
r|
dz}
b|dkrY|
|}|j}|j}t!}||_d|_|r_|d|jddd||dDzdz|	|d|z
|n/|d|jg|	|d||r||dz
d}||d<|r^|d}|j|_|j|_|d}t;|d|j|_t;|d|j|_||_ 	||d=||_!|"|||d=|dtG|d|||	|d|}||n|#tH$ro|||%|dd||d}d|_d|_|}tL}
d|_'YnwxYw|r|j|_|j|_|g}||_ 	||_!|"||dtG|d|||	|d|}||n_#tH$rR||||d}d|_d|_|}tL}
d|_'YnwxYw|dkrS|d}t;|dd}|dtG||d|S||(ddd|Dddd
t-||
dks|j'rtL}
d|_'|}|jdkrd}|j)rD|rtU|ds||_||_!tW|j)||}|j'r|}d}n|rntU|d r|j}nd}|r*tXj-.d!||jfznPtXj-.d"|jzn(tXj-.d#dStL}
t3|dkr|jdkr
d}d}d}|dd=|jdkrdS|jdkr|d}|jdkr<|r6t;|d |j|_t;|d$|j|_d}t!}d|_tU|d r|jx|_|_tU|d$r|jx|_|_||_|||}nJ|}|r|j|_|j|_||d}t_d%)&NrzPLY: PARSE DEBUG STARTrlexrTzState  : %sz#Defaulted state %s: Reduce using %dzStack  : %s cg|]	}|j
Sr"rQrdxxs  r
rez'LRParser.parsedebug.<locals>.<listcomp>s/K/K/KB/K/K/Krz . z Action : Shift and goto state %sz3Action : Reduce rule [%s] with %s and goto state %d[,c6g|]}t|jSr")r;rb)rd_vs  r
rez'LRParser.parsedebug.<locals>.<listcomp>s$0i0i0iRT1CBH1M1M0i0i0ir]r|rzResult : %srFrbzDone   : Returning %szPLY: PARSE DEBUG ENDzError  : %scg|]	}|j
Sr"rQrs  r
rez'LRParser.parsedebug.<locals>.<listcomp>Bs3O3O3OBG3O3O3Orr]ru(yacc: Syntax error at line %d, token=%s
yacc: Syntax error, token=%s yacc: Parse error in input. EOF
ryacc: internal parser error!!!
)0rrrrrYr rrr]rLrrHrrr\rrOr3rpopgetjoinrVlstripr&r1rbrurrwr|rr[rcallabler8rextenderror_countrrrKhasattrrMrrrRuntimeError rrr]rrr	lookaheadlookaheadstackrrprodrpslice
errorcountr	get_tokenrrerrtokenrrltypetppnameplentargt1rhr7tokrus                                 r
rzLRParser.parsedebug\s		+)"0 &&
	

+,,,	IE
KKII!I

$ 
	!llY	C
KKOOOKK
u---,,, 0)9$-IKK		$2$6$6$8$8	$0$.LL	)/	"EN&&u--$U+A51"MMM
KK
&)hh/K/K(/K/K/KABB/O&P&P&P&PRUV_R`R`R`aiikk
m
m
m}q55%%a(((EKK BAFFFOOI... $I"("a
q55aRAFEED%,,C$CH $CI@

#XZ[Z_#&sxx0i0iX`bfafagagXh0i0i0i'j'j#jkn#n#'
2d7(;#<U#CEEEE

#XZ[Z_ac#'
2#7#>@@@
V!'a1"%Q$P!%aB)+CJ)+CJ!%bB,3BRY,O,OCM,3BRY,O,OCM(,1 ($ 0).DJJJv... *D566 2!JJ}mF1I6N6NOOO$OOC000$(B$8$?E&--e4444*
1
1
1*11)<<<$OOD2J777&NN,,,$.rNE'.CH(/CI(+I)4J+0DLLL
1!$6).CJ).CJ!$u(,1).DJJJv...!JJ}mF1I6N6NOOO$OOC000$(B$8$?E&--e4444*	1	1	1*11)<<<&NN,,,$.rNE'.CH(/CI(+I)4J+0DLLL	1!66 A$Q66FJJ6
f8M8MNNNJJ5666!MyM*-((3O3Oh3O3O3OPQPRPR3S*T*T*T*TVYZcVdVdVdemmooqqq??dl?!,J#(DL(H}..#'~##3GHg,F,F3-2HN%*
,T^XtLL<%),I'+H$
%$#&x::+)2)9)*%a #
 0 01\`fhphu_v1v w w w w #
 0 01ORZR_1_ ` ` ` `J,,-PQQQ"F"-Jz??a''INf,D,D $I#HE&qqq)>V++F>W,,"2,Cx7**$U,3Ix,T,TCM,3Ix,T,TCM$(	 #A$AFy(33B1:1AA1;y(33B1:1AA1;'AG")))444 !II",,..C6+.:	(+.:	(NN$$$&rNEABBBs(BP$$A6RRBUAV'&V'c(
d}g}|j}|j}	|j}
|j}t	d}d}
|s
ddlm}|j}||_||_||	|||j
}n|}||_
g}||_g}||_||_
d}|dt}d|_||d}	||vr]|s8|s|}n|}|st}d|_|j}|||}n||}||dkr6|||}||d}|
r|
dz}
|dkrw|
|}|j}|j}t}||_d|_|r`||dz
d}||d<|r^|d}|j|_|j|_|d}t1|d|j|_t1|d|j|_||_	||d=||_||||d=|||	|d|}||n|#t<$ro||||dd||d}d	|_d	|_|}t@}
d
|_!YnwxYwF|r|j|_|j|_|g}||_	||_|||||	|d|}||n_#t<$rR||||d}d	|_d	|_|}t@}
d
|_!YnwxYw'|dkr|d}t1|dd}|S|e|
dks|j!rt@}
d
|_!|}|jdkrd}|j"rD|rtG|ds||_||_tI|j"||}|j!r|}d}n|rntG|d
r|j}nd}|r*tJj&'d||jfznPtJj&'d|jzn(tJj&'ddSt@}
t)|dkr|jdkr
d}d}d}|dd=|jdkrdS|jd	kr|d}|jd	kr<|r6t1|d
|j|_t1|d|j|_d}t}d	|_tG|d
r|jx|_|_tG|dr|jx|_|_||_|||}nJ|}|r|j|_|j|_||d}tQd)NrrrrTrr|rrFrbr]rurrrrr))rrrrrYrrr]rLrrHrrr\rrOr3rrr&r1rbrurrwr|rr[rrrrrrrKrrMrrrrrs                                 r
rzLRParser.parseopts	+)"0 &&
	IE
KKII!I

$ 
	!lls	C,,, 0)9$-IKK		$2$6$6$8$8	$0$.LL	)/	"EN&&u--$U+}q55%%a(((EOOI... $I"("a
q55aRAFEED%,,C$CH $CIP!'a1"%Q$P!%aB)+CJ)+CJ!%bB,3BRY,O,OCM,3BRY,O,OCM(,1 ($ 0).DJJJv... *D566 2$OOC000$(B$8$?E&--e4444*
1
1
1*11)<<<$OOD2J777&NN,,,$.rNE'.CH(/CI(+I)4J+0DLLL
1!$6).CJ).CJ!$u(,1).DJJJv...$OOC000$(B$8$?E&--e4444*	1	1	1*11)<<<&NN,,,$.rNE'.CH(/CI(+I)4J+0DLLL	1!66 A$Q66F!My??dl?!,J#(DL(H}..#'~##3GHg,F,F3-2HN%*
,T^XtLL<%),I'+H$
%$#&x::+)2)9)*%a #
 0 01\`fhphu_v1v w w w w #
 0 01ORZR_1_ ` ` ` `J,,-PQQQ"F"-Jz??a''INf,D,D $I#HE&qqq)>V++F>W,,"2,Cx7**$U,3Ix,T,TCM,3Ix,T,TCM$(	 #A$AFy(33B1:1AA1;y(33B1:1AA1;'AG")))444 !II",,..C6+.:	(+.:	(NN$$$&rNEABBBs(6A&JA6LLANAO76O7cd}g}|j}|j}	|j}
|j}t	d}d}
|s
ddlm}|j}||_||_||	|||j
}n|}||_
g}||_g}||_||_
d}|dt}d|_||d}	||vr]|s8|s|}n|}|st}d|_|j}|||}n||}|a|dkr6|||}||d}|
r|
dz}
|dkr|
|}|j}|j}t}||_d|_|r||dz
d}||d<||_	||d=||_||||d=|||	|d|}||n|#t2$ro||||dd||d}d|_d|_|}t6}
d|_YnwxYw|g}||_	||_|||||	|d|}||n_#t2$rR||||d}d|_d|_|}t6}
d|_YnwxYw|dkr|d}t;|d	d}|S||
dks|jrt6}
d|_|}|jdkrd}|jrD|rt?|d
s||_||_tA|j||}|jr|}d}En|rnt?|dr|j!}nd}|r*tDj#$d||jfznPtDj#$d
|jzn(tDj#$ddSt6}
t)|dkr|jdkr
d}d}d}|dd=	|jdkrdS|jdkr|d}|jdkrd}8t}d|_t?|dr|j!x|_!|_%t?|dr|j&x|_&|_'||_|||}n0|}||d}tQd)NrrrrTrrFrbr]rurrrrr))rrrrrYrrr]rLrrHrrr\rrOr3rrr&r1rbr[rrrrrrrwrKrrMrurrrr|rrr)rrr]rrrrrrrrrrrrrrrrrrrrrrrrrhr7rrus                               r
rzLRParser.parseopt_notracks	+)"0 &&
	IE
KKII!I

$ 
	!ll[	C,,, 0)9$-IKK		$2$6$6$8$8	$0$.LL	)/	"EN&&u--$U+}q55%%a(((EOOI... $I"("a
q55aRAFEED%,,C$CH $CIB!'a1"%Q(,1 ($ 0).DJJJv... *D566 2$OOC000$(B$8$?E&--e4444*
1
1
1*11)<<<$OOD2J777&NN,,,$.rNE'.CH(/CI(+I)4J+0DLLL
1!!$u(,1).DJJJv...$OOC000$(B$8$?E&--e4444*	1	1	1*11)<<<&NN,,,$.rNE'.CH(/CI(+I)4J+0DLLL	1!66 A$Q66F!My??dl?!,J#(DL(H}..#'~##3GHg,F,F3-2HN%*
,T^XtLL<%),I'+H$
%$#&x::+)2)9)*%a #
 0 01\`fhphu_v1v w w w w #
 0 01ORZR_1_ ` ` ` `J,,-PQQQ"F"-Jz??a''INf,D,D $I#HE&qqq)>V++F>W,,"2,Cx7**%)	 #A$AFy(33B1:1AA1;y(33B1:1AA1;'AG")))444 !II",,..CNN$$$&rNEABBBs(A&H==A6J65J6AL!!AM=<M=)NNFFN)rrrrrArErrrrrrr"rr
rrs""" 888###SSSS2OCOCOCOCv
fCfCfCfCd	NCNCNCNCNCNCrrz^[a-zA-Z0-9_-]+$cDeZdZdZd
dZdZdZdZd	Zd
Z	dZ
dZdS)
ProductionrrightrNrc||_t||_||_||_d|_||_||_||_t|j|_	g|_
|jD]%}||j
vr|j
|&g|_d|_
|jr+|jdd|j|_dSd|jz|_dSN -> rz
%s -> <empty>)r&tuplernumberfuncrfilelineprecr1usymsrlr_itemslr_nextrrV)	rrr&r
precedencerrrr^s	         r
rzProduction.__init__s	d		
		"		NN
	%	%A
""
!!!$$$
9	3%)YYY0C0C0CDDHHH&2DHHHrc|jSr
rUrRs r
rSzProduction.__str__=	xrc,dt|zdzS)NzProduction()rUrRs r
rWzProduction.__repr__@ss4yy(3..rc*t|jSr
)r1rrRs r
rszProduction.__len__Cs49~~rcdSNrr"rRs r
__nonzero__zProduction.__nonzero__Fsqrc|j|Sr
)rrindexs  r
rizProduction.__getitem__Isyrc6|t|jkrdSt||}	t|j|dz|_n#t
tf$r
g|_YnwxYw	|j|dz
|_n#t
$r
d|_YnwxYw|Sr)r1rLRItem	Prodnameslr_after
IndexErrorKeyError	lr_before)rrhrs   r
lr_itemzProduction.lr_itemMss49~~44OO	"16!A#;/AJJH%			AJJJ		&1+AKK			AKKK	s# A

A('A(,BBBc<|jr||j|_dSdSr
rrrpdicts  r
bindzProduction.bind](9	-!$),DMMM	-	-r)rNrr)rrrreducedrrSrWrsrrirrr"rr
rrsG3333<///   


 -----rrc&eZdZdZdZdZdZdS)MiniProductionch||_||_||_d|_||_||_||_dSr
)r&r1rrrrrV)rrVr&r1rrrs       r
rzMiniProduction.__init__fs7		
		rc|jSr
rUrRs r
rSzMiniProduction.__str__orrcd|jzS)NzMiniProduction(%s)rUrRs r
rWzMiniProduction.__repr__rs#dh..rc<|jr||j|_dSdSr
r	r
s  r
rzMiniProduction.bindvr
rN)rrrrrSrWrr"rr
rresP///-----rrc eZdZdZdZdZdS)rc6|j|_t|j|_|j|_||_i|_|j|dt|j|_t|j|_|j	|_	dS)N.)
r&rrrlr_index
lookaheadsinsertrr1r)rrrhs   r
rzLRItem.__init__sv&	qv,,	(
	C   	**	di..'


rcr|jr%|jdd|j}n
d|jz}|Sr)rr&r)rr^s  r
rSzLRItem.__str__s@9	,"iii$))<)<)<=AA$)+Arc,dt|zdzS)NzLRItem(rrUrRs r
rWzLRItem.__repr__s3t99$s**rN)rrrrrSrWr"rr
rrsA	"	"	"+++++rrcpt|dz
}|dkr|||vr||S|dz}|dkdSr)r1)symbols	terminalsros   r
rightmost_terminalr sOGqA
q&&1:""1:	Qq&&4rceZdZdS)GrammarErrorNr-r"rr
r"r"r.rr"cteZdZdZdZdZdZddZdd	Zd
Z	dZ
dZd
ZdZ
dZdZdZddZdZdS)Grammarcdg|_i|_i|_i|_|D]}g|j|<
g|jd<i|_i|_i|_i|_t|_	d|_
dSNr)ProductionsrProdmap	TerminalsNonterminalsFirstFollow
PrecedencesetUsedPrecedenceStart)rrterms   r
rzGrammar.__init__s!F	&	&D#%DN4  "$w
"ee


rc*t|jSr
)r1r'rRs r
rszGrammar.__len__s4#$$$rc|j|Sr
)r'rs  r
rizGrammar.__getitem__s&&rc|jdgks
Jd||jvrtd|z|dvrtd||f|j|<dS)Nz2Must call set_precedence() before add_production()z,Precedence already specified for terminal %r)leftrnonassocz:Associativity must be one of 'left','right', or 'nonassoc')r'r-r")rr1assoclevels    r
set_precedencezGrammar.set_precedencestD6)))+_)))4?""MPTTUUU555[\\\!&rNrrc	d||jvrtd|||fz|dkrtd|||fzt|std|||fzt	|D]\}}|ddvrb	t|}t
|dkrtd||||fz||jvr
g|j|<|||<a#t$rYnwxYwt|s|d	krtd
||||fzd	|vr|dd	krtd||fz|d
d	krtd||fz|d}	|j	|	}
|
std|||	fz|j
|	|d
d=n0t||j}	|j	|	d}
|d|}||j
vr4|j
|}td|||fzd|j|jfzzt
|j}
||jvr
g|j|<|D]_}||jvr!|j||
,||jvr
g|j|<|j||
`t'|
|||
|||}|j|||j
|<	|j||dS#t*$r|g|j|<YdSwxYw)Nz7%s:%d: Illegal rule name %r. Already defined as a tokenrz5%s:%d: Illegal rule name %r. error is a reserved wordz%s:%d: Illegal rule name %rrz'"rzA%s:%d: Literal token %s in rule %r may only be a single characterz%precz!%s:%d: Illegal name %r in rule %rrz+%s:%d: Syntax error. Nothing follows %%preczH%s:%d: Syntax error. %%prec can only appear at the end of a grammar rulez/%s:%d: Nothing known about the precedence of %rrrz%s:%d: Duplicate rule %s. zPrevious definition at %s:%d)r)r"_is_identifiermatch	enumerateevalr1rr-rr/addr r(rrr'r*rrrr)rprodnamesymsrrrrhr^cprecnameprodprecmapmpnumberrrs                r
add_productionzGrammar.add_production
st~%%X\`bfhp[qqrrrwVZ^`dfnYooppp##H--	W<dH?UUVVVdOO	d	dDAqtu}}
QAA

*+n,0$8+D,EFFF..,.q)DG"D!''**
dqG||"#F$PTVWYaIb#bcccd??Bx7"""#PTXZ^S_#_```Bx7"""#m$($<$0111BxH**844H
2"#TX\^bdlWm#mnnn#''111RSS		*$??H**8\BBH%HHdd+$,S!A;tT1oM=@PP QRR
Rt'((4,,,*,Dh'	5	5ADN""q!((1111D---+-D%a(!!$++G4444
w$$dKK"""S	+N8$++A.....	+	+	+()sDN8$$$$	+s%AC
C&%C&4 LL/.L/c|s|jdj}||jvrtd|zt	dd|g|jd<|j|d||_dS)Nrzstart symbol %s undefinedrS')r'r&r*r"rrr0)rstarts  r
	set_startzGrammar.set_startas~	-$Q',E))):UBCCC(D5'::% ''***


rcfdtjdjdfdjDS)Nc|vrdS|j|gD]}|jD]
}|dSr
)r@rrr)r^rr5mark_reachable_from	reachablers   r
rPz5Grammar.find_unreachable.<locals>.mark_reachable_fromtsxI~~MM!^''2..
+
+++A''****+
+
+rrcg|]}|v|	Sr"r")rdr^rQs  r
rez,Grammar.find_unreachable.<locals>.<listcomp>~s#CCCa0B0B0B0B0Br)r.r'rr*)rrPrQs`@@r
find_unreachablezGrammar.find_unreachableqsq	+	+	+	+	+	+	+EE	D,Q/4Q7888CCCC4,CCCCrci}|jD]}d||<d|d<|jD]}d||<	d}|jD]5\}}|D]-}|jD]}||sd}nd}|r||sd||<d}n.6|snUg}	|D]5\}}
|
s.||jvr||jvr|dkr |	|6|	S)NTrFr)r)r*rrrr)r
terminatesrrhsome_changeplrr^p_terminatesinfiniter1s           r
infinite_cycleszGrammar.infinite_cyclessi
	!	!A JqMM!
6
"	"	"A!JqMM	K>//11

BAV
,
,)!}",1L!E	"(,#)!}/,0JqM*.K

7	:#))++	'	'IQ
'DN**q/F/F1PW<<OOA&&&rcg}|jD]>}|s|jD]1}||jvr&||jvr|dkr|||f2?|Sr&)r'rrr)r)rr7rr^s    r
undefined_symbolszGrammar.undefined_symbolssz!	*	*A
V
*
*DN**q/F/F1PW<<MM1a&)))
*
rcg}|jD]"\}}|dkr|s||#|Sr&)r)rr)r
unused_tokr^rks    r
unused_terminalszGrammar.unused_terminalssP
N((**	%	%DAqG||A|!!!$$$rcg}|jD]/\}}|s(|j|d}||0|SNr)r*rrr)runused_prodr^rkrs     r
unused_ruleszGrammar.unused_ruless]%++--	&	&DAq
&N1%a(""1%%%rcg}|jD]<}||jvs1||jvs(|||j|df=|Sra)r-r)r/r)runusedtermnames   r
unused_precedencezGrammar.unused_precedences]	H	HH..(d>Q2Q2Q

x)B1)EFGGG
rcg}|D]:}d}|j|D]$}|dkrd}||vr||%|r9n|d|S)NF<empty>T)r+r)rbetar7xx_produces_emptyrs      r
_firstzGrammar._first	s	%	%A$Z]
)
)	>>'+$$

a(((


MM)$$$
rcr|jr|jS|jD]
}|g|j|<dg|jd<|jD]}g|j|<
	d}|jD]`}|j|D]P}||jD]3}||j|vr"|j||d}4Qa|snn|jS)NrTF)r+r)r*rrmrr)rrrhrVrrs      r

compute_firstzGrammar.compute_first,s:	:	 	 ACDJqMM$X
6
"		ADJqMM		K&
/
/*//A![[00//DJqM11 JqM00333*.K//

		zrc|jr|jS|js||jD]}g|j|<
|s|jdj}dg|j|<	d}|jddD]}t
|jD]\}}||jvr||j|dzd}d}|D]A}	|	dkr1|	|j|vr"|j|	|	d}|	dkrd}B|s|t|jdz
krF|j|jD]3}	|	|j|vr"|j|	|	d}4݌|sn
|jS)NrrTFri)r,r+ror*r'r&r>rrmrr1)
rrLkdidaddrroBfsthasemptyrs
          r
compute_followzGrammar.compute_followQs;	;z	!   "	 	 ADKNN	-$Q',E$XE	F%abb)
2
2%af--22DAqD---"kk!&1,77#(!$00A I~~!4;q>2I2I $A 5 5a 8 8 8)- I~~+/#2qS[[]';';%)[%822#$DKN#:#:$(KN$9$9!$<$<$<-1F!2"
-	.{rc|jD]}|}d}g}	|t|krd}n~t||}	|j|j|dz|_n#ttf$r
g|_YnwxYw	|j|dz
|_n#t$r
d|_YnwxYw||_	|sn|
||}|dz
}||_dSNrTr)r'r1rrrrrrrrrr)rrlastlrirorlris      r

build_lritemszGrammar.build_lritemss!!	"	"AGAH
s1vv::CC A,,C*'+~chqsm'D&1***')*-(+1


%---(,


-#&$$$Q)
*"AJJ3	"	"s# AA43A48BB"!B")Nrrr
)rrrrrsrir9rIrMrSrZr\r_rcrgrmrorvr{r"rr
r$r$s !!!H%%%'''///2K+K+K+K+h 
D
D
D.777@			"" FJ))))v"""""rr$ceZdZdS)VersionErrorNr-r"rr
r}r}r.rr}c&eZdZdZdZdZdZdS)LRTablec>d|_d|_d|_d|_dSr
)rrr	lr_methodrRs r
rzLRTable.__init__s#"rc|t|tjr|}n$td|ztj|}|jtkrtd|j	|_
|j|_g|_
|jD]#}|j
t!|$|j|_|jS)N	import %s&yacc table file version is out of date)rftypes
ModuleTypeexecrmodules_tabversion__tabversion__r}
_lr_actionr_lr_gotorr_lr_productionsrr
_lr_methodr
_lr_signature)rmodulerrs    r

read_tablezLRTable.read_tablesfe.//	+HHv%&&&{6*H>11GHHH!,( )	;	;A&&~q'9::::!,%%rcv	ddl}n#t$rddl}YnwxYwtj|stt
|d}||}|tkrtd|||_
||}|||_|||_||}g|_
|D]#}|j
t|$||S)Nrrbr)cPickleImportErrorpickleospathexistsopenloadrr}rrrrrrclose)rfilenamerin_f
tabversion	signaturerrs        r
read_picklezLRTable.read_pickles:	$$$$$			MMMMM	w~~h''	
Hd##[[&&
''GHHHT**T**	T**T**T** 	;	;A&&~q'9::::

scD|jD]}||dSr
)rr)rrrs   r
bind_callableszLRTable.bind_callabless/$		A
FF5MMMM		rN)rrrrrrrr"rr
rrsP&&&(8rrc
ri}|D]}d||<g}i}|D]#}||dkrt|||||||$|Sra)traverse)XRFPNrkr\Fs       r
digraphrsg
A
!E
A
//Q4199Q5!Q2...Hrc
||t|}|||<||||<||}|D]}	||	dkrt|	||||||t||||	||<||	gD]'}
|
||vr|||
(|||krxt
||d<||||d<|}||kr?t
||d<||||d<|}||k;dSdSdS)Nrr)rr1rminrMAXINTr)rkrr\rrrrdrelyaelements            r
rrs^	LLOOOE

AAaD
2a55AaD
!A$$C
Q4199Q5!Q2...1Q41!q"		A!}}!A		tqyy%)t%)))++ll!AeBiLQ4AeBiLiikkGllll	ylrceZdZdS)	LALRErrorNr-r"rr
rr)r.rrcteZdZddZdZdZdZdZdZd	Z	d
Z
dZdZd
Z
dZdZdZddZddZdS)LRGeneratedTablerNc|dvrtd|z||_||_|st}||_i|_i|_|j|_i|_	i|_
d|_d|_d|_
g|_g|_g|_|j|j|j|dS)N)SLRrzUnsupported method %sr)rgrammarrr$logrrr'r
lr_goto_cachelr0_cidhash
_add_countsr_conflictrr_conflict	conflictssr_conflictsrr_conflictsr{rorvlr_parse_table)rrmethodrs    r
rzLRGeneratedTable.__init__4s((3f<===	,,C &2	
""$$$""$$$##%%%rc|xjdz
c_|dd}d}|rVd}|D]O}|jD]E}t|dd|jkr||j|j|_d}FP|V|S)NrTF	lr0_addedr)rrrwrrr)rIJrrrprks      r
lr0_closurezLRGeneratedTable.lr0_closureYs1
aaaD		"F
"
"""Aq+q11T_DD HHQY'''"&/AK!FF
"		"rc(|jt||f}|r|S|j|}|si}||j|<g}|D]e}|j}|rZ|j|krO|t|}|si}||t|<|||}f|d}|s"|r||}||d<n||d<||jt||f<|S)Nr)rrr4rrrr)	rrrkgr^gsrrhs1s	         r
lr0_gotozLRGeneratedTable.lr0_gotoss8""BqEE1:..	H

""1%%	&A$%Dq!
		A	A
Q[A%%UU2a55\\"B!AbeeH		!
EE&MM	
$$R((&		&	)*BqEE1:&rc||jjdjgg}d}|D]}||jt|<|dz
}d}|t
|kr||}|dz
}i}|D]}|jD]}d||<|D]j}|||}|rt||jvr1t
||jt|<|	|k|t
|k|S)Nrr)
rrr'rrr4r1rrr)	rCrorasymsiir^rkrs	         r
	lr0_itemszLRGeneratedTable.lr0_itemss=


t|7:BC
D
DE
		A&'DRUU#
FAA
#a&&jj!A
FAE
$
$$$A#E!HH$

MM!Q''BqEET%555*-a&& A'#a&&jj"rc>t}d}	|jjddD]R}|jdkr||j(|jD]}||vrn	||jSt||krnt|}|Srx)r.rr'r1r@r&r)rnullablenum_nullablerrs     r
compute_nullable_nonterminalsz.LRGeneratedTable.compute_nullable_nonterminalss55	)\-abb1
)
)5A::LL((())A(()LL(((8}},,x==L	)rcg}t|D]a\}}|D]Y}|j|jdz
krD||j|jdzf}|d|jjvr||vr||Zb|Sr)r>rr1rrr*r)rrtransstatenorrrs       r
find_nonterminal_transitionsz-LRGeneratedTable.find_nonterminal_transitionss'll	,	,NGU
,
,:	)) !&A"67Att|888E>>!LLOOO
,rcpi}|\}}g}||||}|D]Q}	|	j|	jdz
kr<|	j|	jdz}
|
|jjvr|
|vr||
R|dkr6||jjdjdkr|d|S)Nrrr)rrr1rrr)rr')rrrrdr_setrrtermsrrrs           r
dr_relationzLRGeneratedTable.dr_relationsqMM!E(A&&	(	(AzAEAI%%F1:a<(...~~QA::!t|7:?BBBLL   rc,g}|\}}||||}|jt|d}|D]E}	|	j|	jdz
kr0|	j|	jdz}
|
|vr|||
fF|S)Nrr)rrrr4rr1rr)rrremptyrrrrrprrs           r
reads_relationzLRGeneratedTable.reads_relation	sqMM!E(A&&  A++	'	'AzAEAI%%F1:>*::JJ1v&&&
rci}i}i}|D]}d||<|D]\}}	g}
g}||D]r}|j|	kr|j}
|}|
|jdz
kr|
dz}
|j|
}||f|vra|
dz}||jkr:|j||jjvrn7|j||vrn'|dz}||jk:|||f||||}|j	t|d}|
|jdz
k||D]x}|j|jkr|j|jkr$d}||jkr0|j||j|dzkrn'|dz}||jk0|
||fyt|D](}||vrg||<||||	f)|
|||	f<||fS)Nrrr)r&rr1rrr)rrrrr4)rrrrlookdictincludedictdtransrrrlookbincludesrrrplirr5ros                   r
compute_lookback_includesz*LRGeneratedTable.compute_lookback_includesC	sd		AF1II6	)6	)HE1EHuX.
-.
-6Q;;
:**'!|Hx(A1v''
&\ 15jj vbzT\-CCC % vbz99 %!#aB!15jj%OOQF333

adA..A(,,RUUB77A-**21--Av'' u~~ Aaj..6!9qs33!Eaj..
aV,,,-
2
2K''%'KNA%%uaj1111#(HeQZ  $$rcJfd}fd}t|||}|S)Nc2|Sr
)rrkrrrs r
<lambda>z4LRGeneratedTable.compute_read_sets.<locals>.<lambda>	st''1h77rc2|Sr
)rrs r
rz4LRGeneratedTable.compute_read_sets.<locals>.<lambda>	st**1a::rr)rrntransrrrrs`` `   r
compute_read_setsz"LRGeneratedTable.compute_read_sets	sC
7
7
7
7
7
7
:
:
:
:
:
:FAr""rc@fd}fd}t|||}|S)Nc|Sr
r")rkreadsetss r
rz6LRGeneratedTable.compute_follow_sets.<locals>.<lambda>	sx{rc0|gSr
)r)rkinclsetss r
rz6LRGeneratedTable.compute_follow_sets.<locals>.<lambda>	sx||Ar**rr)rrrrrrrs  ``   r
compute_follow_setsz$LRGeneratedTable.compute_follow_sets	s6
"
"
"
"
*
*
*
*FAr""rc|D]j\}}|D]b\}}||jvr
g|j|<||g}|D]1}||j|vr |j||2ckdSr
)rrrr)	r	lookbacks	followsetrlbrrrrs	         r
add_lookaheadszLRGeneratedTable.add_lookaheads	s"**	6	6IE2
6
6q,,*,AL'MM%,,66AU 333U+2215556	
6	6	6rc|}||}||||}||||\}}||||}|||dSr
)rrrrrr)rrrrrlookdincluded
followsetss        r
add_lalr_lookaheadsz$LRGeneratedTable.add_lalr_lookaheads	s557711!44))!UH==88E8LLx--eXxHH
	
E:.....rc
b
|jj}|jj}|j}|j}|j}i}|d|j|}|jdkr|	|d}|D]*}	g}
i}i}i}
|d|d||d|	D]}|d|j
||d|	D]f}|j|jdzkr{|j
dkrd|d	<||d	<-|jdkr|j|}n|jj|j
}|D]/}|
||d
|j
|fzf||}||dkr||d\}}||j
j\}}||ks||kri|dkrc|j
||<|||<|s5|s3|d
||j||df||j
xjdz
c_||kr|dkrd||<|s3|d||j||df/|dkr||}||j
}|j|jkrK|j
||<|||<||}}||j
xjdz
c_||j
xjdzc_n||}}|j|||f|d|||j
||t/d|z|j
||<|||<||j
xjdz
c_1|j}|j|dz}||jjvr||	|}|jt9|d}|dkri|
||d|zf||}|,|dkr||krt/d|zP|dkr||d\}}|||j
j\}}||ks||krh|dkrb|||j
xjdzc_|||<|||<|s3|d||j||df||kr
|dkrd||<|s5|s3|d
||j||dfJt/d|z|||<|||<hi}|
D]2\}}}||vr(|||ur|d||d|||f<3|dd}|
D]:\}}}||vr0|||ur&||f|vr |d||d}d|||f<;|r|di} |	D]}!|!jD]}"|"|jjvrd| |"< | D]b}#||	|#}|jt9|d}|dkr||
|#<|d|#|c|||<|||<|
||<|dz
},dS)NzParsing method: %srrrzstate %dz    (%d) %srrKrzreduce using rule %d (%s)rr5z3  ! shift/reduce conflict for %s resolved as reducereducer6z2  ! shift/reduce conflict for %s resolved as shiftshiftz=  ! reduce/reduce conflict for %s resolved using rule %d (%s)zUnknown conflict in state %drzshift and go to state %dz Shift/shift conflict in state %drz    %-15s %sz  ! %-15s [ %s ]z"    %-30s shift and go to state %d) rr'r-rrrr rrrrr1rr&rr,rrrrrrrrrr)rrr4rrr*)$rr'r-rrractionprstractlist	st_action
st_actionpst_gotorlaheadsrr5sprecslevelrprecrleveloldpppchosenprejectprorrp	_actprintrGnot_usednkeysrr^rhs$                                    r
rzLRGeneratedTable.lr_parse_table	s8l.l-
%t~666

NN>V##$$Q'''d	d	AGIJGHHRLLLHHZ$$$HHRLLL
5
5!4444HHRLLLp
6p
6u
Q..6T>>01If-12Jv.. $~77*+,r*:*.,*=af*E%,4G4G '16QUVU]_`Ta6a/b c c c$-MM!$4$4#$='(1uu9Cq,8W8W
v9DAH8M8R
v,2VOO&FBRBRY^bhYhYh<=H9IaL<=JqM39-\&-\039npq0r0r0r040A0H0H"aQYIZ0[0[0[,7,A,I,IQ,N,I,I,I.4.>.>UjEXEX;?IaLL4:-[039mop0q0q0q040A0H0H"aQXIY0Z0Z0Z)*Q0;A2-8-B+/9rw+>+><=H9IaL<=JqM?A4WG,7,A,I,IQ,N,I,I,7,D,L,LPQ,Q,L,L,L?CRWG(,(9(@(@"gwAW(X(X(X(+1p12JqM4H*UV-)Y)Y)Y)Y/88VY[8[.\.\(\45H9IaL45JqM$/$9$A$AQ$F$A$A$Ai4GlJF1Q3K 666 $

a 3 3A $ 0 4 4RUUB ? ?A Avv '16PST6T/U V V V$-MM!$4$4#$='(1uu+,662;<^ac<c2d2d,d,2)*Q9Cq,8W8W
v9DJqMDX8Y8^
v,2VOO&FBRBRY^biYiYi,7
1
8L,M,U,UYZ,Z,U,U;<IaL<=JqM39-[039mop0q0q0q040A0H0H"aQXIY0Z0Z0Z.4.>.>UjEXEX;?IaLL4:-\&-\039npq0r0r0r040A0H0H"aQYIZ0[0[0[/88VY[8[.\.\(\34IaL45JqMI"
.
.1a	>>JqM))A666,-	1a&)HHRLLLH"
2
21a	>>
1
-- !1v22II&8!Q???'(H01Iq!f-
		"


E
(
(((ADL555#'a(
I
IMM!Q''$((A3366!"GAJHHA1aHHH"F2J$GBKDH!GBBId	d	rrct|tjrtd|dd}t
j||dz}	t|d}|	dt
j
|dtd|jd	|d
	d}|rsi}|j
D]u\}	}
|
D][\}}||}
|
s	ggf}
|
||<|
d|	|
d|\v|	d
|D]\}}|	d|z|dD]}
|	d|
z|	d|dD]}
|	d|
z|	d|	d|	dnt|	d|j
D]0\}}|	d|dd|dd|d1|	d|rsi}|jD]u\}	}
|
D][\}}||}
|
s	ggf}
|
||<|
d|	|
d|\v|	d|D]\}}|	d|z|dD]}
|	d|
z|	d|dD]}
|	d|
z|	d|	d|	dnt|	d|jD]0\}}|	d|dd|dd|d1|	d|	d|jD]}|jrZ|	d|j|j|j|jt
j
|j|jfzc|	dt)||j|jfz|	d|dS#t$r}d}~wwxYw)Nz"Won't overwrite existing tabmodulerrz.pywz
# zD
# This file is automatically generated. Do not edit.
_tabversion = z

_lr_method = z

_lr_signature = z
    rrz
_lr_action_items = {z%r:([z%r,z],[z]),z}
z
_lr_action = {}
for _k, _v in _lr_action_items.items():
   for _x,_y in zip(_v[0],_v[1]):
      if not _x in _lr_action:  _lr_action[_x] = {}
      _lr_action[_x][_k] = _y
del _lr_action_items
z
_lr_action = { (rz):z
_lr_goto_items = {z
_lr_goto = {}
for _k, _v in _lr_goto_items.items():
   for _x, _y in zip(_v[0], _v[1]):
       if not _x in _lr_goto: _lr_goto[_x] = {}
       _lr_goto[_x][_k] = _y
del _lr_goto_items
z
_lr_goto = { z_lr_productions = [
z  (%r,%r,%d,%r,%r,%d),
z  (%r,%r,%d,None,None,None),
z]
)rfrrIOErrorsplitrrrrrbasenamerrrrrrrrrrVr&r1rrr)r	tabmodule	outputdirrbasemodulenamerrsmallerrr^ndr&rkrorqres                 r
write_tablezLRGeneratedTable.write_table
si!122	@>???"--b17<<	>::UBk	Xs##A
GGG7H%%%%~~~t~~~yyyR
S
S
SG%
!^1133''EAr#%88::''a!IIdOO ,!#RA*+E$K!A!A
'0111!KKMM##DAqGGGaK(((qT++	****GGENNNqT++	****GGENNNN+,,, N0022==DAqGGGQqTTT1Q444;<<<<%
!\//11''EAr#%88::''a!IIdOO ,!#RA*+E$K!A!A
'.///!KKMM##DAqGGGaK(((qT++	****GGENNNqT++	****GGENNNN)*** L..00==DAqGGGQqTTT1Q444;<<<<
GG+,,,(
X
X6XGG6!%:;&"'BRBRSTSYBZBZ\]\b:ddeeeeGG<APQPU?VVWWWW
GGENNN
GGIIIII				s)T
U55
V?VVc<	ddl}n#t$rddl}YnwxYwt|d5}|t
|t||j|t|||t||j|t||j	|tg}|j
D]}|jrW||j
|j|j|jt j|j|jf`|t||j|jdddf|||tddddS#1swxYwYdS)Nrwb)rrrrdumprpickle_protocolrrrrrrrVr&r1rrrrr)rrrroutfoutprs       r
pickle_tablezLRGeneratedTable.pickle_table s	$$$$$			MMMMM	
(D
!
!
	5TKKo>>>KKo>>>KK	4999KKo>>>KKdO<<<D(
K
K6KKKqvrw?O?OPQPV?W?WYZY_ `aaaaKKQdD IJJJJKKdO444
	5
	5
	5
	5
	5
	5
	5
	5
	5
	5
	5
	5
	5
	5
	5
	5
	5
	5sEFFF)rN)rrr)rrrrrrrrrrrrrrrrrr%r,r"rr
rr3s$!!!!J4   Fp:			(2


VB%B%B%`,$	6	6	6$///0yyyBqqqqt555555rrctj|}|j}|j|jkr||j|Sr
)r	_getframe	f_globalscopyf_localsupdate)levelsrldicts   r
get_caller_module_dictr6CsL
fA
KE{aj  
QZ   Lrc	g}|}d}|}|D]}|dz
}|}|s	|ddkr#|std||fz|}	|dd}
n<|d}	|	}|dd}
|d}|dkr|dkrtd||fz||||	|
f#t$rt$r(td	|||fzwxYw|S)
Nrr|z%s:%d: Misplaced '|':z::=z!%s:%d: Syntax error. Expected ':'z%s:%d: Syntax error in rule %r)
splitlinesrrr	Exceptionstrip)docrrrpstringslastpdlinepsrrArBassigns            r

parse_grammarrDOsdG~~HEE\\

HHJJ		\ts{{N%&<e}&LMMM uQ4 1221S==Vu__%&ITSXM&YZZZNND%489999				\	\	\>$rxxzzAZZ[[[	\NsBC<C=cjeZdZddZdZdZdZdZdZdZ	d	Z
d
ZdZdZ
d
ZdZdZdZdS)
ParserReflectNc||_d|_d|_d|_t	|_g|_d|_| ttj
|_dS||_dS)NF)rrL
error_functokensr.rrrrrrr)rrrs   r
rzParserReflect.__init__ys\

%%
; ,,DHHHDHHHrc|||||dSr
)	get_startget_error_func
get_tokensget_precedenceget_pfunctionsrRs r
get_allzParserReflect.get_alls^rc|||||||jSr
)validate_startvalidate_error_funcvalidate_tokensvalidate_precedencevalidate_pfunctionsvalidate_modulesrrRs r
validate_allzParserReflect.validate_allsv  """  """  """zrcg}	|jr||j|jr7|dd|jD|jr-|d|j|jD]%}|dr||d&n#ttf$rYnwxYwd|S)Nrc8g|]}d|Sr-)r)rdrs  r
rez+ParserReflect.signature.<locals>.<listcomp>s"%D%D%DQbggajj%D%D%Drrr)rLrrrrIpfuncs	TypeError
ValueError)rpartsrs   r
rzParserReflect.signatures	z
)TZ(((y
GRWW%D%D$)%D%D%DEEFFF{
4SXXdk22333[
'
'Q4'LL1&&&
':&			D	wwu~~sCCCCc	tjd}|jD]}	tj|\}}n#t
$rY'wxYwi}t
|D]\}}|dz
}||}|rd|d}|	|}	|	s|||<Stj
|}
|jd|
|||	dS)Nz\s*def\s+(p_[a-zA-Z_0-9]*)\(rz;%s:%d: Function %s redefined. Previously defined on line %d)
recompilerinspectgetsourcelinesrr>r=groupr
getsourcefilerr)rfrerlineslinen	counthashrrGr&prevrs           r
rWzParserReflect.validate_moduless%j899l	F	FF
&5f==uu



I(//
F
Ft
IIdOOF771::D$==..DF*/	$#*#8#@#@(()f)15$FFF
F	F	Fs7
AAcD|jd|_dS)NrL)rrrLrRs r
rKzParserReflect.get_startsZ^^G,,


rc|j6t|jts|jddSdSdS)Nz'start' must be a string)rLrfstring_typesrrrRs r
rRzParserReflect.validate_startsK:!dj,77
;9:::::"!
;
;rcD|jd|_dS)Np_error)rrrHrRs r
rLzParserReflect.get_error_funcs*..33rc|jrt|jtjrd}nEt|jtjrd}n#|jdd|_dS|jjj}|jjj	}tj|j}|j
||jjj|z
}|dkr'|jd||d|_dSdSdS)Nrrz2'p_error' defined, but is not a function or methodTz$%s:%d: p_error() requires 1 argument)rHrfrFunctionType
MethodTyperr__code__co_firstlinenoco_filenamerb	getmodulerr@co_argcount)rismethodelineefilerargcounts      r
rSz!ParserReflect.validate_error_funcs?	"$/5+=>>
DOU-=>>
STTT!
O,;EO,8E&t77FLV$$$/;hFH1}}EueTTT!


%	"	" }rcZ|jd}|s#|jdd|_dSt	|t
tfs#|jdd|_dS|s#|jdd|_dS||_dS)NrIzNo token list is definedTztokens must be a list or tupleztokens is empty)rrrrrfrrrI)rrIs  r
rMzParserReflect.get_tokenss))	HNN5666DJF&4-00	HNN;<<<DJF	HNN,---DJFrcd|jvr#|jdd|_dSt}|jD]6}||vr|jd|||7dS)Nrz.Illegal token name 'error'. Is a reserved wordTzToken %r multiply defined)rIrrr.rr@)rrrhs   r
rTzParserReflect.validate_tokenssdk!!HNNKLLLDJFEE			AI~~  !<a@@@MM!		rcD|jd|_dS)Nr)rrrrRs r
rNzParserReflect.get_precedencesJNN<00			rcg}|jr{t|jttfs#|jdd|_dSt
|jD]!\}}t|ttfs$|jdd|_dSt|dkr%|jd|d|_dS|d}t|ts$|jdd|_dS|ddD]W}t|ts%|jd	d|_dS|	|||dzfX#||_
dS)
Nz"precedence must be a list or tupleTzBad precedence tabler9z?Malformed precedence entry %s. Must be (assoc, term, ..., term)rz)precedence associativity must be a stringrz precedence items must be strings)rrfrrrrr>r1rmrpreclist)rrr8rr7r1s      r
rUz!ParserReflect.validate_precedences9	<di$77
CDDD!
%di00
<
<q!!dE]33HNN#9:::!%DJFFq66A::HNN#dfghhh!%DJFF!!%66HNN#NOOO!%DJFFabbE<<D%dL99'IJJJ%)
OOT5%'$:;;;;<!


rcg}|jD]\}}|dr|dkr!t|tjtjfrMt|d|jj	}tj|}|||||j
f|d||_dS)Np_rortcX|dt|d|d|dfS)Nrrr9rrU)
p_functions r
rz.ParserReflect.get_pfunctions.<locals>.<lambda>Ds-qM
1
qMqM	1r)key)rr
startswithrfrrqrrrwrsrtrbrvr__doc__sortr[)rp_functionsr&itemrrs      r
rOzParserReflect.get_pfunctions7s***,,	G	GJD$??4((
DI,=,=$!3U5E FGG
Gt%5t}7STT *400""D&$#EFFF
				
"rcpg}t|jdkr#|jdd|_dS|jD]t\}}}}t	j|}|j|}t|tj	rd}nd}|j
j|kr*|jd|||jd|_|j
j|kr*|jd|||jd|_|j
s#|jd|||j	t|||}	|	D]}
|||
fnE#t"$r8}|jt%|d|_Yd}~nd}~wwxYw|j|v|jD]Y\}}
|d	r't|
tjtj	frB|d
rX|d	r!|dkr|jd|t|
tjr|
j
jdks/t|
tj	r|
jj
jdkrr|
j
rk	|
j
d
}|ddkr1|jd|
j
j|
j
j|H#t8$rYUwxYw[||_dS)Nrz+no rules of the form p_rulename are definedTr9rz%%s:%d: Rule %r has too many argumentsz#%s:%d: Rule %r requires an argumentzA%s:%d: No documentation string specified in function %r (ignored)rt_roz%r not defined as a functionrr:z9%s:%d: Possible grammar rule %r defined without p_ prefix)r1r[rrrbrerrfrrrrsrwrrrrDrrrVrr@rrrq__func__rrurtrr)rrrrr&r>rrreqargsparsed_grr$rhrks              r
rVz!ParserReflect.validate_pfunctionsLsct{q  HNNHIIIDJF'+{	)	)#D&$(00D:d#D$ 011
}(722FdTXTabbb!

*W44DdDRVR_```!

\
)  !d!%tT]<<<<&,S$==H%22ay11112"&&&HNN3q66***!%DJJJJJJ&  ((((
J$$&&		DAq||D!!
jU5GIY4Z&[&[
||D!!
||D!!
Da9nn  !?CCCAu122	
qz7MQR7R7Rq%"2338S89
8K8W[\8\8\9iooc22q6S== H,,-h-.Z-CQZE^`accc%s+,-E
F$.FFAL
L*)L*r
)rrrrrPrXrrWrKrRrLrSrMrTrNrUrOrVr"rr
rFrFxs6FFF2---;;;444""",(111!!!>"""*:::::rrFc

|t}|rd}|ttj}rOfdt	D}
t|
}d|vr tj|dj|d<ntd}|	t|tjr|j}nrd|vr	|d}ne|d}d
|dd}td|zttj|dd	}t j|}	|d
}|r!t|t(rd|vr|dz|z}|||d<t+||}||jrt1d
|}	t5}|r||}n||}|s||krf	||jt?||j }|j!a!|S#tD$r }|#d|Yd}~nd}~wwxYwnD#tH$r,}|#t)|Yd}~nd}~wtJ$rYnwxYw|
|r}	ttMt j
|	|d}
nN#tN$r3}|#d|d|tQ}
Yd}~nd}~wwxYwtQ}
|
)dtTd}|+rt1d
|j s|#dtY|j-}|j.D]K\}}}	|/|||#t`$r }|#d|Yd}~Dd}~wwxYw|j1D]U\}}|\} }!}"}#	|2|"|#|| |!'#t`$r"}|d|d}Yd}~Nd}~wwxYw	||3|j4n|3|n;#t`$r.}|t)|d}Yd}~nd}~wwxYw|rt1d
|5}$|$D])\}%}&|d|&j6|&j7|%d}*|8}'|'rp|
)d	|
)d|
)d	|'D].}|#d||
)d|/|rp|
)d	|
)d|
)d	ts|j:D]\}(})|
)d|(|)|;}*|*D])}&|#d|&j6|&j7|&j<*t{|'dkr|#dt{|'dkr#|#d t{|'t{|*dkr|#d!t{|*dkr#|#d"t{|*|rk|
)d	|
)d#|
)d	t}|j?}+|+@|+D]A}|
)d$|d%
d&|j?|DB|
)d	|
)d'|
)d	t}|jA},|,@|,D]A}-|
)d$|-d%
d(|jA|-DB|
)d	|r`|B}.|.D]}/|#d)|/|C}0|0D]}1|d*|1d}|D}2|2D]\}}|d+||d}|rt1d
|r|Ed,|t|||
}|rt{|jG}3|3dkr|#d-n|3dkr|#d.|3t{|jH}4|4dkr|#d/n|4dkr|#d0|4|r|jGs|jHr|
#d	|
#d1|
#d	|jGD]\}5}6}7|
#d2|6|5|7t}8|jHD]\}5}9}:|5t|9t|:f|8vr(|
#d3|5|9|
#d4|:|5|#d3|5|9|#d4|:|5|8K|5t|9t|:fg};|jHD]R\}5}9}:|:jLsE|:|;vrA|
#d5|:|#d5|:|;M|:S|rK	|N||	|n2#tN$r%}|#d6|d|Yd}~nd}~wwxYw|rJ	|O||n2#tN$r%}|#d6|d|Yd}~nd}~wwxYw||jt?||j }|j!a!|S)7Nrc4g|]}|t|fSr")rw)rdrqrs  r
rezyacc.<locals>.<listcomp>s(???a1gfa(()???r__file__rr9rrrr__package__rL)rzUnable to build parserz.There was a problem loading the table file: %rrzCouldn't open z. z5Created by PLY version %s (http://www.dabeaz.com/ply)Fz no p_error() function is definedz%sTz;%s:%d: Symbol %r used, but not defined as a token or a rulezUnused terminals:zToken %r defined, but not usedz    %sr$zRule %-5d %sz$%s:%d: Rule %r defined, but not usedrzThere is 1 unused tokenzThere are %d unused tokenszThere is 1 unused rulezThere are %d unused rulesz'Terminals, with rules where they appearz
%-20s : %src,g|]}t|Sr"rUrcs  r
rezyacc.<locals>.<listcomp>G
s7`7`7`1A7`7`7`rz*Nonterminals, with rules where they appearc,g|]}t|Sr"rUrcs  r
rezyacc.<locals>.<listcomp>O
s:i:i:ia3q66:i:i:irzSymbol %r is unreachablez)Infinite recursion detected for symbol %rz0Precedence rule %r defined for unknown symbol %rzGenerating %s tablesz1 shift/reduce conflictz%d shift/reduce conflictsz1 reduce/reduce conflictz%d reduce/reduce conflictsz
Conflicts:z7shift/reduce conflict for %s in state %d resolved as %sz;reduce/reduce conflict in state %d resolved using rule (%s)zrejected rule (%s) in state %dzRule (%s) is never reducedzCouldn't create )P
tab_modulerrrdirdictrrr6rfrrrrrrwrrdirnamerrVrFrPrr,rrrrrrrrHrr<rr}rrrr$r __version__rXr$rIrr9r"rrIrMrLr\rrr_r>r'rcr&r1rr)rr*rSrZrgrrrrr.r4r@rrr%r,)<rrrrrLcheck_recursionoptimizewrite_tables	debugfiler debuglogerrorlog
picklefile_itemsrsrcfiler^pkgnamepkgpinforlrread_signaturerLr$errorsrr1r7r8funcnamegramrrrArBr\rrr_rhrrcrnontermsnontermunreachableurYinfunused_precnum_srnum_rrrr
resolutionalready_reportedrulerejectedwarned_nevers<  `                                                         r
yaccrs7	SZ((*????3v;;???VU"" #E,,? @ IE*&q))
i!122		H(GG)##
+!,,((5":..[7*+++!#+g"6
BGGGOOG,,	))M
"
"C
.z)S)).ic	I-I

g
%X...E	MMOOO{20111!!I

YY	6^^J77NN]]955N	V)33
V!!%+...!"e&677

V
V
V  !QSTUUUUUUUU
V!!!Q        



	$
($T"',,y)*L*Lc%R%RSS
(
(
(   999aa!HIII%<<
("||HMMI;WWW
F
20111=;<<<el##G$n&&eU	&""46666	&	&	&T1%%%%%%%%	& -$%)"dHd	""8T8T4HHHH			NN4###FFFFFF	
=ek****e$$$s1vv20111 1133&	TTVZV_aeajloppp//11*

b

)***

b$	*	*D=tDDDMM(D))))
0

b

i   

bg122	0	0DAqMM.!Q////''))Lbb?DIW[W`aaaa
!!2333
q  5s;K7L7LMMM
<A1222
<14c,6G6GHHH

b

?@@@

bW&''

	c	cDMM,chh7`7`HYZ^H_7`7`7`.a.abbbb

b

BCCC

b,--

	l	lGMM,:i:i7K_`gKh:i:i:i1j1jkkkk

b..00	<	<A7;;;;**,,		CNNFLLLFF++--K"eI5RVWWW
20111
7-v666	'68	4	4B
CR_%%Q;;67777
aZZ8&AAAR_%%Q;;78888
aZZ96BBB
."/.R_.&&&&(o	q	q"E3
VY\^ceopppp55%'_	B	B!E4r$xxH.2BBBZ\acghhh=xOOOZ\acghhh=xOOO  %D2h<<!@AAAA%'_	.	.!E4#
.)E)E  !=xHHH  !=xHHH##H---H	HNN9i;;;;	H	H	HAAFGGGGGGGG	HI	IOOJ	2222	I	I	IQQGHHHHHHHH	Iek"""
b%*
+
+FLEMsAI87I


I4I/*I8/I44I88
J9"J))
J98J9;K==
L:)L55L:	O!!
P+PP"P<<
Q(Q##Q(,2R
S)$SSn22
o!<oo!'o>>
p-p((p-)<r`rros.pathrrbbase64r=rr	yaccdebug
debug_filer
default_lrrrr2r)version_info
basestringrmrVmaxsizerobjectrr$r<r,r8r;r@rGrDr?rArErHrMrOrYrrar<rrrr r"r$r}rrrrrr6rDrFrr"rr
<module>rs|
			







	


	ALLL	$									999
	
	






: ,,,,,,,,hZCZCZCZCZCZCZCZCL/004B-B-B-B-B-B-B-B-P-----V---\+++++V+++6 					9			e"e"e"e"e"fe"e"e"^					9			99999f999h	
	
	
""".									55555w555`   RNNNNNFNNNli
RVDJ$$XXXXXXr
Back to Directory File Manager