UNPKG

imba

Version:

Intuitive and powerful language for building webapps that fly

962 lines (961 loc) 192 kB
/* parser generated by jison-fork */ var parser = (function(){ var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,4],$V1=[1,6],$V2=[1,7],$V3=[1,16],$V4=[1,17],$V5=[1,42],$V6=[1,43],$V7=[1,44],$V8=[1,45],$V9=[1,84],$Va=[1,47],$Vb=[1,49],$Vc=[1,130],$Vd=[1,48],$Ve=[1,132],$Vf=[1,112],$Vg=[1,138],$Vh=[1,139],$Vi=[1,110],$Vj=[1,129],$Vk=[1,136],$Vl=[1,142],$Vm=[1,131],$Vn=[1,143],$Vo=[1,100],$Vp=[1,101],$Vq=[1,102],$Vr=[1,103],$Vs=[1,104],$Vt=[1,105],$Vu=[1,106],$Vv=[1,92],$Vw=[1,93],$Vx=[1,111],$Vy=[1,88],$Vz=[1,50],$VA=[1,19],$VB=[1,73],$VC=[1,72],$VD=[1,107],$VE=[1,69],$VF=[1,128],$VG=[1,108],$VH=[1,37],$VI=[1,38],$VJ=[1,115],$VK=[1,114],$VL=[1,36],$VM=[1,135],$VN=[1,89],$VO=[1,90],$VP=[1,91],$VQ=[1,98],$VR=[1,51],$VS=[1,57],$VT=[1,64],$VU=[1,86],$VV=[1,127],$VW=[1,109],$VX=[1,137],$VY=[1,79],$VZ=[1,94],$V_=[1,122],$V$=[1,123],$V01=[1,124],$V11=[1,140],$V21=[1,141],$V31=[1,83],$V41=[1,121],$V51=[1,68],$V61=[1,70],$V71=[1,71],$V81=[1,74],$V91=[1,75],$Va1=[1,145],$Vb1=[1,6,15],$Vc1=[1,6,13,14,15,31,32,43,47,65,93,103,112,145,150,151,152,164,174,186,196,200,202,212,219,222,230,231,253,255,256,265,277,294,298,305,306,310,311,312,316,318,319,327,331,334,335,336,342,343,344],$Vd1=[1,153],$Ve1=[1,150],$Vf1=[1,151],$Vg1=[1,155],$Vh1=[1,156],$Vi1=[1,158],$Vj1=[1,159],$Vk1=[1,160],$Vl1=[1,152],$Vm1=[1,154],$Vn1=[1,157],$Vo1=[1,163],$Vp1=[1,164],$Vq1=[1,172],$Vr1=[1,6,13,14,15,32,43,47,65,93,112,145,150,151,152,164,174,186,196,200,202,212,222,230,231,255,277,298,310,311,312,318,319,327,335,336,342,343,344],$Vs1=[2,465],$Vt1=[1,180],$Vu1=[1,177],$Vv1=[1,178],$Vw1=[1,173],$Vx1=[1,179],$Vy1=[1,185],$Vz1=[1,188],$VA1=[1,6,14,15,31,32,43,65,91,94,128,147,163,164,176,177,178,179,180,181,183,184,185,189,212,213,214,255],$VB1=[1,6,15,310,312,318,319,335],$VC1=[1,6,15,25,39,88,90,91,93,223,224,279,289,290],$VD1=[1,191],$VE1=[2,346],$VF1=[1,194],$VG1=[1,200],$VH1=[1,202],$VI1=[1,212],$VJ1=[1,213],$VK1=[1,219],$VL1=[1,218],$VM1=[1,6,13,14,15,31,32,43,47,65,93,103,112,145,150,151,152,164,174,186,196,200,202,212,219,222,230,231,253,255,256,265,277,294,298,310,311,312,318,319,327,335,336,342,343,344],$VN1=[2,366],$VO1=[1,222],$VP1=[1,223],$VQ1=[1,6,13,14,15,31,32,43,47,65,93,103,112,145,147,150,151,152,164,174,186,196,200,202,212,219,222,230,231,253,255,256,265,277,294,298,310,311,312,318,319,327,335,336,342,343,344],$VR1=[2,360],$VS1=[6,31,91,94,128,147,163,175,176,177,178,179,180,181,183,184,185,189,213,214],$VT1=[1,261],$VU1=[1,260],$VV1=[41,88,211],$VW1=[1,264],$VX1=[1,6,15,25,39,88,90,91,93,103,223,224,279,289,290],$VY1=[1,272],$VZ1=[1,277],$V_1=[1,278],$V$1=[1,274],$V02=[1,282],$V12=[1,280],$V22=[1,285],$V32=[1,6,13,14,15,31,32,41,43,47,65,93,103,112,124,125,145,150,151,152,164,174,186,196,200,202,212,219,222,230,231,253,255,256,265,277,294,298,310,311,312,318,319,327,335,336,342,343,344],$V42=[1,6,11,12,13,14,15,31,32,43,47,62,65,93,103,108,112,145,147,150,151,152,164,174,186,196,200,202,212,219,222,230,231,253,255,256,265,277,287,294,298,310,311,312,318,319,327,335,336,340,341,342,343,344],$V52=[1,314],$V62=[1,315],$V72=[1,317],$V82=[2,382],$V92=[1,331],$Va2=[1,326],$Vb2=[1,320],$Vc2=[1,325],$Vd2=[1,333],$Ve2=[1,335],$Vf2=[1,343],$Vg2=[1,6,11,12,13,14,15,31,32,41,43,47,62,65,88,91,93,103,108,112,145,147,150,151,152,164,174,186,196,200,202,211,212,219,222,230,231,241,253,255,256,265,277,287,294,298,310,311,312,318,319,327,335,336,340,341,342,343,344],$Vh2=[41,88,211,260,323],$Vi2=[1,6,13,14,15,31,32,43,47,65,93,103,109,110,111,112,145,150,151,152,164,174,186,196,200,202,212,219,222,230,231,253,255,256,265,277,294,298,310,311,312,318,319,327,335,336,342,343,344],$Vj2=[2,8],$Vk2=[88,90,91],$Vl2=[1,6,15,147],$Vm2=[1,380],$Vn2=[1,384],$Vo2=[1,385],$Vp2=[1,396],$Vq2=[1,398],$Vr2=[1,400],$Vs2=[1,6,13,14,15,32,43,47,65,93,112,145,150,151,152,164,174,186,196,200,202,212,222,230,231,255,277,298,310,311,312,318,319,327,335,336,342,343],$Vt2=[1,6,11,12,13,14,15,31,32,43,47,65,93,103,112,145,150,151,152,164,174,186,196,200,202,212,219,222,230,231,253,255,256,265,277,294,298,310,311,312,318,319,327,335,336,342,343,344],$Vu2=[1,6,11,12,13,14,15,31,32,41,43,47,62,65,88,91,93,103,108,112,145,147,150,151,152,164,174,186,196,200,202,211,212,219,222,230,231,241,253,255,256,265,277,287,294,298,310,311,312,318,319,325,326,327,335,336,340,341,342,343,344],$Vv2=[1,6,13,14,15,32,43,47,65,93,112,145,151,152,164,174,186,196,200,202,212,222,230,231,255,277,298,310,311,312,318,319,327,335,336,343],$Vw2=[6,15,31,47,93,103,186,219,253,256,265,294],$Vx2=[1,412],$Vy2=[1,417],$Vz2=[6,31,91,94,128,147,163,176,177,178,179,180,181,183,184,185,189,213,214],$VA2=[1,439],$VB2=[1,438],$VC2=[6,31,41,91,94,128,147,163,175,176,177,178,179,180,181,183,184,185,187,189,213,214],$VD2=[1,6,11,12,13,14,15,31,32,43,47,65,93,103,112,145,147,150,151,152,164,174,186,196,200,202,212,219,222,230,231,253,255,256,265,277,294,298,310,311,312,318,319,325,326,327,335,336,342,343,344],$VE2=[6,14],$VF2=[2,305],$VG2=[1,444],$VH2=[6,14,15,65,164],$VI2=[2,485],$VJ2=[1,451],$VK2=[6,14,15,32,65,164,212,255],$VL2=[2,309],$VM2=[1,462],$VN2=[1,463],$VO2=[1,6,13,14,15,32,43,47,65,93,112,145,164,186,196,200,212,222,230,231,255,298,319,327,335],$VP2=[1,6,13,14,15,32,43,47,65,93,112,145,164,186,196,200,212,222,230,231,255,298,311,319,327,335],$VQ2=[325,326],$VR2=[65,325,326],$VS2=[1,6,13,15,32,43,47,65,93,112,145,150,151,152,164,186,196,200,202,212,222,230,231,255,277,298,310,311,312,318,319,327,335,336,342,343,344],$VT2=[1,476],$VU2=[1,6,11,12,13,14,15,32,43,47,65,93,103,112,145,150,151,152,164,174,186,196,200,202,212,222,230,231,255,277,298,310,311,312,318,319,327,335,336,342,343,344],$VV2=[1,493],$VW2=[1,494],$VX2=[1,489],$VY2=[1,486],$VZ2=[1,492],$V_2=[1,497],$V$2=[1,498],$V03=[1,504],$V13=[6,14,15,43,65],$V23=[6,14,15,43,65,145],$V33=[6,14,15,43,65,145,147],$V43=[65,230,231],$V53=[1,517],$V63=[2,302],$V73=[91,103],$V83=[11,12,31,41,65,88,91,103,200,211,230,231,241],$V93=[1,6,13,14,15,32,43,47,65,93,112,145,150,151,152,164,174,186,196,200,202,212,222,230,231,255,277,298,310,311,312,318,319,327,335,336,343],$Va3=[1,6,13,14,15,32,43,47,65,93,112,145,164,186,196,200,212,222,230,231,255,298,311,327],$Vb3=[1,6,13,14,15,32,43,47,65,93,112,145,164,186,196,200,212,222,230,231,255,298,310,311,312,318,319,327,335],$Vc3=[1,535],$Vd3=[6,15,138,148,182],$Ve3=[1,6,13,14,15,32,43,47,65,93,112,145,150,151,152,164,174,186,196,200,202,212,222,230,231,255,277,298,310,311,312,316,318,319,327,334,335,336,342,343,344],$Vf3=[15,316,331],$Vg3=[1,6,13,15,32,43,47,65,93,112,145,150,151,152,164,174,186,196,200,202,212,222,230,231,255,277,298,310,311,312,318,319,327,335,336,342,343,344],$Vh3=[1,6,13,14,15,25,31,32,39,43,47,65,88,90,91,93,103,112,145,147,150,151,152,164,174,186,196,200,202,212,219,222,223,224,230,231,253,255,256,265,277,279,289,290,294,298,310,311,312,318,319,327,335,336,342,343,344],$Vi3=[6,14,15],$Vj3=[2,306],$Vk3=[1,595],$Vl3=[29,30,33,34,36,39,41,62,70,88,90,91,98,100,105,108,113,114,115,116,117,118,119,120,121,123,126,139,151,152,163,188,204,211,218,219,223,224,246,247,248,258,260,262,264,269,270,295,296,302,308,310,312,314,318,319,328,333,337,338,339,340,341],$Vm3=[1,600],$Vn3=[1,601],$Vo3=[1,6,11,12,13,14,15,31,32,41,43,47,62,65,88,91,93,103,108,109,110,111,112,145,147,150,151,152,164,174,186,196,200,202,211,212,219,222,230,231,241,253,255,256,265,277,287,294,298,310,311,312,318,319,327,335,336,340,341,342,343,344],$Vp3=[1,606],$Vq3=[32,65,222,230,231],$Vr3=[32,65,147,222,230,231],$Vs3=[1,6,13,14,15,32,43,47,65,93,112,145,164,186,196,200,212,222,230,231,255,298,310,312,318,319,327,335],$Vt3=[6,15],$Vu3=[1,630],$Vv3=[1,633],$Vw3=[1,634],$Vx3=[6,15,47,93,186],$Vy3=[6,11,12,15,31,47,93,147,186,287],$Vz3=[1,648],$VA3=[88,90,91,93,211],$VB3=[1,658],$VC3=[1,659],$VD3=[230,231],$VE3=[1,665],$VF3=[1,674],$VG3=[1,675],$VH3=[1,705],$VI3=[1,695],$VJ3=[1,702],$VK3=[1,703],$VL3=[1,704],$VM3=[1,691],$VN3=[1,692],$VO3=[1,694],$VP3=[1,698],$VQ3=[1,699],$VR3=[1,700],$VS3=[1,701],$VT3=[1,6,13,14,15,32,43,47,65,93,112,145,150,151,152,164,174,186,196,200,202,212,222,230,231,255,277,298,305,310,311,312,318,319,327,335,336,342,343,344],$VU3=[13,14,65],$VV3=[1,719],$VW3=[1,721],$VX3=[1,723],$VY3=[6,15,31,47,93,103,147,186,219,253],$VZ3=[1,781],$V_3=[1,6,13,14,15,32,43,47,65,93,112,138,145,148,150,151,152,164,174,182,186,196,200,202,212,222,230,231,255,277,298,310,311,312,318,319,327,335,336,342,343,344],$V$3=[1,794],$V04=[6,15,65,138,148,182],$V14=[1,798],$V24=[1,799],$V34=[1,800],$V44=[1,797],$V54=[6,15,41,62,65,105,138,148,150,151,152,155,163,166,167,168,169,170,171,172,173,174,182],$V64=[6,15,41,62,65,105,138,148,150,151,152,155,163,164,166,167,168,169,170,171,172,173,174,182],$V74=[1,815],$V84=[6,14,15,32,65],$V94=[6,15,41,62,65,105,138,148,150,151,152,155,161,163,164,166,167,168,169,170,171,172,173,174,182],$Va4=[1,854],$Vb4=[1,855],$Vc4=[1,869],$Vd4=[65,164],$Ve4=[1,872],$Vf4=[41,62,65,105,150,151,152,155,163,164,166,167,168,169,170,171,172,173,174],$Vg4=[150,151,152,164]; var parser = {trace: function trace() { }, yy: {}, symbols_: {"error":2,"Root":3,"Body":4,"Block":5,"TERMINATOR":6,"BODYSTART":7,"Line":8,"Terminator":9,"Type":10,"TYPE":11,"GENERICS":12,"EMPTY_BLOCK":13,"INDENT":14,"OUTDENT":15,"CSSDeclaration":16,"Expression":17,"VarDecl":18,"Comment":19,"Statement":20,"Decorators":21,"ImportDeclaration":22,"ExportDeclaration":23,"GLOBAL":24,"DECLARE":25,"Return":26,"Yield":27,"Throw":28,"STATEMENT":29,"BREAK":30,"CALL_START":31,"CALL_END":32,"CONTINUE":33,"DEBUGGER":34,"ExtendObject":35,"EXTEND":36,"Identifier":37,"ClassBody":38,"ENV_FLAG":39,"EXPORT":40,"{":41,"ImportSpecifierList":42,"}":43,"FROM":44,"String":45,"EXPORT_ALL":46,"AS":47,"Exportable":48,"DEFAULT":49,"DefaultExportable":50,"MethodDeclaration":51,"Class":52,"TagDeclaration":53,"VarAssign":54,"ImportOrExport":55,"IMPORT":56,"ImportDefaultSpecifier":57,"TYPEIMPORT":58,"ImportNamespaceSpecifier":59,"IMPORT_COMMA":60,"ImportFrom":61,"STRING":62,"IMPORT_ALL":63,"ImportSpecifier":64,",":65,"OptComma":66,"DecoratorIdentifier":67,"StyleMixinIdentifier":68,"Require":69,"REQUIRE":70,"RequireArg":71,"Literal":72,"Parenthetical":73,"Await":74,"Value":75,"Code":76,"Operation":77,"Assign":78,"If":79,"Ternary":80,"Try":81,"While":82,"For":83,"Switch":84,"Tag":85,"ExpressionBlock":86,"Outdent":87,"IDENTIFIER":88,"SymbolIdentifier":89,"SYMBOLID":90,"#":91,"Interpolation":92,"DECORATOR":93,"CSS_MIXIN":94,"Key":95,"KEY":96,"Argvar":97,"ARGVAR":98,"Symbol":99,"SYMBOL":100,"Decorator":101,"Arguments":102,".":103,"AlphaNumeric":104,"NUMBER":105,"UNIT":106,"InterpolatedString":107,"STRING_START":108,"NEOSTRING":109,"STRING_END":110,"{{":111,"}}":112,"JS":113,"REGEX":114,"BOOL":115,"TRUE":116,"FALSE":117,"NULL":118,"UNDEFINED":119,"RETURN":120,"YIELD":121,"Selector":122,"SELECTOR_START":123,"SELECTOR_PART":124,"SELECTOR_END":125,"TAG_START":126,"TagOptions":127,"TAG_END":128,"TagBody":129,"TagTypeName":130,"Self":131,"TAG_TYPE":132,"TagIdentifier":133,"StyleBlockDeclaration":134,"CSS":135,"CSS_SEL":136,"StyleBody":137,"CSS_END":138,"LOCAL":139,"StyleBlockBody":140,"OptStyleBody":141,"StyleNode":142,"StyleDeclaration":143,"StyleProperty":144,":":145,"StyleExpressions":146,"=":147,"CSSPROP":148,"StyleOperator":149,"MATH":150,"+":151,"-":152,"StyleExpression":153,"StyleTerm":154,"/":155,"StyleValue":156,"StyleOperation":157,"StyleFunctionArgs":158,"StyleFunctionArg":159,"StyleTermPlaceholder":160,"CSSUNIT":161,"StyleParens":162,"(":163,")":164,"StyleColor":165,"COLOR":166,"COLORMIX":167,"CSSVAR":168,"DIMENSION":169,"PERCENTAGE":170,"CSSURL":171,"CSSFUNCTION":172,"CSSIDENTIFIER":173,"COMPARE":174,"TAG_REF":175,"TAG_ID":176,"TAG_SYMBOL_ID":177,"SYMBOL_ID":178,"TAG_FLAG":179,"TAG_ATTR":180,"STYLE_START":181,"STYLE_END":182,"T.":183,"T:":184,"T@":185,"@":186,"TAG_LITERAL":187,"UNARY":188,"TAG_WS":189,"ArgList":190,"TagAttrValue":191,"TagFlag":192,"%":193,"TagPartIdentifier":194,"VALUE_START":195,"VALUE_END":196,"TagBodyList":197,"TagBodyItem":198,"SEPARATOR":199,"...":200,"Splat":201,"LOGIC":202,"TagDeclarationBlock":203,"TAG":204,"TagType":205,"TagId":206,"Assignable":207,"AssignObj":208,"ObjAssignable":209,"SimpleObjAssignable":210,"[":211,"]":212,"HERECOMMENT":213,"COMMENT":214,"Method":215,"Do":216,"Begin":217,"BEGIN":218,"DO":219,"BLOCK_PARAM_START":220,"ParamList":221,"BLOCK_PARAM_END":222,"STATIC":223,"DEF":224,"MethodScope":225,"MethodScopeType":226,"MethodIdentifier":227,"MethodParams":228,"MethodBody":229,"DEF_BODY":230,"DEF_EMPTY":231,"This":232,"OptSemicolon":233,";":234,"Param":235,"ParamExpression":236,"ParamValue":237,"Object":238,"Array":239,"ParamVar":240,"BLOCK_ARG":241,"SPLAT":242,"GlobalDeclaration":243,"GlobalAssignable":244,"VarKeyword":245,"VAR":246,"LET":247,"CONST":248,"VarAssignable":249,"SimpleAssignable":250,"Access":251,"SoakableOp":252,"INDEX_START":253,"IndexValue":254,"INDEX_END":255,"?.":256,"Super":257,"SUPER":258,"TaggedTemplate":259,"AWAIT":260,"Range":261,"ARGUMENTS":262,"Invocation":263,"AMPER_REF":264,"BANG":265,"AssignList":266,"ExpressionList":267,"ClassStart":268,"ABSTRACT":269,"CLASS":270,"ClassName":271,"Class2":272,"ClassStart2":273,"ClassBodyBlock":274,"ClassBodyLine":275,"ClassDeclLine":276,"RELATION":277,"ClassFieldDeclaration":278,"PROTECTED":279,"ClassField":280,"ClassFieldOp":281,"AccessorBody":282,"FieldDescriptorFull":283,"FieldDescriptor":284,"ClassFieldDecoration":285,"WatchBody":286,"COMPOUND_ASSIGN":287,"ClassFieldIdentifier":288,"PROP":289,"ATTR":290,"ClassFieldBody":291,"WATCH":292,"OptFuncExist":293,"FUNC_EXIST":294,"THIS":295,"SELF":296,"RangeDots":297,"..":298,"Arg":299,"DO_PLACEHOLDER":300,"SimpleArgs":301,"TRY":302,"Catch":303,"Finally":304,"FINALLY":305,"CATCH":306,"CATCH_VAR":307,"THROW":308,"WhileSource":309,"WHILE":310,"WHEN":311,"UNTIL":312,"Loop":313,"LOOP":314,"ForBody":315,"ELSE":316,"ForKeyword":317,"FOR":318,"POST_FOR":319,"ForStart":320,"ForSource":321,"ForVariables":322,"OWN":323,"ForValue":324,"FORIN":325,"FOROF":326,"BY":327,"SWITCH":328,"Whens":329,"When":330,"LEADING_WHEN":331,"IfBlock":332,"IF":333,"ELIF":334,"POST_IF":335,"?":336,"NEW":337,"---":338,"+++":339,"--":340,"++":341,"EXP":342,"SHIFT":343,"NOT":344,"$accept":0,"$end":1}, terminals_: {2:"error",6:"TERMINATOR",7:"BODYSTART",11:"TYPE",12:"GENERICS",13:"EMPTY_BLOCK",14:"INDENT",15:"OUTDENT",24:"GLOBAL",25:"DECLARE",29:"STATEMENT",30:"BREAK",31:"CALL_START",32:"CALL_END",33:"CONTINUE",34:"DEBUGGER",36:"EXTEND",39:"ENV_FLAG",40:"EXPORT",41:"{",43:"}",44:"FROM",46:"EXPORT_ALL",47:"AS",49:"DEFAULT",56:"IMPORT",58:"TYPEIMPORT",60:"IMPORT_COMMA",62:"STRING",63:"IMPORT_ALL",65:",",70:"REQUIRE",88:"IDENTIFIER",90:"SYMBOLID",91:"#",93:"DECORATOR",94:"CSS_MIXIN",96:"KEY",98:"ARGVAR",100:"SYMBOL",103:".",105:"NUMBER",106:"UNIT",108:"STRING_START",109:"NEOSTRING",110:"STRING_END",111:"{{",112:"}}",113:"JS",114:"REGEX",115:"BOOL",116:"TRUE",117:"FALSE",118:"NULL",119:"UNDEFINED",120:"RETURN",121:"YIELD",123:"SELECTOR_START",124:"SELECTOR_PART",125:"SELECTOR_END",126:"TAG_START",128:"TAG_END",132:"TAG_TYPE",135:"CSS",136:"CSS_SEL",138:"CSS_END",139:"LOCAL",145:":",147:"=",148:"CSSPROP",150:"MATH",151:"+",152:"-",155:"/",161:"CSSUNIT",163:"(",164:")",166:"COLOR",167:"COLORMIX",168:"CSSVAR",169:"DIMENSION",170:"PERCENTAGE",171:"CSSURL",172:"CSSFUNCTION",173:"CSSIDENTIFIER",174:"COMPARE",175:"TAG_REF",176:"TAG_ID",177:"TAG_SYMBOL_ID",178:"SYMBOL_ID",179:"TAG_FLAG",180:"TAG_ATTR",181:"STYLE_START",182:"STYLE_END",183:"T.",184:"T:",185:"T@",186:"@",187:"TAG_LITERAL",188:"UNARY",189:"TAG_WS",193:"%",194:"TagPartIdentifier",195:"VALUE_START",196:"VALUE_END",199:"SEPARATOR",200:"...",202:"LOGIC",204:"TAG",211:"[",212:"]",213:"HERECOMMENT",214:"COMMENT",218:"BEGIN",219:"DO",220:"BLOCK_PARAM_START",222:"BLOCK_PARAM_END",223:"STATIC",224:"DEF",230:"DEF_BODY",231:"DEF_EMPTY",234:";",241:"BLOCK_ARG",242:"SPLAT",246:"VAR",247:"LET",248:"CONST",253:"INDEX_START",255:"INDEX_END",256:"?.",258:"SUPER",260:"AWAIT",262:"ARGUMENTS",264:"AMPER_REF",265:"BANG",269:"ABSTRACT",270:"CLASS",277:"RELATION",279:"PROTECTED",287:"COMPOUND_ASSIGN",289:"PROP",290:"ATTR",292:"WATCH",294:"FUNC_EXIST",295:"THIS",296:"SELF",298:"..",300:"DO_PLACEHOLDER",302:"TRY",305:"FINALLY",306:"CATCH",307:"CATCH_VAR",308:"THROW",310:"WHILE",311:"WHEN",312:"UNTIL",314:"LOOP",316:"ELSE",318:"FOR",319:"POST_FOR",323:"OWN",325:"FORIN",326:"FOROF",327:"BY",328:"SWITCH",331:"LEADING_WHEN",333:"IF",334:"ELIF",335:"POST_IF",336:"?",337:"NEW",338:"---",339:"+++",340:"--",341:"++",342:"EXP",343:"SHIFT",344:"NOT"}, productions_: [0,[3,0],[3,1],[3,2],[4,1],[4,1],[4,3],[4,2],[9,1],[10,1],[10,1],[5,1],[5,2],[5,3],[5,4],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,2],[8,2],[20,1],[20,1],[20,1],[20,1],[20,1],[20,4],[20,1],[20,4],[20,1],[35,3],[23,2],[23,4],[23,6],[23,4],[23,6],[23,2],[23,3],[48,1],[48,1],[48,1],[48,1],[48,1],[48,2],[50,1],[50,2],[55,1],[55,1],[57,1],[22,2],[22,2],[22,4],[22,5],[22,4],[22,5],[22,6],[22,7],[22,6],[22,8],[61,1],[59,3],[42,1],[42,3],[42,4],[42,4],[42,5],[42,6],[64,1],[64,1],[64,1],[64,3],[64,1],[64,3],[69,2],[71,1],[71,1],[71,0],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[86,1],[86,3],[37,1],[89,1],[89,2],[67,1],[68,1],[95,1],[97,1],[99,1],[101,1],[101,2],[101,3],[21,1],[21,2],[104,2],[104,1],[104,1],[104,1],[104,1],[45,1],[107,1],[107,2],[107,2],[107,2],[92,2],[92,3],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[26,2],[26,2],[26,1],[27,2],[27,2],[27,1],[122,1],[122,2],[122,4],[122,2],[85,3],[85,4],[130,1],[130,1],[130,1],[130,1],[130,0],[134,4],[16,1],[16,2],[140,3],[140,3],[141,0],[141,1],[137,1],[137,2],[137,3],[137,3],[142,1],[142,3],[143,3],[143,3],[144,1],[149,1],[149,1],[149,1],[146,1],[146,3],[153,1],[153,2],[153,2],[153,3],[156,1],[156,1],[157,3],[157,3],[158,1],[158,3],[159,1],[159,2],[159,2],[159,3],[160,3],[160,2],[162,3],[162,2],[165,1],[165,4],[154,1],[154,1],[154,1],[154,1],[154,1],[154,1],[154,1],[154,1],[154,1],[154,4],[154,1],[154,2],[127,2],[127,1],[127,2],[127,2],[127,2],[127,2],[127,2],[127,3],[127,4],[127,5],[127,2],[127,3],[127,3],[127,4],[127,4],[127,3],[127,3],[127,3],[127,3],[127,4],[127,3],[127,4],[127,2],[127,2],[127,2],[127,3],[133,1],[133,3],[133,2],[133,4],[192,1],[192,2],[191,3],[129,2],[129,3],[129,3],[129,1],[197,1],[197,3],[197,4],[197,6],[197,4],[197,6],[198,1],[198,2],[198,1],[198,1],[198,1],[198,1],[53,1],[53,2],[53,2],[203,2],[203,3],[203,4],[203,5],[205,1],[206,2],[78,1],[78,3],[78,5],[208,2],[208,1],[208,1],[208,3],[208,5],[208,3],[208,5],[208,1],[210,1],[210,2],[210,1],[210,1],[209,1],[209,3],[209,3],[209,1],[19,1],[19,1],[76,1],[76,1],[76,1],[217,2],[216,2],[216,5],[215,1],[215,2],[51,6],[51,4],[228,1],[228,3],[226,1],[226,1],[227,1],[227,1],[227,1],[227,3],[227,2],[229,2],[229,3],[229,1],[225,1],[225,1],[225,1],[66,0],[66,1],[233,0],[233,1],[221,0],[221,1],[221,3],[236,1],[236,1],[236,1],[236,1],[236,1],[236,1],[237,1],[235,1],[235,1],[235,1],[235,2],[235,2],[235,3],[235,3],[235,3],[235,1],[240,1],[240,2],[201,2],[243,4],[243,2],[244,1],[244,2],[245,1],[245,1],[245,1],[249,1],[249,2],[249,1],[249,1],[18,2],[18,2],[54,3],[54,5],[250,1],[250,1],[250,1],[250,1],[250,1],[250,1],[250,2],[251,3],[251,3],[251,4],[251,5],[252,1],[252,1],[257,1],[207,1],[207,1],[207,1],[259,2],[259,2],[74,2],[75,1],[75,1],[75,1],[75,1],[75,1],[75,1],[75,1],[75,1],[75,1],[75,1],[75,1],[75,1],[75,1],[75,2],[254,1],[238,4],[266,0],[266,1],[266,3],[266,4],[266,6],[267,1],[267,3],[267,4],[267,4],[267,6],[52,1],[52,2],[52,2],[268,3],[268,2],[268,2],[268,4],[268,5],[268,4],[272,2],[272,2],[272,2],[273,2],[273,1],[273,1],[273,3],[273,4],[273,3],[271,1],[271,1],[271,1],[271,3],[271,3],[271,2],[38,2],[38,3],[38,4],[274,1],[274,3],[274,2],[275,1],[275,1],[275,2],[275,1],[275,2],[275,1],[275,1],[276,2],[276,2],[276,1],[276,1],[276,2],[276,2],[276,2],[278,3],[278,1],[278,3],[278,2],[284,1],[284,4],[284,2],[284,4],[284,3],[283,1],[283,3],[283,2],[282,1],[282,1],[285,3],[286,1],[286,1],[281,1],[281,1],[280,1],[280,2],[280,2],[280,2],[280,3],[288,1],[288,1],[291,3],[263,3],[263,2],[293,0],[293,1],[102,2],[102,4],[232,1],[131,1],[239,2],[239,4],[239,2],[297,1],[297,1],[261,5],[190,1],[190,3],[190,4],[190,6],[190,4],[190,6],[87,2],[87,1],[299,1],[299,2],[299,1],[299,1],[299,1],[301,1],[301,3],[81,2],[81,3],[81,3],[81,4],[304,2],[303,3],[303,2],[28,2],[73,3],[73,4],[73,2],[309,2],[309,4],[309,2],[309,4],[82,2],[82,2],[82,2],[82,1],[313,2],[313,2],[83,2],[83,2],[83,2],[83,4],[317,1],[317,1],[315,2],[315,2],[320,2],[320,3],[320,3],[324,1],[324,2],[324,1],[324,1],[322,1],[322,3],[322,5],[321,2],[321,2],[321,4],[321,4],[321,4],[321,6],[321,6],[84,5],[84,7],[84,4],[84,6],[329,1],[329,2],[330,3],[330,4],[332,3],[332,5],[332,4],[332,3],[79,1],[79,3],[79,3],[80,5],[77,2],[77,2],[77,2],[77,2],[77,2],[77,2],[77,2],[77,2],[77,2],[77,2],[77,3],[77,3],[77,3],[77,3],[77,3],[77,3],[77,3],[77,4],[77,3],[77,3],[77,5]], performAction: function performAction(self, yytext, yy, yystate /* action[1] */, $$ /* vstack */) { /* self == yyval */ var $0 = $$.length - 1; switch (yystate) { case 1: return self.$ = new yy.Root([]); break; case 2: return self.$ = new yy.Root($$[$0]); break; case 3: return self.$ = $$[$0-1]; break; case 4: case 11: self.$ = new yy.Block([]); break; case 5: self.$ = new yy.Block([]).add($$[$0]); break; case 6: case 420: self.$ = $$[$0-2].break($$[$0-1]).add($$[$0]); break; case 7: case 421: self.$ = $$[$0-1].break($$[$0]); break; case 8: self.$ = new yy.Terminator($$[$0]); break; case 9: self.$ = new yy.TypeAnnotation($$[$0]); break; case 10: self.$ = new yy.Generics($$[$0]); break; case 12: self.$ = new yy.Block([]).indented($$[$0-1], $$[$0]); break; case 13: case 97: case 152: case 158: case 235: case 417: self.$ = $$[$0-1].indented($$[$0-2], $$[$0]); break; case 14: case 418: self.$ = $$[$0-1].prebreak($$[$0-2]).indented($$[$0-3], $$[$0]); break; case 15: case 16: case 18: case 19: case 20: case 21: case 22: case 25: case 26: case 27: case 42: case 43: case 44: case 45: case 46: case 48: case 50: case 51: case 63: case 78: case 79: case 80: case 81: case 82: case 83: case 84: case 85: case 86: case 87: case 88: case 89: case 90: case 91: case 92: case 93: case 94: case 95: case 96: case 114: case 115: case 123: case 143: case 154: case 159: case 164: case 165: case 166: case 173: case 174: case 189: case 192: case 195: case 196: case 244: case 246: case 247: case 248: case 250: case 259: case 269: case 270: case 272: case 273: case 274: case 277: case 280: case 281: case 282: case 286: case 290: case 294: case 295: case 299: case 300: case 302: case 303: case 304: case 305: case 306: case 307: case 308: case 312: case 313: case 314: case 315: case 316: case 317: case 318: case 321: case 333: case 335: case 336: case 337: case 338: case 340: case 341: case 347: case 348: case 351: case 360: case 361: case 362: case 366: case 367: case 368: case 369: case 370: case 372: case 373: case 374: case 375: case 376: case 377: case 392: case 410: case 422: case 423: case 425: case 427: case 428: case 431: case 432: case 437: case 445: case 451: case 452: case 460: case 461: case 484: case 485: case 487: case 489: case 490: case 510: case 517: case 518: case 524: case 526: case 527: case 542: case 550: self.$ = $$[$0]; break; case 17: self.$ = $$[$0].option("block", true); break; case 23: case 47: case 49: self.$ = yy.GLOBAL($$[$0], $$[$0-1]); break; case 24: case 434: self.$ = yy.DECLARE($$[$0], $$[$0-1]); break; case 28: case 124: self.$ = new yy.Literal($$[$0]); break; case 29: self.$ = new yy.BreakStatement($$[$0]); break; case 30: self.$ = new yy.BreakStatement($$[$0-3], $$[$0-1]); break; case 31: self.$ = new yy.ContinueStatement($$[$0]); break; case 32: self.$ = new yy.ContinueStatement($$[$0-3], $$[$0-1]); break; case 33: self.$ = new yy.DebuggerStatement($$[$0]); break; case 34: self.$ = new yy.ExtendDeclaration($$[$0-1], null, $$[$0]).set({ instanceOnly: true, extension: $$[$0-2] }); break; case 35: case 53: case 435: self.$ = $$[$0].addEnv($$[$0-1]); break; case 36: self.$ = new yy.ExportNamedDeclaration($$[$0-3], [$$[$0-1]]).setEnds($$[$0-3], $$[$0]); break; case 37: self.$ = new yy.ExportNamedDeclaration($$[$0-5], [$$[$0-3]], $$[$0]).setEnds($$[$0-5], $$[$0]); break; case 38: self.$ = new yy.ExportAllDeclaration($$[$0-3], [new yy.ExportAllSpecifier($$[$0-2])], $$[$0]).setEnds($$[$0-3], $$[$0]); break; case 39: self.$ = new yy.ExportAllDeclaration($$[$0-5], [new yy.ExportAllSpecifier($$[$0-4], $$[$0-2])], $$[$0]).setEnds($$[$0-5], $$[$0]); break; case 40: self.$ = new yy.Export($$[$0]).set({ keyword: $$[$0-1] }).setEnds($$[$0-1], $$[$0]); break; case 41: self.$ = new yy.Export($$[$0]).set({ keyword: $$[$0-2], "default": $$[$0-1] }).setEnds($$[$0-2], $$[$0]); break; case 52: self.$ = new yy.ImportDefaultSpecifier($$[$0]); break; case 54: self.$ = new yy.ImportDeclaration($$[$0-1], null, $$[$0]); break; case 55: case 57: self.$ = new yy.ImportDeclaration($$[$0-3], [$$[$0-2]], $$[$0]); break; case 56: self.$ = new yy.ImportTypeDeclaration($$[$0-4], [$$[$0-2]], $$[$0]); break; case 58: self.$ = new yy.ImportDeclaration($$[$0-4], null, $$[$0]); break; case 59: self.$ = new yy.ImportDeclaration($$[$0-5], [$$[$0-3]], $$[$0]); break; case 60: self.$ = new yy.ImportTypeDeclaration($$[$0-6], [$$[$0-3]], $$[$0]); break; case 61: self.$ = new yy.ImportDeclaration($$[$0-5], [$$[$0-4], $$[$0-2]], $$[$0]); break; case 62: self.$ = new yy.ImportDeclaration($$[$0-7], [$$[$0-6], $$[$0-3]], $$[$0]); break; case 64: self.$ = new yy.ImportNamespaceSpecifier(new yy.Literal($$[$0-2]), $$[$0]); break; case 65: self.$ = new yy.ESMSpecifierList([]).add($$[$0]); break; case 66: case 108: case 157: case 168: case 178: case 239: case 384: case 388: case 444: case 478: self.$ = $$[$0-2].add($$[$0]); break; case 67: self.$ = $$[$0-3].add($$[$0]); break; case 68: case 208: self.$ = $$[$0-2]; break; case 69: self.$ = $$[$0-3]; break; case 70: case 243: case 391: case 482: self.$ = $$[$0-5].concat($$[$0-2]); break; case 71: case 72: case 73: self.$ = new yy.ImportSpecifier($$[$0]); break; case 74: self.$ = new yy.ImportSpecifier($$[$0-2], $$[$0]); break; case 75: self.$ = new yy.ImportSpecifier(new yy.Literal($$[$0])); break; case 76: self.$ = new yy.ImportSpecifier(new yy.Literal($$[$0-2]), $$[$0]); break; case 77: self.$ = new yy.Require($$[$0]).set({ keyword: $$[$0-1] }); break; case 98: case 103: self.$ = new yy.Identifier($$[$0]); break; case 99: self.$ = new yy.SymbolIdentifier($$[$0]); break; case 100: self.$ = new yy.InterpolatedSymbolIdentifier($$[$0-1], $$[$0]); break; case 101: self.$ = new yy.DecoratorIdentifier($$[$0]); break; case 102: self.$ = new yy.MixinIdentifier($$[$0]); break; case 104: self.$ = new yy.Argvar($$[$0]).setEnds($$[$0], $$[$0]); break; case 105: self.$ = new yy.Symbol($$[$0]); break; case 106: self.$ = new yy.Decorator($$[$0]); break; case 107: self.$ = new yy.Decorator($$[$0-1]).set({ params: $$[$0] }); break; case 109: case 310: case 528: self.$ = [$$[$0]]; break; case 110: case 543: self.$ = $$[$0-1].concat($$[$0]); break; case 111: self.$ = new yy.NumWithUnit($$[$0-1], $$[$0]); break; case 112: self.$ = new yy.Num($$[$0]); break; case 113: case 116: self.$ = new yy.Str($$[$0]); break; case 117: self.$ = new yy.InterpolatedString([], { open: $$[$0] }); break; case 118: case 138: case 156: case 170: case 171: case 180: case 181: case 229: case 232: self.$ = $$[$0-1].add($$[$0]); break; case 119: self.$ = $$[$0] ? $$[$0-1].add($$[$0]) : $$[$0-1]; break; case 120: case 140: self.$ = $$[$0-1].option("close", $$[$0]); break; case 121: self.$ = null; break; case 122: case 224: case 225: case 233: case 236: case 291: case 483: self.$ = $$[$0-1]; break; case 125: self.$ = new yy.RegExp($$[$0]); break; case 126: self.$ = new yy.Bool($$[$0]); break; case 127: self.$ = new yy.True($$[$0]); break; case 128: self.$ = new yy.False($$[$0]); break; case 129: self.$ = new yy.Nil($$[$0]); break; case 130: self.$ = new yy.Undefined($$[$0]); break; case 131: case 132: self.$ = new yy.Return($$[$0]).set({ keyword: $$[$0-1] }); break; case 133: self.$ = new yy.Return().set({ keyword: $$[$0] }); break; case 134: case 135: self.$ = new yy.Yield($$[$0]).set({ keyword: $$[$0-1] }); break; case 136: self.$ = new yy.Yield().set({ keyword: $$[$0] }); break; case 137: self.$ = new yy.Selector([], { type: $$[$0], open: $$[$0] }); break; case 139: case 230: self.$ = $$[$0-3].add($$[$0-1]); break; case 141: self.$ = $$[$0-1].setEnds({ open: $$[$0-2], close: $$[$0] }).setEnds($$[$0-2], $$[$0]); break; case 142: self.$ = $$[$0-2].set({ body: $$[$0], open: $$[$0-3], close: $$[$0-1] }); break; case 144: case 145: case 257: self.$ = new yy.TagTypeIdentifier($$[$0]); break; case 146: self.$ = new yy.ExpressionNode($$[$0]); break; case 147: self.$ = new yy.TagTypeIdentifier("div"); break; case 148: self.$ = new yy.StyleRuleSet($$[$0-2], $$[$0-1]).set({ name: $$[$0-3] }); break; case 149: self.$ = $$[$0].set({ toplevel: true }); break; case 150: self.$ = $$[$0].set({ local: $$[$0-1] }); break; case 151: self.$ = new yy.StyleBody([]).indented($$[$0-2], $$[$0]); break; case 153: self.$ = new yy.StyleBody([]); break; case 155: self.$ = new yy.StyleBody([$$[$0]]); break; case 160: self.$ = new yy.StyleRuleSet($$[$0-2], $$[$0-1]); break; case 161: case 162: self.$ = new yy.StyleDeclaration($$[$0-2], $$[$0].set({ parens: false })); break; case 163: self.$ = new yy.StyleProperty([$$[$0]]); break; case 167: case 177: self.$ = new yy.StyleExpressions([$$[$0]]); break; case 169: case 179: self.$ = new yy.StyleExpression().add($$[$0]); break; case 172: case 182: self.$ = $$[$0-2].addParam($$[$0], $$[$0-1]); break; case 175: self.$ = new yy.StyleOperation([$$[$0-2], $$[$0-1], $$[$0]]); break; case 176: self.$ = $$[$0-2].add([$$[$0-1], $$[$0]]); break; case 183: self.$ = new yy.StyleInterpolationExpression($$[$0-1]).setEnds($$[$0-2], $$[$0]); break; case 184: case 186: self.$ = $$[$0-1].set({ unit: $$[$0] }); break; case 185: self.$ = new yy.StyleParens($$[$0-1]).setEnds($$[$0-2], $$[$0]); break; case 187: self.$ = new yy.StyleColor($$[$0]); break; case 188: self.$ = new yy.StyleColorMix($$[$0-3], $$[$0-1].setEnds($$[$0-2], $$[$0])).set({ params: $$[$0-1] }).setEnds($$[$0-3], $$[$0]); break; case 190: self.$ = new yy.StyleVar($$[$0]); break; case 191: case 193: self.$ = new yy.StyleDimension($$[$0]); break; case 194: self.$ = new yy.StyleNumber($$[$0]); break; case 197: self.$ = new yy.StyleURL($$[$0]); break; case 198: self.$ = new yy.StyleFunction($$[$0-3], $$[$0-1].setEnds($$[$0-2], $$[$0])).setEnds($$[$0-3], $$[$0]); break; case 199: self.$ = new yy.StyleIdentifier($$[$0]); break; case 200: self.$ = $$[$0].set({ op: $$[$0-1] }); break; case 201: self.$ = new yy.Tag({ type: $$[$0-1], reference: $$[$0] }); break; case 202: self.$ = new yy.Tag({ type: $$[$0] }); break; case 203: self.$ = $$[$0-1].addPart($$[$0], yy.TagId); break; case 204: case 205: self.$ = $$[$0-1].addPart(new yy.IdentifierExpression($$[$0].cloneSlice(1)), yy.TagId); break; case 206: self.$ = $$[$0-1].addPart($$[$0], yy.TagFlag); break; case 207: self.$ = $$[$0-1].addPart($$[$0], yy.TagAttr); break; case 209: self.$ = $$[$0-3].addPart(new yy.StyleRuleSet(null, $$[$0-1]), yy.TagFlag); break; case 210: self.$ = $$[$0-4].addPart(new yy.StyleRuleSet(null, $$[$0-1]), yy.TagFlag); break; case 211: self.$ = $$[$0-1].addPart(new yy.MixinIdentifier($$[$0]), yy.TagFlag); break; case 212: case 213: self.$ = $$[$0-2].addPart($$[$0], yy.TagHandler); break; case 214: self.$ = $$[$0-3].addPart($$[$0].prepend("_"), yy.TagFlag); break; case 215: self.$ = $$[$0-3].addPart($$[$0].prepend("!"), yy.TagFlag); break; case 216: self.$ = $$[$0-2].addPart($$[$0], yy.TagFlag); break; case 217: self.$ = $$[$0-2].addPart($$[$0], yy.TagId); break; case 218: self.$ = $$[$0-2].addPart($$[$0-1], yy.TagSep).addPart($$[$0], yy.TagAttr); break; case 219: self.$ = $$[$0-2].addPart(new yy.ArgList([]), yy.TagArgList); break; case 220: case 222: self.$ = $$[$0-3].addPart($$[$0-1], yy.TagArgList); break; case 221: self.$ = $$[$0-2].addPart(null, yy.TagArgList); break; case 223: self.$ = $$[$0-1].addPart($$[$0], yy.TagSep); break; case 226: self.$ = $$[$0-2].addPart($$[$0], yy.TagAttrValue, $$[$0-1]); break; case 227: self.$ = new yy.IdentifierExpression($$[$0]); break; case 228: case 275: case 276: self.$ = new yy.IdentifierExpression($$[$0-1]); break; case 231: self.$ = new yy.TagFlag(); break; case 234: self.$ = new yy.TagBody([]).indented($$[$0-1], $$[$0]); break; case 237: self.$ = new yy.TagBody([$$[$0]]); break; case 238: self.$ = new yy.TagBody([]).add($$[$0]); break; case 240: case 385: case 389: case 479: self.$ = $$[$0-3].add($$[$0-1]).add($$[$0]); break; case 241: case 480: self.$ = $$[$0-5].add($$[$0-1]).add($$[$0]); break; case 242: case 390: case 481: self.$ = $$[$0-2].indented($$[$0-3], $$[$0]); break; case 245: case 486: self.$ = new yy.Splat($$[$0]).set({ keyword: $$[$0-1] }); break; case 249: self.$ = $$[$0].set({ inTagTree: true }); break; case 251: self.$ = $$[$0].set({ extension: true }); break; case 252: self.$ = $$[$0].set({ local: true }); break; case 253: self.$ = new yy.TagDeclaration($$[$0]).set({ keyword: $$[$0-1] }); break; case 254: self.$ = new yy.TagDeclaration($$[$0-1], null, $$[$0]).set({ keyword: $$[$0-2] }); break; case 255: self.$ = new yy.TagDeclaration($$[$0-2], $$[$0]).set({ keyword: $$[$0-3], extends: $$[$0-1] }); break; case 256: self.$ = new yy.TagDeclaration($$[$0-3], $$[$0-1], $$[$0]).set({ keyword: $$[$0-4], extends: $$[$0-2] }); break; case 258: self.$ = new yy.TagIdRef($$[$0]); break; case 260: self.$ = new yy.Assign($$[$0-1], $$[$0-2], $$[$0]).setEnds($$[$0-2], $$[$0]); break; case 261: case 345: self.$ = new yy.Assign($$[$0-3], $$[$0-4], $$[$0-1].indented($$[$0-2], $$[$0])); break; case 262: self.$ = new yy.ObjRestAttr($$[$0]).set({ spread: $$[$0-1] }); break; case 263: self.$ = $$[$0].set({ inObject: true }); break; case 264: self.$ = new yy.ObjAttr($$[$0]); break; case 265: self.$ = new yy.ObjAttr($$[$0-2], $$[$0]); break; case 266: self.$ = new yy.ObjAttr($$[$0-4], $$[$0-1].indented($$[$0-2], $$[$0])); break; case 267: self.$ = new yy.ObjAttr($$[$0-2], null, $$[$0]); break; case 268: self.$ = new yy.ObjAttr($$[$0-4], null, $$[$0-1].indented($$[$0-2], $$[$0])); break; case 271: case 298: case 334: case 339: case 352: case 415: case 458: case 473: case 502: case 525: self.$ = yy.SETTYPE($$[$0-1], $$[$0]); break; case 278: self.$ = new yy.Comment($$[$0], true); break; case 279: self.$ = new yy.Comment($$[$0], false); break; case 283: self.$ = new yy.Begin($$[$0]); break; case 284: self.$ = new yy.Lambda([], $$[$0], null, null, { bound: true, keyword: $$[$0-1] }); break; case 285: self.$ = new yy.Lambda($$[$0-2], $$[$0], null, null, { bound: true, keyword: $$[$0-4] }); break; case 287: case 343: case 429: case 430: self.$ = $$[$0].set({ static: $$[$0-1] }); break; case 288: self.$ = new yy.MethodDeclaration($$[$0-1], $$[$0], $$[$0-2], $$[$0-4], $$[$0-3]).set({ def: $$[$0-5], keyword: $$[$0-5], datatype: $$[$0-2].option("datatype") }); break; case 289: self.$ = new yy.MethodDeclaration($$[$0-1], $$[$0], $$[$0-2], null).set({ def: $$[$0-3], keyword: $$[$0-3], datatype: $$[$0-2].option("datatype") }); break; case 292: self.$ = { static: true }; break; case 293: self.$ = {}; break; case 296: self.$ = $$[$0].set({ as: "property" }); break; case 297: self.$ = new yy.InterpolatedIdentifier($$[$0-1]); break; case 301: self.$ = new yy.Block([]).set({ end: $$[$0]._loc }); break; case 309: self.$ = []; break; case 311: self.$ = $$[$0-2].concat($$[$0]); break; case 319: case 320: case 328: self.$ = new yy.Param($$[$0]); break; case 322: self.$ = $$[$0].set({ splat: $$[$0-1] }); break; case 323: self.$ = $$[$0].set({ blk: $$[$0-1] }); break; case 324: self.$ = new yy.Param($$[$0-2].value(), $$[$0]).set({ datatype: $$[$0-2].option("datatype") }); break; case 325: case 326: self.$ = new yy.Param($$[$0-2], $$[$0]); break; case 327: self.$ = new yy.RestParam($$[$0]); break; case 329: self.$ = yy.SETTYPE(new yy.Param($$[$0-1]), $$[$0]); break; case 330: self.$ = yy.SPLAT($$[$0]); break; case 331: self.$ = new yy.GlobalDeclaration($$[$0-2], $$[$0]).set({ keyword: $$[$0-3], op: $$[$0-1] }); break; case 332: self.$ = new yy.GlobalDeclaration($$[$0]).set({ keyword: $$[$0-1] }); break; case 342: self.$ = new yy.VarReference($$[$0], $$[$0-1]); break; case 344: self.$ = new yy.Assign($$[$0-1], $$[$0-2], $$[$0]); break; case 346: self.$ = new yy.EnvFlag($$[$0]); break; case 349: case 411: self.$ = new yy.VarOrAccess($$[$0]); break; case 350: case 412: self.$ = new yy.Access(".", null, $$[$0]); break; case 353: case 413: case 573: self.$ = yy.OP($$[$0-1], $$[$0-2], $$[$0]); break; case 354: case 414: self.$ = new yy.IndexAccess($$[$0-1], $$[$0-2], $$[$0]); break; case 355: self.$ = new yy.IndexAccess(".", $$[$0-3], $$[$0-1].setEnds($$[$0-2], $$[$0])); break; case 356: self.$ = yy.OP($$[$0-3], $$[$0-4], $$[$0-1]); break; case 359: self.$ = new yy.Super($$[$0]); break; case 363: case 364: self.$ = new yy.TaggedTemplate($$[$0-1], $$[$0]); break; case 365: self.$ = new yy.Await($$[$0]).set({ keyword: $$[$0-1] }); break; case 371: self.$ = yy.ARGUMENTS; break; case 378: self.$ = new yy.AmperRef($$[$0]); break; case 379: self.$ = new yy.BangCall($$[$0-1]).set({ keyword: $$[$0] }); break; case 380: self.$ = new yy.Index($$[$0]); break; case 381: self.$ = new yy.Obj($$[$0-2], $$[$0-3].generated).setEnds($$[$0-3], $$[$0]); break; case 382: self.$ = new yy.AssignList([]); break; case 383: self.$ = new yy.AssignList([$$[$0]]); break; case 386: self.$ = $$[$0-5].concat($$[$0-2].indented($$[$0-3], $$[$0])); break; case 387: self.$ = new yy.ExpressionList([]).add($$[$0]); break; case 393: case 402: self.$ = $$[$0].set({ abstract: $$[$0-1] }); break; case 394: case 403: self.$ = $$[$0].set({ extension: $$[$0-1] }); break; case 395: self.$ = new yy.ClassDeclaration($$[$0-1], null, $$[$0]).set({ keyword: $$[$0-2] }); break; case 396: self.$ = new yy.ClassDeclaration($$[$0], null, []).set({ keyword: $$[$0-1] }); break; case 397: self.$ = new yy.ClassDeclaration(null, null, $$[$0]).set({ keyword: $$[$0-1] }); break; case 398: self.$ = new yy.ClassDeclaration($$[$0-2], $$[$0], []).set({ keyword: $$[$0-3], extends: $$[$0-1] }); break; case 399: self.$ = new yy.ClassDeclaration($$[$0-3], $$[$0-1], $$[$0]).set({ keyword: $$[$0-4], extends: $$[$0-2] }); break; case 400: self.$ = new yy.ClassDeclaration(null, $$[$0-1], $$[$0]).set({ keyword: $$[$0-3], extends: $$[$0-2] }); break; case 401: self.$ = $$[$0].set({ keyword: $$[$0-1] }); break; case 404: self.$ = new yy.ClassDeclaration($$[$0-1], null, $$[$0]); break; case 405: self.$ = new yy.ClassDeclaration($$[$0], null, []); break; case 406: self.$ = new yy.ClassDeclaration(null, null, $$[$0]); break; case 407: self.$ = new yy.ClassDeclaration($$[$0-2], $$[$0], []).set({ extends: $$[$0-1] }); break; case 408: self.$ = new yy.ClassDeclaration($$[$0-3], $$[$0-1], $$[$0]).set({ extends: $$[$0-2] }); break; case 409: self.$ = new yy.ClassDeclaration(null, $$[$0-1], $$[$0]).set({ extends: $$[$0-2] }); break; case 416: self.$ = new yy.ClassBody([]).indented($$[$0-1], $$[$0]); break; case 419: self.$ = new yy.ClassBody([]).add($$[$0]); break; case 424: self.$ = $$[$0-1].concat([$$[$0]]); break; case 426: self.$ = new yy.ClassRelation($$[$0]).set({ keyword: $$[$0-1] }); break; case 433: self.$ = $$[$0].set({ protected: $$[$0-1] }); break; case 436: self.$ = $$[$0-2].set({ value: $$[$0], op: $$[$0-1] }); break; case 438: self.$ = $$[$0-2].set({ wrapper: $$[$0] }); break; case 439: self.$ = $$[$0-1].set({ wrapper: $$[$0] }); break; case 440: self.$ = new yy.Descriptor($$[$0]); break; case 441: self.$ = new yy.Descriptor($$[$0-1]); break; case 442: self.$ = $$[$0-1].add($$[$0], "!"); break; case 443: self.$ = $$[$0-3].add($$[$0-1], "="); break; case 446: self.$ = $$[$0-2].set({ "default": $$[$0] }); break; case 447: self.$ = $$[$0-1].set({ callback: $$[$0] }); break; case 450: self.$ = $$[$0-2].set({ watch: $$[$0] }); break; case 455: self.$ = new yy.ClassField($$[$0]); break; case 456: self.$ = new yy.ClassProperty($$[$0]).set({ keyword: $$[$0-1] }); break; case 457: self.$ = new yy.ClassAttribute($$[$0]).set({ keyword: $$[$0-1] }); break; case 459: self.$ = $$[$0-2].set({ controller: $$[$0-1] }); break; case 462: self.$ = [$$[$0-2], $$[$0-1]]; break; case 463: self.$ = new yy.Call($$[$0-2], $$[$0], $$[$0-1]); break; case 464: self.$ = $$[$0-1].addBlock($$[$0]); break; case 465: self.$ = false; break; case 466: self.$ = true; break; case 467: self.$ = new yy.ArgList([]).setEnds($$[$0-1], $$[$0]); break; case 468: self.$ = $$[$0-2].setEnds($$[$0-3], $$[$0]); break; case 469: self.$ = new yy.This($$[$0]); break; case 470: self.$ = new yy.Self($$[$0]); break; case 471: self.$ = new yy.Arr(new yy.ArgList([])).setEnds($$[$0-1], $$[$0]); break; case 472: self.$ = new yy.Arr($$[$0-2]).setEnds($$[$0-3], $$[$0]); break; case 474: self.$ = ".."; break; case 475: self.$ = "..."; break; case 476: self.$ = yy.OP($$[$0-2], $$[$0-3], $$[$0-1]); break; case 477: self.$ = new yy.ArgList([$$[$0]]); break; case 488: self.$ = new yy.DoPlaceholder($$[$0]); break; case 491: self.$ = [].concat($$[$0-2], $$[$0]); break; case 492: self.$ = new yy.Try($$[$0]); break; case 493: self.$ = new yy.Try($$[$0-1], $$[$0]); break; case 494: self.$ = new yy.Try($$[$0-1], null, $$[$0]); break; case 495: self.$ = new yy.Try($$[$0-2], $$[$0-1], $$[$0]); break; case 496: self.$ = new yy.Finally($$[$0]); break; case 497: self.$ = new yy.Catch($$[$0], $$[$0-1]); break; case 498: self.$ = new yy.Catch($$[$0], null); break; case 499: self.$ = new yy.Throw($$[$0]); break; case 500: self.$ = new yy.Parens($$[$0-1], $$[$0-2], $$[$0]); break; case 501: self.$ = new yy.ExpressionWithUnit(new yy.Parens($$[$0-2], $$[$0-3], $$[$0-1]), $$[$0]); break; case 503: self.$ = new yy.While($$[$0], { keyword: $$[$0-1] }); break; case 504: self.$ = new yy.While($$[$0-2], { guard: $$[$0], keyword: $$[$0-3] }); break; case 505: self.$ = new yy.While($$[$0], { invert: true, keyword: $$[$0-1] }); break; case 506: self.$ = new yy.While($$[$0-2], { invert: true, guard: $$[$0], keyword: $$[$0-3] }); break; case 507: case 515: self.$ = $$[$0-1].addBody($$[$0]); break; case 508: case 509: self.$ = $$[$0].addBody(yy.Block.wrap([$$[$0-1]])); break; case 511: self.$ = new yy.While(new yy.Literal("true", { keyword: $$[$0-1] })).addBody($$[$0]); break; case 512: self.$ = new yy.While(new yy.Literal("true", { keyword: $$[$0-1] })).addBody(yy.Block.wrap([$$[$0]])); break; case 513: case 514: self.$ = $$[$0].addBody([$$[$0-1]]); break; case 516: self.$ = $$[$0-3].addBody($$[$0-2]).addElse($$[$0]); break; case 519: self.$ = { source: new yy.ValueNode($$[$0]) }; break; case 520: self.$ = $$[$0].configure({ own: $$[$0-1].own, await: $$[$0-1].await, name: $$[$0-1][0], index: $$[$0-1][1], keyword: $$[$0-1].keyword, params: $$[$0-1] }); break; case 521: self.$ = ($$[$0].keyword = $$[$0-1]) && $$[$0]; break; case 522: self.$ = ($$[$0].await = $$[$0-1]) && ($$[$0].keyword = $$[$0-2]) && $$[$0]; break; case 523: self.$ = ($$[$0].own = true) && ($$[$0].keyword = $$[$0-2]) && $$[$0]; break; case 529: self.$ = [$$[$0-2], $$[$0]]; break; case 530: self.$ = [$$[$0-4], $$[$0-2], $$[$0]]; break; case 531: self.$ = new yy.ForIn({ source: $$[$0] }); break; case 532: self.$ = new yy.ForOf({ source: $$[$0], object: true }); break; case 533: self.$ = new yy.ForIn({ source: $$[$0-2], guard: $$[$0] }); break; case 534: self.$ = new yy.ForOf({ source: $$[$0-2], guard: $$[$0], object: true }); break; case 535: self.$ = new yy.ForIn({ source: $$[$0-2], step: $$[$0] }); break; case 536: self.$ = new yy.ForIn({ source: $$[$0-4], guard: $$[$0-2], step: $$[$0] }); break; case 537: self.$ = new yy.ForIn({ source: $$[$0-4], step: $$[$0-2], guard: $$[$0] }); break; case 538: self.$ = new yy.Switch($$[$0-3], $$[$0-1]); break; case 539: self.$ = new yy.Switch($$[$0-5], $$[$0-3], $$[$0-1]); break; case 540: self.$ = new yy.Switch(null, $$[$0-1]); break; case 541: self.$ = new yy.Switch(null, $$[$0-3], $$[$0-1]); break; case 544: self.$ = [new yy.SwitchCase($$[$0-1], $$[$0])]; break; case 545: self.$ = [new yy.SwitchCase($$[$0-2], $$[$0-1])]; break; case 546: self.$ = new yy.If($$[$0-1], $$[$0], { type: $$[$0-2] }); break; case 547: self.$ = $$[$0-4].addElse(new yy.If($$[$0-1], $$[$0], { type: $$[$0-2] })); break; case 548: self.$ = $$[$0-3].addElse(new yy.If($$[$0-1], $$[$0], { type: $$[$0-2] })); break; case 549: self.$ = $$[$0-2].addElse($$[$0].set({ keyword: $$[$0-1] })); break; case 551: self.$ = new yy.If($$[$0], new yy.Block([$$[$0-2]]), { type: $$[$0-1], statement: true }); break; case 552: self.$ = new yy.If($$[$0], new yy.Block([$$[$0-2]]), { type: $$[$0-1] }); break; case 553: self.$ = yy.If.ternary($$[$0-4], $$[$0-2], $$[$0]); break; case 554: self.$ = yy.Instantiation.for($$[$0], $$[$0-1]).setEnds($$[$0-1], $$[$0]); break; case 555: case 556: case 557: case 558: case 559: self.$ = yy.OP($$[$0-1], $$[$0]).setEnds($$[$0-1], $$[$0]); break; case 560: case 561: self.$ = new yy.UnaryOp($$[$0-1], null, $$[$0]).setEnds($$[$0-1], $$[$0]); break; case 562: case 563: self.$ = new yy.UnaryOp($$[$0], $$[$0-1], null, true).setEnds($$[$0-1], $$[$0]); break; case 564: case 565: self.$ = new yy.Op($$[$0-1], $$[$0-2], $$[$0]).setEnds($$[$0-2], $$[$0]); break; case 566: case 567: case 568: case 569: case 570: case 572: self.$ = yy.OP($$[$0-1], $$[$0-2], $$[$0]).setEnds($$[$0-2], $$[$0]); break; case 571: self.$ = yy.OP($$[$0-1], $$[$0-3], $$[$0]).invert($$[$0-2]); break; case 574: self.$ = yy.OP($$[$0-3], $$[$0-4], $$[$0-1].indented($$[$0-2], $$[$0])); break; } }, table: [{1:[2,1],3:1,4:2,5:3,7:$V0,8:5,13:$V1,14:$V2,16:8,17:9,18:10,19:11,20:12,21:13,22:14,23:15,24:$V3,25:$V4,26:39,27:40,28:41,29:$V5,30:$V6,33:$V7,34:$V8,35:31,36:$V9,37:118,39:$Va,40:$Vb,41:$Vc,51:113,52:32,53:33,54:77,56:$Vd,62:$Ve,67:95,69:63,70:$Vf,72:54,73:55,74:20,75:21,76:22,77:23,78:24,79:25,80:26,81:27,82:28,83:29,84:30,85:34,88:$Vg,89:119,90:$Vh,91:$Vi,93:$Vj,97:116,98:$Vk,99:133,100:$Vl,101:46,104:99,105:$Vm,107:134,108:$Vn,113:$Vo,114:$Vp,115:$Vq,116:$Vr,117:$Vs,118:$Vt,119:$Vu,120:$Vv,121:$Vw,122:60,123:$Vx,126:$Vy,131:117,134:18,135:$Vz,139:$VA,151:$VB,152:$VC,163:$VD,188:$VE,203:87,204:$VF,206:59,207:52,211:$VG,213:$VH,214:$VI,215:65,216:66,217:67,218:$VJ,219:$VK,223:$VL,224:$VM,232:58,238:97,239:96,245:35,246:$VN,247:$VO,248:$VP,250:76,251:120,257:53,258:$VQ,259:62,260:$VR,261:56,262:$VS,263:61,264:$VT,268:85,269:$VU,270:$VV,295:$VW,296:$VX,302:$VY,308:$VZ,309:80,310:$V_,312:$V$,313:81,314:$V01,315:82,317:125,318:$V11,319:$V21,320:126,328:$V31,332:78,333:$V41,337:$V51,338:$V61,339:$V71,340:$V81,341:$V91},{1:[3]},{1:[2,2],6:$Va1,9:144},{6:[1,146]},o($Vb1,[2,4]),o($Vb1,[2,5]),o($Vc1,[2,11]),{4:148,6:[1,149],7:$V0,8:5,15:[1,147],16:8,17:9,18:10,19:11,20:12,21:13,22:14,23:15,24:$V3,25:$V4,26:39,27:40,28:41,29:$V5,30:$V6,33:$V7,34:$V8,35:31,36:$V9,37:118,39:$Va,40:$Vb,41:$Vc,51:113,52:32,53:33,54:77,56:$Vd,62:$Ve,67:95,69:63,70:$Vf,72:54,73:55,74:20,75:21,76:22,77:23,78:24,79:25,80:26,81:27,82:28,83:29,84:30,85:34,88:$Vg,89:119,90:$Vh,91:$Vi,93:$Vj,97:116,98:$Vk,99:133,100:$Vl,101:46,104:99,105:$Vm,107:134,108:$Vn,113:$Vo,114:$Vp,115:$Vq,116:$Vr,117:$Vs,118:$Vt,119:$Vu,120:$Vv,121:$Vw,122:60,123:$Vx,126:$Vy,131:117,134:18,135:$Vz,139:$VA,151:$VB,152:$VC,163:$VD,188:$VE,203:87,204:$VF,206:59,207:52,211:$VG,213:$VH,214:$VI,215:65,216:66,217:67,218:$VJ,219:$VK,223:$VL,224:$VM,232:58,238:97,239:96,245:35,246:$VN,247:$VO,248:$VP,250:76,251:120,257:53,258:$VQ,259:62,260:$VR,261:56,262:$VS,263:61,264:$VT,268:85,269:$VU,270:$VV,295:$VW,296:$VX,302:$VY,308:$VZ,309:80,310:$V_,312:$V$,313:81,314:$V01,315:82,317:125,318:$V11,319:$V21,320:126,328:$V31,332:78,333:$V41,337:$V51,338:$V61,339:$V71,340:$V81,341:$V91},o($Vb1,[2,15]),o($Vb1,[2,16],{317:125,320:126,309:161,315:162,150:$Vd1,151:$Ve1,152:$Vf1,174:$Vg1,202:$Vh1,277:$Vi1,310:$V_,312:$V$,318:$V11,319:$V21,335:$Vj1,336:$Vk1,342:$Vl1,343:$Vm1,344:$Vn1}),o($Vb1,[2,17],{147:$Vo1}),o($Vb1,[2,18]),o($Vb1,[2,19],{317:125,320:126,309:165,315:166,310:$V_,312:$V$,318:$V11,319:$V21,335:$Vp1}),o($Vb1,[2,20],{67:95,101:167,93:$Vj}),o($Vb1,[2,21]),o($Vb1,[2,22]),{8:168,16:8,17:9,18:10,19:11,20:12,21:13,22:14,23:15,24:$V3,25:$V4,26:39,27:40,28:41,29:$V5,30:$V6,33:$V7,34:$V8,35:31,36:$V9,37:118,39:$Va,40:$Vb,41:$Vc,51:113,52:32,53:33,54:77,56:$Vd,62:$Ve,67:95,69:63,70:$Vf,72:54,73:55,74:20,75:21,76:22,77:23,78:24,79:25,80:26,81:27,82:28,83:29,84:30,85:34,88:$Vg,89:119,90:$Vh,91:$Vi,93:$Vj,97:116,98:$Vk,99:133,100:$Vl,101:46,104:99,105:$Vm,107:134,108:$Vn,113:$Vo,114:$Vp,115:$Vq,116:$Vr,117:$Vs,118:$Vt,119:$Vu,120:$Vv,121:$Vw,122:60,123:$Vx,126:$Vy,131:117,134:18,135:$Vz,139:$VA,151:$VB,152:$VC,163:$VD,188:$VE,203:87,204:$VF,206:59,207:52,211:$VG,213:$VH,214:$VI,215:65,216:66,217:67,218:$VJ,219:$VK,223:$VL,224:$VM,232:58,238:97,239:96,245:35,246:$VN,247:$VO,248:$VP,250:76,251:120,257:53,258:$VQ,259:62,260:$VR,261:56,262:$VS,263:61,264:$VT,268:85,269:$VU,270:$VV,295:$VW,296:$VX,302:$VY,308:$VZ,309:80,310:$V_,312:$V$,313:81,314:$V01,315:82,317:125,318:$V11,319:$V21,320:126,328:$V31,332:78,333:$V41,337:$V51,338:$V61,339:$V71,340:$V81,341:$V91},{8:169,16:8,17:9,18:10,19:11,20:12,21:13,22:14,23:15,24:$V3,25:$V4,26:39,27:40,28:41,29:$V5,30:$V6,33:$V7,34:$V8,35:31,36:$V9,37:118,39:$Va,40:$Vb,41:$Vc,51:113,52:32,53:33,54:77,56:$Vd,62:$Ve,67:95,69:63,70:$Vf,72:54,73:55,74:20,75:21,76:22,77:23,78:24,79:25,80:26,81:27,82:28,83:29,84:30,85:34,88:$Vg,89:119,90:$Vh,91:$Vi,93:$Vj,97:116,98:$Vk,99:133,100:$Vl,101:46,104:99,105:$Vm,107:134,108:$Vn,113:$Vo,114:$Vp,115:$Vq,116:$Vr,117:$Vs,118:$Vt,119:$Vu,120:$Vv,121:$Vw,122:60,123:$Vx,126:$Vy,131:117,134:18,135:$Vz,139:$VA,151:$VB,152:$VC,163:$VD,188:$VE,203:87,204:$VF,206:59,207:52,211:$VG,213:$VH,214:$VI,215:65,216:66,217:67,218:$VJ,219:$VK,223:$VL,224:$VM,232:58,238:97,239:96,245:35,246:$VN,247:$VO,248:$VP,250:76,251:120,257:53,258:$VQ,259:62,260:$VR,261:56,262:$VS,263:61,264:$VT,268:85,269:$VU,270:$VV,295:$VW,296:$VX,302:$VY,308:$VZ,309:80,310:$V_,312:$V$,313: