Ñò §ÚêLc@s‡ddklZlZlZdeifd„ƒYZdefd„ƒYZdefd„ƒYZdefd „ƒYZ d d „Z d S( i(tgrammarttokenttokenizet PgenGrammarcBseZRS((t__name__t __module__(((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRstParserGeneratorcBs°eZdd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d„Z d „Z d „Z d „Zd „Zd „Zd„Zdd„Zd„Zd„ZRS(cCs¤d}|djot|ƒ}|i}n||_||_ti|iƒ|_|i ƒ|i ƒ\|_ |_ |dj o |ƒnh|_ |iƒdS(N(tNonetopentclosetfilenametstreamRtgenerate_tokenstreadlinet generatortgettokentparsetdfast startsymboltfirstt addfirstsets(tselfR R t close_stream((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyt__init__ s         c CsŠtƒ}|iiƒ}|iƒ|i|iƒ|id|iƒx;|D]3}dt|iƒ}||i|<||i |tupdate( RR*R,R-ttotalsett overlapcheckR.R/tfsettinversetitsfirsttsymbol((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyR>ss8            c Csõh}d}xÜ|itijoÈx"|itijo|iƒq%W|itiƒ}|itidƒ|i ƒ\}}|itiƒ|i ||ƒ}t |ƒ}|i |ƒt |ƒ}|||<|djo |}qqW||fS(Nt:( RttypeRt ENDMARKERtNEWLINERtexpectR:tOPt parse_rhstmake_dfaRt simplify_dfa( RRRR*tatzR,toldlentnewlen((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyR‘s&     c s‡fd†}‡fd†‰t||ƒ|ƒg}xÛ|D]Ó}h}xU|iD]J}xA|iD]6\}} |dj oˆ| |i|hƒƒqcqcWqSWxl|iƒD]^\}} x?|D]} | i| joPqÁqÁWt| |ƒ} |i| ƒ|i| |ƒq®Wq=W|S(Ncsh}ˆ||ƒ|S(N((R-tbase(t addclosure(s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pytclosure°s csX||jodSd|| %ds %s -> %d(t enumerateRR#RR!R( RR*R'R[ttodoR+R-R.R/tj((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pytdump_nfaÍs   !      cCs€dG|GHxpt|ƒD]b\}}dG|G|iodpdGHx5|iiƒD]$\}}d||i|ƒfGHqPWqWdS(NsDump of DFA fors States(final)R^s %s -> %d(R_R$RR R#(RR*R,R+R-R.R/((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pytdump_dfaÝs   cCsªt}x|o•t}xˆt|ƒD]z\}}xkt|dt|ƒƒD]P}||}||jo3||=x|D]}|i||ƒqtWt}PqIqIWq#Wq WdS(Ni(tTruetFalseR_trangeRt unifystate(RR,tchangesR+tstate_iRatstate_jR-((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyROäs    cCsµ|iƒ\}}|idjo ||fStƒ}tƒ}|i|ƒ|i|ƒxK|idjo:|iƒ|iƒ\}}|i|ƒ|i|ƒq\W||fSdS(Nt|(t parse_altR=tNFAStateRZR(RRPRQtaatzz((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRMùs       cCsu|iƒ\}}xV|idjp|ititifjo)|iƒ\}}|i|ƒ|}qW||fS(Nt(t[(RpRq(t parse_itemR=RHRR:tSTRINGRZ(RRPtbR(td((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRl s  cCsÇ|idjoG|iƒ|iƒ\}}|itidƒ|i|ƒ||fS|iƒ\}}|i}|djo ||fS|iƒ|i|ƒ|djo ||fS||fSdS(NRqt]t+t*(RwRx(R=RRMRKRRLRZt parse_atom(RRPRQR=((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRrs          cCs½|idjo:|iƒ|iƒ\}}|itidƒ||fS|ititifjo:t ƒ}t ƒ}|i ||iƒ|iƒ||fS|i d|i|iƒdS(NRpt)s+expected (...) or NAME or STRING, got %s/%s( R=RRMRKRRLRHR:RsRmRZt raise_error(RRPRQ((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRy(s       cCsg|i|jp|dj o3|i|jo#|id|||i|iƒn|i}|iƒ|S(Nsexpected %s/%s, got %s/%s(RHRR=R{R(RRHR=((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRK9s -   cCsk|iiƒ}x1|dtitifjo|iiƒ}qW|\|_|_|_|_|_ dS(Ni( RR/RtCOMMENTtNLRHR=tbegintendtline(Rttup((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRAs c Gsu|o;y||}WqBdi|gtt|ƒƒ}qBXnt||i|id|id|ifƒ‚dS(Nt ii(tjointmaptstrt SyntaxErrorR RR€(Rtmsgtargs((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyR{Hs'N(RRRRR0R&R"RR>RRNRbRcRORMRlRrRyRKRR{(((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyR s$   .    $        RmcBseZd„Zdd„ZRS(cCs g|_dS(N(R(R((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRSscCs|ii||fƒdS(N(RR!(RR/R.((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRZVsN(RRRRRZ(((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyRmQs RWcBs2eZd„Zd„Zd„Zd„ZdZRS(cCs%||_||j|_h|_dS(N(RXR$R(RRXtfinal((s*/usr/lib64/python2.6/lib2to3/pgen2/pgen.pyR]s cCs||i|s ÿH %