UNPKG

js-sql-parser

Version:

> parse / stringify sql (select grammar) in js.

523 lines (510 loc) 82.8 kB
/* parser generated by jison 0.4.18 */ /* Returns a Parser object of the following structure: Parser: { yy: {} } Parser.prototype: { yy: {}, trace: function(), symbols_: {associative list: name ==> number}, terminals_: {associative list: number ==> name}, productions_: [...], performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$), table: [...], defaultActions: {...}, parseError: function(str, hash), parse: function(input), lexer: { EOF: 1, parseError: function(str, hash), setInput: function(input), input: function(), unput: function(str), more: function(), less: function(n), pastInput: function(), upcomingInput: function(), showPosition: function(), test_match: function(regex_match_array, rule_index), next: function(), lex: function(), begin: function(condition), popState: function(), _currentRules: function(), topState: function(), pushState: function(condition), options: { ranges: boolean (optional: true ==> token location info will include a .range[] member) flex: boolean (optional: true ==> flex-like lexing behaviour where the rules are tested exhaustively to find the longest match) backtrack_lexer: boolean (optional: true ==> lexer regexes are tested in order and for each matching regex the action code is invoked; the lexer terminates the scan when a token is returned by the action code) }, performAction: function(yy, yy_, $avoiding_name_collisions, YY_START), rules: [...], conditions: {associative list: name ==> set}, } } token location info (@$, _$, etc.): { first_line: n, last_line: n, first_column: n, last_column: n, range: [start_number, end_number] (where the numbers are indexes into the input string, regular zero-based) } the parseError function receives a 'hash' object with these members for lexer and parser errors: { text: (matched text) token: (the produced terminal token, if any) line: (yylineno) } while parser (grammar) errors will also provide these members, i.e. parser errors deliver a superset of attributes: { loc: (yylloc) expected: (string describing the set of expected tokens) recoverable: (boolean: TRUE when the parser has a error recovery rule available for this particular error) } */ var sqlParser = (function(){ var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,8],$V1=[1,4],$V2=[2,4],$V3=[1,11],$V4=[1,10],$V5=[2,16],$V6=[1,14],$V7=[1,15],$V8=[1,16],$V9=[6,8],$Va=[2,146],$Vb=[1,19],$Vc=[1,20],$Vd=[16,33,35,36,37,38,39,40,41,42,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$Ve=[16,18,32,33,35,36,37,38,39,40,41,42,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$Vf=[2,160],$Vg=[1,29],$Vh=[6,8,14,17,146,150,152,154],$Vi=[1,42],$Vj=[1,60],$Vk=[1,52],$Vl=[1,59],$Vm=[1,61],$Vn=[1,62],$Vo=[1,63],$Vp=[1,64],$Vq=[1,65],$Vr=[1,58],$Vs=[1,53],$Vt=[1,54],$Vu=[1,55],$Vv=[1,56],$Vw=[1,57],$Vx=[1,43],$Vy=[1,44],$Vz=[1,45],$VA=[1,34],$VB=[1,66],$VC=[16,35,36,37,38,39,40,41,42,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$VD=[6,8,14,17,150,152,154],$VE=[2,143],$VF=[1,75],$VG=[1,76],$VH=[6,8,14,17,43,133,138,144,146,150,152,154],$VI=[1,81],$VJ=[1,78],$VK=[1,79],$VL=[1,80],$VM=[1,82],$VN=[6,8,14,17,36,43,49,50,51,71,72,74,77,89,107,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],$VO=[6,8,14,17,34,36,43,49,50,51,71,72,74,77,89,107,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],$VP=[1,103],$VQ=[1,101],$VR=[1,102],$VS=[1,97],$VT=[1,98],$VU=[1,99],$VV=[1,100],$VW=[1,104],$VX=[1,105],$VY=[1,106],$VZ=[1,107],$V_=[1,108],$V$=[1,109],$V01=[2,103],$V11=[6,8,14,17,34,36,43,45,49,50,51,71,72,74,77,79,81,89,91,92,93,94,95,96,97,98,99,101,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],$V21=[6,8,14,17,34,36,43,45,49,50,51,71,72,74,77,79,81,89,91,92,93,94,95,96,97,98,99,101,103,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],$V31=[1,110],$V41=[1,117],$V51=[2,64],$V61=[1,118],$V71=[16,35,37,38,39,40,41,42,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$V81=[16,29,35,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,119,195],$V91=[1,164],$Va1=[17,43],$Vb1=[2,59],$Vc1=[1,173],$Vd1=[1,171],$Ve1=[1,172],$Vf1=[6,8,138,146],$Vg1=[16,35,38,39,40,41,42,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$Vh1=[6,8,14,17,138,144,146,150,152,154],$Vi1=[6,8,14,17,36,43,49,50,51,71,72,74,77,89,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],$Vj1=[6,8,14,17,34,36,43,49,50,51,71,72,74,77,89,91,92,93,94,99,101,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],$Vk1=[6,8,14,17,34,36,43,49,50,51,71,72,74,77,79,81,89,91,92,93,94,99,101,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],$Vl1=[16,35,39,40,41,42,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$Vm1=[16,35,40,41,42,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$Vn1=[16,35,42,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$Vo1=[71,74,77],$Vp1=[16,35,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$Vq1=[1,233],$Vr1=[1,234],$Vs1=[6,8,14,17],$Vt1=[6,8,14,17,43,157],$Vu1=[1,251],$Vv1=[1,247],$Vw1=[2,197],$Vx1=[1,256],$Vy1=[1,257],$Vz1=[6,8,14,17,43,129,135,138,144,146,150,152,154,182],$VA1=[1,259],$VB1=[1,262],$VC1=[1,263],$VD1=[1,264],$VE1=[1,265],$VF1=[2,174],$VG1=[1,261],$VH1=[6,8,14,17,36,43,89,129,135,138,144,146,150,152,154,164,165,167,168,173,177,179,180,182],$VI1=[6,8,14,17,36,43,89,129,135,138,144,146,150,152,154,164,165,167,168,173,177,179,180,182,192,193,194],$VJ1=[2,199],$VK1=[1,271],$VL1=[6,8,14,17,135,138,144,146,150,152,154],$VM1=[1,280],$VN1=[2,179],$VO1=[170,173],$VP1=[2,210],$VQ1=[1,290],$VR1=[1,291],$VS1=[1,292],$VT1=[1,302],$VU1=[1,311],$VV1=[1,312],$VW1=[6,8,14,17,138,146,150,152,154],$VX1=[1,322],$VY1=[2,204],$VZ1=[1,328],$V_1=[16,152],$V$1=[6,8,14,17,152,154],$V02=[1,354]; var parser = {trace: function trace () { }, yy: {}, symbols_: {"error":2,"main":3,"selectClause":4,"semicolonOpt":5,"EOF":6,"unionClause":7,";":8,"unionClauseNotParenthesized":9,"unionClauseParenthesized":10,"order_by_opt":11,"limit_opt":12,"selectClauseParenthesized":13,"UNION":14,"distinctOpt":15,"(":16,")":17,"SELECT":18,"highPriorityOpt":19,"maxStateMentTimeOpt":20,"straightJoinOpt":21,"sqlSmallResultOpt":22,"sqlBigResultOpt":23,"sqlBufferResultOpt":24,"sqlCacheOpt":25,"sqlCalcFoundRowsOpt":26,"selectExprList":27,"selectDataSetOpt":28,"ALL":29,"DISTINCT":30,"DISTINCTROW":31,"HIGH_PRIORITY":32,"MAX_STATEMENT_TIME":33,"=":34,"NUMERIC":35,"STRAIGHT_JOIN":36,"SQL_SMALL_RESULT":37,"SQL_BIG_RESULT":38,"SQL_BUFFER_RESULT":39,"SQL_CACHE":40,"SQL_NO_CACHE":41,"SQL_CALC_FOUND_ROWS":42,",":43,"selectExpr":44,"*":45,"SELECT_EXPR_STAR":46,"expr":47,"selectExprAliasOpt":48,"AS":49,"IDENTIFIER":50,"STRING":51,"string":52,"number":53,"EXPONENT_NUMERIC":54,"HEX_NUMERIC":55,"boolean":56,"TRUE":57,"FALSE":58,"null":59,"NULL":60,"literal":61,"place_holder":62,"function_call":63,"function_call_param_list":64,"function_call_param":65,"identifier":66,"DOT":67,"identifier_list":68,"case_expr_opt":69,"when_then_list":70,"WHEN":71,"THEN":72,"case_when_else":73,"ELSE":74,"case_when":75,"CASE":76,"END":77,"simple_expr_prefix":78,"+":79,"simple_expr":80,"-":81,"~":82,"!":83,"BINARY":84,"expr_list":85,"ROW":86,"EXISTS":87,"{":88,"}":89,"bit_expr":90,"|":91,"&":92,"<<":93,">>":94,"/":95,"DIV":96,"MOD":97,"%":98,"^":99,"not_opt":100,"NOT":101,"escape_opt":102,"ESCAPE":103,"predicate":104,"IN":105,"BETWEEN":106,"AND":107,"SOUNDS":108,"LIKE":109,"REGEXP":110,"comparison_operator":111,">=":112,">":113,"<=":114,"<":115,"<>":116,"!=":117,"sub_query_data_set_opt":118,"ANY":119,"boolean_primary":120,"IS":121,"boolean_extra":122,"UNKNOWN":123,"&&":124,"||":125,"OR":126,"XOR":127,"where_opt":128,"WHERE":129,"group_by_opt":130,"group_by":131,"roll_up_opt":132,"WITH":133,"ROLLUP":134,"GROUP_BY":135,"group_by_order_by_item_list":136,"order_by":137,"ORDER_BY":138,"group_by_order_by_item":139,"sort_opt":140,"ASC":141,"DESC":142,"having_opt":143,"HAVING":144,"limit":145,"LIMIT":146,"OFFSET":147,"procedure_opt":148,"procedure":149,"PROCEDURE":150,"for_update_lock_in_share_mode_opt":151,"FOR":152,"UPDATE":153,"LOCK":154,"SHARE":155,"MODE":156,"FROM":157,"table_references":158,"partitionOpt":159,"escaped_table_reference":160,"table_reference":161,"OJ":162,"join_inner_cross":163,"INNER":164,"CROSS":165,"left_right":166,"LEFT":167,"RIGHT":168,"out_opt":169,"OUTER":170,"left_right_out_opt":171,"join_table":172,"JOIN":173,"table_factor":174,"join_condition":175,"on_join_condition":176,"NATURAL":177,"join_condition_opt":178,"ON":179,"USING":180,"partition_names":181,"PARTITION":182,"aliasOpt":183,"index_or_key":184,"INDEX":185,"KEY":186,"for_opt":187,"identifier_list_opt":188,"index_hint_list_opt":189,"index_hint_list":190,"index_hint":191,"USE":192,"IGNORE":193,"FORCE":194,"PLACE_HOLDER":195,"$accept":0,"$end":1}, terminals_: {2:"error",6:"EOF",8:";",14:"UNION",16:"(",17:")",18:"SELECT",29:"ALL",30:"DISTINCT",31:"DISTINCTROW",32:"HIGH_PRIORITY",33:"MAX_STATEMENT_TIME",34:"=",35:"NUMERIC",36:"STRAIGHT_JOIN",37:"SQL_SMALL_RESULT",38:"SQL_BIG_RESULT",39:"SQL_BUFFER_RESULT",40:"SQL_CACHE",41:"SQL_NO_CACHE",42:"SQL_CALC_FOUND_ROWS",43:",",45:"*",46:"SELECT_EXPR_STAR",49:"AS",50:"IDENTIFIER",51:"STRING",54:"EXPONENT_NUMERIC",55:"HEX_NUMERIC",57:"TRUE",58:"FALSE",60:"NULL",67:"DOT",71:"WHEN",72:"THEN",74:"ELSE",76:"CASE",77:"END",79:"+",81:"-",82:"~",83:"!",84:"BINARY",86:"ROW",87:"EXISTS",88:"{",89:"}",91:"|",92:"&",93:"<<",94:">>",95:"/",96:"DIV",97:"MOD",98:"%",99:"^",101:"NOT",103:"ESCAPE",105:"IN",106:"BETWEEN",107:"AND",108:"SOUNDS",109:"LIKE",110:"REGEXP",112:">=",113:">",114:"<=",115:"<",116:"<>",117:"!=",119:"ANY",121:"IS",123:"UNKNOWN",124:"&&",125:"||",126:"OR",127:"XOR",129:"WHERE",133:"WITH",134:"ROLLUP",135:"GROUP_BY",138:"ORDER_BY",141:"ASC",142:"DESC",144:"HAVING",146:"LIMIT",147:"OFFSET",150:"PROCEDURE",152:"FOR",153:"UPDATE",154:"LOCK",155:"SHARE",156:"MODE",157:"FROM",162:"OJ",164:"INNER",165:"CROSS",167:"LEFT",168:"RIGHT",170:"OUTER",173:"JOIN",177:"NATURAL",179:"ON",180:"USING",182:"PARTITION",185:"INDEX",186:"KEY",192:"USE",193:"IGNORE",194:"FORCE",195:"PLACE_HOLDER"}, productions_: [0,[3,3],[3,3],[5,1],[5,0],[7,1],[7,3],[10,4],[10,4],[13,3],[9,4],[9,4],[4,12],[15,1],[15,1],[15,1],[15,0],[19,1],[19,0],[20,3],[20,0],[21,1],[21,0],[22,1],[22,0],[23,1],[23,0],[24,1],[24,0],[25,0],[25,1],[25,1],[26,1],[26,0],[27,3],[27,1],[44,1],[44,1],[44,2],[48,0],[48,2],[48,1],[48,2],[48,1],[52,1],[53,1],[53,1],[53,1],[56,1],[56,1],[59,1],[61,1],[61,1],[61,1],[61,1],[61,1],[63,4],[64,3],[64,1],[65,0],[65,1],[65,1],[65,2],[65,1],[66,1],[66,3],[68,1],[68,3],[69,0],[69,1],[70,4],[70,5],[73,0],[73,2],[75,5],[78,2],[78,2],[78,2],[78,2],[78,2],[80,1],[80,1],[80,1],[80,1],[80,3],[80,4],[80,3],[80,4],[80,4],[80,1],[90,1],[90,3],[90,3],[90,3],[90,3],[90,3],[90,3],[90,3],[90,3],[90,3],[90,3],[90,3],[90,3],[100,0],[100,1],[102,0],[102,2],[104,1],[104,6],[104,6],[104,6],[104,4],[104,5],[104,4],[111,1],[111,1],[111,1],[111,1],[111,1],[111,1],[111,1],[118,1],[118,1],[120,1],[120,4],[120,3],[120,6],[122,1],[122,1],[47,1],[47,4],[47,2],[47,3],[47,3],[47,3],[47,3],[47,3],[85,1],[85,3],[128,0],[128,2],[130,0],[130,1],[132,0],[132,2],[131,3],[11,0],[11,1],[137,3],[136,1],[136,3],[139,2],[140,0],[140,1],[140,1],[143,0],[143,2],[145,2],[145,4],[145,4],[12,0],[12,1],[148,0],[148,1],[149,2],[151,0],[151,2],[151,4],[28,0],[28,10],[158,1],[158,3],[160,1],[160,4],[163,0],[163,1],[163,1],[166,1],[166,1],[169,0],[169,1],[171,0],[171,2],[172,4],[172,5],[172,4],[172,6],[172,5],[178,0],[178,1],[176,2],[175,1],[175,4],[161,1],[161,1],[181,1],[181,3],[159,0],[159,4],[183,0],[183,2],[183,1],[184,1],[184,1],[187,0],[187,2],[187,2],[187,2],[188,0],[188,1],[189,0],[189,1],[190,1],[190,3],[191,6],[191,6],[191,6],[174,4],[174,4],[174,3],[174,3],[62,1]], performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) { /* this == yyval */ var $0 = $$.length - 1; switch (yystate) { case 1: case 2: return {nodeType: 'Main', value: $$[$0-2], hasSemicolon: $$[$0-1]}; break; case 3: case 144: this.$ = true break; case 4: this.$ = false break; case 5: case 13: case 14: case 15: case 17: case 19: case 21: case 23: case 25: case 27: case 30: case 31: case 32: case 51: case 52: case 53: case 54: case 55: case 60: case 61: case 63: case 69: case 73: case 80: case 81: case 82: case 83: case 89: case 90: case 104: case 106: case 107: case 114: case 115: case 116: case 117: case 118: case 119: case 120: case 121: case 122: case 123: case 127: case 129: case 140: case 142: case 147: case 153: case 154: case 156: case 161: case 163: case 164: case 175: case 176: case 177: case 178: case 180: case 189: case 191: case 193: case 194: case 202: case 203: case 209: case 211: this.$ = $$[$0] break; case 6: this.$ = $$[$0-2], this.$.orderBy = $$[$0-1], this.$.limit = $$[$0]; break; case 7: case 8: this.$ = { type: 'Union', left: $$[$0-3], distinctOpt: $$[$0-1], right: $$[$0] }; break; case 9: this.$ = { type: 'SelectParenthesized', value: $$[$0-1] }; break; case 10: case 11: this.$ = { type: 'Union', left: $$[$0-3], distinctOpt: $$[$0-1], right: $$[$0] } break; case 12: this.$ = { type: 'Select', distinctOpt: $$[$0-10], highPriorityOpt: $$[$0-9], maxStateMentTimeOpt: $$[$0-8], straightJoinOpt: $$[$0-7], sqlSmallResultOpt: $$[$0-6], sqlBigResultOpt: $$[$0-5], sqlBufferResultOpt: $$[$0-4], sqlCacheOpt: $$[$0-3], sqlCalcFoundRowsOpt: $$[$0-2], selectItems: $$[$0-1], from: $$[$0].from, partition: $$[$0].partition, where: $$[$0].where, groupBy: $$[$0].groupBy, having: $$[$0].having, orderBy: $$[$0].orderBy, limit: $$[$0].limit, procedure: $$[$0].procedure, updateLockMode: $$[$0].updateLockMode } break; case 16: case 18: case 20: case 22: case 24: case 26: case 28: case 29: case 33: case 59: case 68: case 72: case 103: case 105: case 139: case 141: case 143: case 146: case 152: case 155: case 160: case 162: case 165: case 174: case 179: case 188: case 197: case 204: case 208: case 210: this.$ = null break; case 34: $$[$0-2].value.push($$[$0]); break; case 35: this.$ = { type: 'SelectExpr', value: [ $$[$0] ] } break; case 36: case 37: case 64: this.$ = { type: 'Identifier', value: $$[$0] } break; case 38: this.$ = $$[$0-1]; this.$.alias = $$[$0].alias; this.$.hasAs = $$[$0].hasAs; break; case 39: case 199: this.$ = {alias: null, hasAs: null} break; case 40: case 42: this.$ = {alias: $$[$0], hasAs: true} break; case 41: this.$ = {alias: $$[$0], hasAs: false} break; case 43: this.$ = {alias: $$[$01], hasAs: false} break; case 44: this.$ = { type: 'String', value: $$[$0] } break; case 45: case 46: case 47: this.$ = { type: 'Number', value: $$[$0] } break; case 48: this.$ = { type: 'Boolean', value: 'TRUE' } break; case 49: this.$ = { type: 'Boolean', value: 'FALSE' } break; case 50: this.$ = { type: 'Null', value: 'null' } break; case 56: this.$ = {type: 'FunctionCall', name: $$[$0-3], params: $$[$0-1]} break; case 57: $$[$0-2].push($$[$0]); this.$ = $$[$0-2]; break; case 58: this.$ = [$$[$0]]; break; case 62: this.$ = { type: 'FunctionCallParam', distinctOpt: $$[$0-1], value: $$[$0] } break; case 65: this.$ = $$[$0-2]; $$[$0-2].value += '.' + $$[$0] break; case 66: this.$ = { type: 'IdentifierList', value: [ $$[$0] ] } break; case 67: case 171: this.$ = $$[$0-2]; $$[$0-2].value.push($$[$0]); break; case 70: this.$ = { type: 'WhenThenList', value: [ { when: $$[$0-2], then: $$[$0] } ] }; break; case 71: this.$ = $$[$0-4]; this.$.value.push({ when: $$[$0-2], then: $$[$0] }); break; case 74: this.$ = { type: 'CaseWhen', caseExprOpt: $$[$0-3], whenThenList: $$[$0-2], else: $$[$0-1] } break; case 75: case 76: case 77: case 78: case 79: this.$ = { type: 'Prefix', prefix: $$[$0-1], value: $$[$0] } break; case 84: this.$ = { type: 'SimpleExprParentheses', value: $$[$0-1] } break; case 85: this.$ = { type: 'SimpleExprParentheses', value: $$[$0-2], hasRow: true } break; case 86: this.$ = { type: 'SubQuery', value: $$[$0-1] } break; case 87: this.$ = { type: 'SubQuery', value: $$[$0-1], hasExists: true } break; case 88: this.$ = { type: 'IdentifierExpr', identifier: $$[$0-2], value: $$[$0-1] } break; case 91: this.$ = { type: 'BitExpression', operator: '|', left: $$[$0-2], right: $$[$0] } break; case 92: this.$ = { type: 'BitExpression', operator: '&', left: $$[$0-2], right: $$[$0] } break; case 93: this.$ = { type: 'BitExpression', operator: '<<', left: $$[$0-2], right: $$[$0] } break; case 94: this.$ = { type: 'BitExpression', operator: '>>', left: $$[$0-2], right: $$[$0] } break; case 95: this.$ = { type: 'BitExpression', operator: '+', left: $$[$0-2], right: $$[$0] } break; case 96: this.$ = { type: 'BitExpression', operator: '-', left: $$[$0-2], right: $$[$0] } break; case 97: this.$ = { type: 'BitExpression', operator: '*', left: $$[$0-2], right: $$[$0] } break; case 98: this.$ = { type: 'BitExpression', operator: '/', left: $$[$0-2], right: $$[$0] } break; case 99: this.$ = { type: 'BitExpression', operator: 'DIV', left: $$[$0-2], right: $$[$0] } break; case 100: this.$ = { type: 'BitExpression', operator: 'MOD', left: $$[$0-2], right: $$[$0] } break; case 101: this.$ = { type: 'BitExpression', operator: '%', left: $$[$0-2], right: $$[$0] } break; case 102: this.$ = { type: 'BitExpression', operator: '^', left: $$[$0-2], right: $$[$0] } break; case 108: this.$ = { type: 'InSubQueryPredicate', hasNot: $$[$0-4], left: $$[$0-5] ,right: $$[$0-1] } break; case 109: this.$ = { type: 'InExpressionListPredicate', hasNot: $$[$0-4], left: $$[$0-5], right: $$[$0-1] } break; case 110: this.$ = { type: 'BetweenPredicate', hasNot: $$[$0-4], left: $$[$0-5], right: { left: $$[$0-2], right: $$[$0] } } break; case 111: this.$ = { type: 'SoundsLikePredicate', hasNot: false, left: $$[$0-3], right: $$[$0] } break; case 112: this.$ = { type: 'LikePredicate', hasNot: $$[$0-3], left: $$[$0-4], right: $$[$0-1], escape: $$[$0] } break; case 113: this.$ = { type: 'RegexpPredicate', hasNot: $$[$0-2], left: $$[$0-3], right: $$[$0] } break; case 124: this.$ = { type: 'IsNullBooleanPrimary', hasNot: $$[$0-1] , value: $$[$0-3] } break; case 125: this.$ = { type: 'ComparisonBooleanPrimary', left: $$[$0-2], operator: $$[$0-1], right: $$[$0] } break; case 126: this.$ = { type: 'ComparisonSubQueryBooleanPrimary', operator: $$[$0-4], subQueryOpt: $$[$0-3], left: $$[$0-5], right: $$[$0-1] } break; case 128: this.$ = { type: 'BooleanExtra', value: $$[$0] } break; case 130: this.$ = { type: 'IsExpression', hasNot: $$[$0-1], left: $$[$0-3], right: $$[$0] } break; case 131: this.$ = { type: 'NotExpression', value: $$[$0] } break; case 132: case 135: this.$ = { type: 'AndExpression', operator: $$[$0-1], left: $$[$0-2], right: $$[$0] } break; case 133: case 134: this.$ = { type: 'OrExpression', operator: $$[$0-1], left: $$[$0-2], right: $$[$0] } break; case 136: this.$ = { type: 'XORExpression', left: $$[$0-2], right: $$[$0] } break; case 137: this.$ = { type: 'ExpressionList', value: [ $$[$0] ] } break; case 138: case 213: this.$ = $$[$0-2]; this.$.value.push($$[$0]); break; case 145: this.$ = { type: 'GroupBy', value: $$[$0-1], rollUp: $$[$0] } break; case 148: this.$ = { type: 'OrderBy', value: $$[$0-1], rollUp: $$[$0] } break; case 149: case 195: this.$ = [ $$[$0] ] break; case 150: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]); break; case 151: this.$ = { type: 'GroupByOrderByItem', value: $$[$0-1], sortOpt: $$[$0] } break; case 157: this.$ = { type: 'Limit', value: [ $$[$0] ] } break; case 158: this.$ = { type: 'Limit', value: [ $$[$0-2], $$[$0] ] } break; case 159: this.$ = { type: 'Limit', value: [ $$[$0], $$[$0-2] ], offsetMode: true } break; case 166: this.$ = $$[$0-1] + ' ' + $$[$0] break; case 167: this.$ = $$[$0-3] + ' ' + $$[$0-2] + ' ' + $$[$0-1] + ' ' + $$[$0] break; case 168: this.$ = {} break; case 169: this.$ = { from: $$[$0-8], partition: $$[$0-7], where: $$[$0-6], groupBy: $$[$0-5], having: $$[$0-4], orderBy: $$[$0-3], limit: $$[$0-2], procedure: $$[$0-1], updateLockMode: $$[$0] } break; case 170: this.$ = { type: 'TableReferences', value: [ $$[$0] ] } break; case 172: this.$ = { type: 'TableReference', value: $$[$0] } break; case 173: this.$ = { type: 'TableReference', hasOj: true, value: $$[$0-1] } break; case 181: this.$ = { leftRight: null, outOpt: null } break; case 182: this.$ = { leftRight: $$[$0-1], outOpt: $$[$0] } break; case 183: this.$ = { type: 'InnerCrossJoinTable', innerCrossOpt: $$[$0-2], left: $$[$0-3], right: $$[$0], condition: null } break; case 184: this.$ = { type: 'InnerCrossJoinTable', innerCrossOpt: $$[$0-3], left: $$[$0-4], right: $$[$0-1], condition: $$[$0] } break; case 185: this.$ = { type: 'StraightJoinTable', left: $$[$0-3], right: $$[$0-1], condition: $$[$0] } break; case 186: this.$ = { type: 'LeftRightJoinTable', leftRight: $$[$0-4], outOpt: $$[$0-3], left: $$[$0-5], right: $$[$0-1], condition: $$[$0] } break; case 187: this.$ = { type: 'NaturalJoinTable', leftRight: $$[$0-2].leftRight, outOpt: $$[$0-2].outOpt, left: $$[$0-4], right: $$[$0] } break; case 190: this.$ = { type: 'OnJoinCondition', value: $$[$0] } break; case 192: this.$ = { type: 'UsingJoinCondition', value: $$[$0-1] } break; case 196: this.$ = $$[$0-2]; $$[$0-2].push($$[$0]) break; case 198: this.$ = { type: 'Partitions', value: $$[$0-1] } break; case 200: this.$ = { hasAs: true, alias: $$[$0] } break; case 201: this.$ = { hasAs: false, alias: $$[$0] } break; case 205: case 206: case 207: this.$ = { type: 'ForOptIndexHint', value: $$[$0] } break; case 212: this.$ = { type: 'IndexHintList', value: [ $$[$0] ] } break; case 214: this.$ = { type: 'UseIndexHint', value: $$[$0-1], forOpt: $$[$0-3], indexOrKey: $$[$0-4] } break; case 215: this.$ = { type: 'IgnoreIndexHint', value: $$[$0-1], forOpt: $$[$0-3], indexOrKey: $$[$0-4] } break; case 216: this.$ = { type: 'ForceIndexHint', value: $$[$0-1], forOpt: $$[$0-3], indexOrKey: $$[$0-4] } break; case 217: this.$ = { type: 'TableFactor', value: $$[$0-3], partition: $$[$0-2], alias: $$[$0-1].alias, hasAs: $$[$0-1].hasAs, indexHintOpt: $$[$0] } break; case 218: this.$ = { type: 'TableFactor', value: { type: 'SubQuery', value: $$[$0-2] }, alias: $$[$0].alias, hasAs: $$[$0].hasAs} break; case 219: this.$ = $$[$0-1]; this.$.hasParentheses = true break; case 220: this.$ = { type: 'TableFactor', value: $$[$0-2], alias: $$[$0-1].alias, hasAs: $$[$0-1].hasAs, indexHintOpt: $$[$0] } break; case 221: this.$ = { type: 'PlaceHolder', value: $$[$0], param: $$[$0].slice(2, -1)} break; } }, table: [{3:1,4:2,7:3,9:5,10:6,13:7,16:$V0,18:$V1},{1:[3]},{5:9,6:$V2,8:$V3,14:$V4},{5:12,6:$V2,8:$V3},o([16,32,33,35,36,37,38,39,40,41,42,45,46,50,51,54,55,57,58,60,76,79,81,82,83,84,86,87,88,101,195],$V5,{15:13,29:$V6,30:$V7,31:$V8}),o($V9,[2,5]),o([6,8,146],$Va,{11:17,137:18,138:$Vb}),{14:$Vc},{4:21,18:$V1},{6:[1,22]},{15:23,18:$V5,29:$V6,30:$V7,31:$V8},{6:[2,3]},{6:[1,24]},o($Vd,[2,18],{19:25,32:[1,26]}),o($Ve,[2,13]),o($Ve,[2,14]),o($Ve,[2,15]),o($V9,$Vf,{12:27,145:28,146:$Vg}),o($Vh,[2,147]),{16:$Vi,35:$Vj,47:32,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,136:30,139:31,195:$VB},{15:67,16:$V5,29:$V6,30:$V7,31:$V8},{17:[1,68]},{1:[2,1]},{4:69,9:70,18:$V1},{1:[2,2]},o($VC,[2,20],{20:71,33:[1,72]}),o($Vd,[2,17]),o($V9,[2,6]),o($VD,[2,161]),{35:[1,73]},o($Vh,$VE,{132:74,43:$VF,133:$VG}),o($VH,[2,149]),o($VH,[2,152],{140:77,107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM,141:[1,83],142:[1,84]}),o($VN,[2,129],{111:86,34:[1,87],112:[1,88],113:[1,89],114:[1,90],115:[1,91],116:[1,92],117:[1,93],121:[1,85]}),{16:$Vi,35:$Vj,47:94,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($VO,[2,123]),o($VO,[2,107],{100:95,45:$VP,79:$VQ,81:$VR,91:$VS,92:$VT,93:$VU,94:$VV,95:$VW,96:$VX,97:$VY,98:$VZ,99:$V_,101:$V$,105:$V01,106:$V01,109:$V01,110:$V01,108:[1,96]}),o($V11,[2,90]),o($V21,[2,80]),o($V21,[2,81],{67:$V31}),o($V21,[2,82]),o($V21,[2,83]),{4:112,16:$Vi,18:$V1,35:$Vj,47:113,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,85:111,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{16:[1,114]},{16:[1,115]},{50:$V41,66:116},o($V21,[2,89]),o($V21,[2,51]),o($V21,[2,52]),o($V21,[2,53]),o($V21,[2,54]),o($V21,[2,55]),o([6,8,14,17,34,36,43,45,49,50,51,67,71,72,74,77,79,81,89,91,92,93,94,95,96,97,98,99,101,103,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182,192,193,194],$V51,{16:$V61}),{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:119,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:120,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:121,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:122,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:123,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,195:$VB},{16:$Vi,35:$Vj,47:125,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,69:124,71:[2,68],75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($V21,[2,44]),o($V21,[2,45]),o($V21,[2,46]),o($V21,[2,47]),o($V21,[2,48]),o($V21,[2,49]),o($V21,[2,50]),o($V21,[2,221]),{10:127,13:126,16:$V0},o([6,8,14,138,146],[2,9]),o($V9,[2,10],{14:$V4}),o($V9,[2,11]),o($V71,[2,22],{21:128,36:[1,129]}),{34:[1,130]},o($VD,[2,157],{43:[1,131],147:[1,132]}),o($Vh,[2,148]),{16:$Vi,35:$Vj,47:32,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,139:133,195:$VB},{134:[1,134]},o($VH,[2,151]),{16:$Vi,35:$Vj,47:135,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{16:$Vi,35:$Vj,47:136,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{16:$Vi,35:$Vj,47:137,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{16:$Vi,35:$Vj,47:138,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{16:$Vi,35:$Vj,47:139,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($VH,[2,153]),o($VH,[2,154]),o([57,58,60,123],$V01,{100:140,101:$V$}),{16:$Vi,29:[1,143],35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,104:141,118:142,119:[1,144],195:$VB},o($V81,[2,114]),o($V81,[2,115]),o($V81,[2,116]),o($V81,[2,117]),o($V81,[2,118]),o($V81,[2,119]),o($V81,[2,120]),o($VN,[2,131]),{105:[1,145],106:[1,146],109:[1,147],110:[1,148]},{109:[1,149]},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:150,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:151,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:152,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:153,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:154,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:155,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:156,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:157,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:158,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:159,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:160,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:161,195:$VB},o([57,58,60,105,106,109,110,123],[2,104]),{50:[1,162]},{17:[1,163],43:$V91},{17:[1,165]},o($Va1,[2,137],{107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),{16:$Vi,35:$Vj,47:113,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,85:166,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{4:167,18:$V1},{16:$Vi,35:$Vj,47:168,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,67:$V31,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o([6,8,14,16,17,35,36,43,50,51,54,55,57,58,60,67,76,79,81,82,83,84,86,87,88,89,101,129,135,138,144,146,150,152,154,164,165,167,168,173,177,179,180,182,192,193,194,195],$V51),o($Va1,$Vb1,{120:33,104:35,90:36,80:37,61:38,66:39,63:40,78:41,75:46,52:47,53:48,56:49,59:50,62:51,64:169,65:170,47:174,16:$Vi,30:$Vc1,35:$Vj,45:$Vd1,46:$Ve1,50:$Vk,51:$Vl,54:$Vm,55:$Vn,57:$Vo,58:$Vp,60:$Vq,76:$Vr,79:$Vs,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,101:$VA,195:$VB}),o($V21,[2,75]),o($V21,[2,76]),o($V21,[2,77]),o($V21,[2,78]),o($V21,[2,79]),{70:175,71:[1,176]},{71:[2,69],107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM},o($Vf1,[2,7],{14:$Vc}),o($Vf1,[2,8]),o($Vg1,[2,24],{22:177,37:[1,178]}),o($V71,[2,21]),{35:[1,179]},{35:[1,180]},{35:[1,181]},o($VH,[2,150]),o($Vh1,[2,144]),o($VN,[2,132]),o($Vi1,[2,133],{107:$VI,124:$VJ}),o($Vi1,[2,134],{107:$VI,124:$VJ}),o($VN,[2,135]),o($Vi1,[2,136],{107:$VI,124:$VJ}),{56:184,57:$Vo,58:$Vp,60:[1,183],122:182,123:[1,185]},o($VO,[2,125]),{16:[1,186]},{16:[2,121]},{16:[2,122]},{16:[1,187]},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:188,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:189,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:190,195:$VB},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:191,195:$VB},o([6,8,14,17,34,36,43,49,50,51,71,72,74,77,89,91,101,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],[2,91],{45:$VP,79:$VQ,81:$VR,92:$VT,93:$VU,94:$VV,95:$VW,96:$VX,97:$VY,98:$VZ,99:$V_}),o([6,8,14,17,34,36,43,49,50,51,71,72,74,77,89,91,92,99,101,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],[2,92],{45:$VP,79:$VQ,81:$VR,93:$VU,94:$VV,95:$VW,96:$VX,97:$VY,98:$VZ}),o($Vj1,[2,93],{45:$VP,79:$VQ,81:$VR,95:$VW,96:$VX,97:$VY,98:$VZ}),o($Vj1,[2,94],{45:$VP,79:$VQ,81:$VR,95:$VW,96:$VX,97:$VY,98:$VZ}),o($Vk1,[2,95],{45:$VP,95:$VW,96:$VX,97:$VY,98:$VZ}),o($Vk1,[2,96],{45:$VP,95:$VW,96:$VX,97:$VY,98:$VZ}),o($V11,[2,97]),o($V11,[2,98]),o($V11,[2,99]),o($V11,[2,100]),o($V11,[2,101]),o([6,8,14,17,34,36,43,49,50,51,71,72,74,77,89,91,99,101,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182],[2,102],{45:$VP,79:$VQ,81:$VR,92:$VT,93:$VU,94:$VV,95:$VW,96:$VX,97:$VY,98:$VZ}),o([6,8,14,16,17,34,35,36,43,45,49,50,51,54,55,57,58,60,67,71,72,74,76,77,79,81,82,83,84,86,87,88,89,91,92,93,94,95,96,97,98,99,101,103,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182,192,193,194,195],[2,65]),o($V21,[2,84]),{16:$Vi,35:$Vj,47:192,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($V21,[2,86]),{17:[1,193],43:$V91},{17:[1,194]},{89:[1,195],107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM},{17:[1,196],43:[1,197]},o($Va1,[2,58]),o($Va1,[2,60]),o($Va1,[2,61]),{16:$Vi,35:$Vj,47:198,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($Va1,[2,63],{107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),{71:[1,200],73:199,74:[1,201],77:[2,72]},{16:$Vi,35:$Vj,47:202,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($Vl1,[2,26],{23:203,38:[1,204]}),o($Vg1,[2,23]),o($VC,[2,19]),o($VD,[2,158]),o($VD,[2,159]),o($VN,[2,130]),o($VO,[2,124]),o($VN,[2,127]),o($VN,[2,128]),{4:205,18:$V1},{4:206,16:$Vi,18:$V1,35:$Vj,47:113,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,85:207,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{45:$VP,79:$VQ,81:$VR,91:$VS,92:$VT,93:$VU,94:$VV,95:$VW,96:$VX,97:$VY,98:$VZ,99:$V_,107:[1,208]},o($VO,[2,105],{102:209,103:[1,210]}),o($VO,[2,113],{45:$VP,79:$VQ,81:$VR,91:$VS,92:$VT,93:$VU,94:$VV,95:$VW,96:$VX,97:$VY,98:$VZ,99:$V_}),o($VO,[2,111],{45:$VP,79:$VQ,81:$VR,91:$VS,92:$VT,93:$VU,94:$VV,95:$VW,96:$VX,97:$VY,98:$VZ,99:$V_}),o($Va1,[2,138],{107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),o($V21,[2,85]),o($V21,[2,87]),o($V21,[2,88]),o([6,8,14,17,34,36,43,45,49,50,51,71,72,74,77,79,81,89,91,92,93,94,95,96,97,98,99,101,103,105,106,107,108,109,110,112,113,114,115,116,117,121,124,125,126,127,129,133,135,138,141,142,144,146,150,152,154,157,164,165,167,168,173,177,179,180,182,192,193,194],[2,56]),o($Va1,$Vb1,{120:33,104:35,90:36,80:37,61:38,66:39,63:40,78:41,75:46,52:47,53:48,56:49,59:50,62:51,47:174,65:211,16:$Vi,30:$Vc1,35:$Vj,45:$Vd1,46:$Ve1,50:$Vk,51:$Vl,54:$Vm,55:$Vn,57:$Vo,58:$Vp,60:$Vq,76:$Vr,79:$Vs,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,101:$VA,195:$VB}),o($Va1,[2,62],{107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),{77:[1,212]},{16:$Vi,35:$Vj,47:213,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{16:$Vi,35:$Vj,47:214,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{72:[1,215],107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM},o($Vm1,[2,28],{24:216,39:[1,217]}),o($Vl1,[2,25]),{17:[1,218]},{17:[1,219]},{17:[1,220],43:$V91},{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,104:221,195:$VB},o($VO,[2,112]),{16:$Vi,35:$Vj,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:222,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,195:$VB},o($Va1,[2,57]),o($V21,[2,74]),{72:[1,223],107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM},{77:[2,73],107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM},{16:$Vi,35:$Vj,47:224,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($Vn1,[2,29],{25:225,40:[1,226],41:[1,227]}),o($Vm1,[2,27]),o($VO,[2,126]),o($VO,[2,108]),o($VO,[2,109]),o($VO,[2,110]),o($VO,[2,106]),{16:$Vi,35:$Vj,47:228,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($Vo1,[2,70],{107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),o($Vp1,[2,33],{26:229,42:[1,230]}),o($Vn1,[2,30]),o($Vn1,[2,31]),o($Vo1,[2,71],{107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),{16:$Vi,27:231,35:$Vj,44:232,45:$Vq1,46:$Vr1,47:235,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($Vp1,[2,32]),o($Vs1,[2,168],{28:236,43:[1,237],157:[1,238]}),o($Vt1,[2,35]),o($Vt1,[2,36]),o($Vt1,[2,37]),o($Vt1,[2,39],{48:239,49:[1,240],50:[1,241],51:[1,242],107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),o($Vs1,[2,12]),{16:$Vi,35:$Vj,44:243,45:$Vq1,46:$Vr1,47:235,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{16:$Vu1,50:$Vk,63:252,66:250,88:$Vv1,158:244,160:245,161:246,172:249,174:248},o($Vt1,[2,38]),{50:[1,253],51:[1,254]},o($Vt1,[2,41]),o($Vt1,[2,43]),o($Vt1,[2,34]),o([6,8,14,17,129,135,138,144,146,150,152,154],$Vw1,{159:255,43:$Vx1,182:$Vy1}),o($Vz1,[2,170]),o($Vz1,[2,172],{163:258,166:260,36:$VA1,164:$VB1,165:$VC1,167:$VD1,168:$VE1,173:$VF1,177:$VG1}),{162:[1,266]},o($VH1,[2,193]),o($VH1,[2,194]),o([6,8,14,17,36,43,49,50,89,129,135,138,144,146,150,152,154,164,165,167,168,173,177,179,180,192,193,194],$Vw1,{159:267,67:$V31,182:$Vy1}),{4:268,16:$Vu1,18:$V1,50:$Vk,63:252,66:250,88:$Vv1,158:269,160:245,161:246,172:249,174:248},o($VI1,$VJ1,{183:270,66:272,49:$VK1,50:$V41}),o($Vt1,[2,40]),o($Vt1,[2,42]),o($VL1,[2,139],{128:273,129:[1,274]}),{16:$Vu1,50:$Vk,63:252,66:250,88:$Vv1,160:275,161:246,172:249,174:248},{16:[1,276]},{173:[1,277]},{16:$Vu1,50:$Vk,63:252,66:250,174:278},{169:279,170:$VM1,173:$VN1},{166:282,167:$VD1,168:$VE1,171:281,173:[2,181]},{173:[2,175]},{173:[2,176]},o($VO1,[2,177]),o($VO1,[2,178]),{16:$Vu1,50:$Vk,63:252,66:250,161:283,172:249,174:248},o($VI1,$VJ1,{66:272,183:284,49:$VK1,50:$V41}),{17:[1,285]},{17:[1,286],43:$Vx1},o($VH1,$VP1,{189:287,190:288,191:289,192:$VQ1,193:$VR1,194:$VS1}),{50:$V41,66:293},o($VI1,[2,201],{67:$V31}),o($Vh1,[2,141],{130:294,131:295,135:[1,296]}),{16:$Vi,35:$Vj,47:297,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($Vz1,[2,171]),{50:$V41,66:299,181:298},{16:$Vu1,50:$Vk,63:252,66:250,174:300},{176:301,179:$VT1},{173:[1,303]},{173:[2,180]},{173:[1,304]},{169:305,170:$VM1,173:$VN1},{36:$VA1,89:[1,306],163:258,164:$VB1,165:$VC1,166:260,167:$VD1,168:$VE1,173:$VF1,177:$VG1},o($VH1,$VP1,{190:288,191:289,189:307,192:$VQ1,193:$VR1,194:$VS1}),o($VH1,$VJ1,{66:272,183:308,49:$VK1,50:$V41}),o($VH1,[2,219]),o($VH1,[2,220]),o($VH1,[2,211]),o($VH1,[2,212]),{184:310,185:$VU1,186:$VV1},{184:313,185:$VU1,186:$VV1},{184:314,185:$VU1,186:$VV1},o($VI1,[2,200],{67:$V31}),o($VW1,[2,155],{143:315,144:[1,316]}),o($Vh1,[2,142]),{16:$Vi,35:$Vj,47:32,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,136:317,139:31,195:$VB},o($VL1,[2,140],{107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),{17:[1,318],43:[1,319]},o($Va1,[2,195],{67:$V31}),o([6,8,14,17,36,43,89,129,135,138,144,146,150,152,154,164,165,167,168,173,177,182],[2,183],{175:320,176:321,179:$VT1,180:$VX1}),o($VH1,[2,185]),{16:$Vi,35:$Vj,47:323,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},{16:$Vu1,50:$Vk,63:252,66:250,161:324,172:249,174:248},{16:$Vu1,50:$Vk,63:252,66:250,174:325},{173:[2,182]},o($Vz1,[2,173]),o($VH1,[2,217]),o($VH1,[2,218]),{191:326,192:$VQ1,193:$VR1,194:$VS1},{16:$VY1,152:$VZ1,187:327},o($V_1,[2,202]),o($V_1,[2,203]),{16:$VY1,152:$VZ1,187:329},{16:$VY1,152:$VZ1,187:330},o($Vh,$Va,{137:18,11:331,138:$Vb}),{16:$Vi,35:$Vj,47:332,50:$Vk,51:$Vl,52:47,53:48,54:$Vm,55:$Vn,56:49,57:$Vo,58:$Vp,59:50,60:$Vq,61:38,62:51,63:40,66:39,75:46,76:$Vr,78:41,79:$Vs,80:37,81:$Vt,82:$Vu,83:$Vv,84:$Vw,86:$Vx,87:$Vy,88:$Vz,90:36,101:$VA,104:35,120:33,195:$VB},o($Vh1,$VE,{132:333,43:$VF,133:$VG}),o([6,8,14,17,36,43,49,50,89,129,135,138,144,146,150,152,154,164,165,167,168,173,177,179,180,182,192,193,194],[2,198]),{50:$V41,66:334},o($VH1,[2,184]),o($VH1,[2,191]),{16:[1,335]},o($VH1,[2,190],{107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),{36:$VA1,163:258,164:$VB1,165:$VC1,166:260,167:$VD1,168:$VE1,173:$VF1,175:336,176:321,177:$VG1,179:$VT1,180:$VX1},o($VH1,[2,187]),o($VH1,[2,213]),{16:[1,337]},{135:[1,340],138:[1,339],173:[1,338]},{16:[1,341]},{16:[1,342]},o($VD,$Vf,{145:28,12:343,146:$Vg}),o($VW1,[2,156],{107:$VI,124:$VJ,125:$VK,126:$VL,127:$VM}),o($Vh1,[2,145]),o($Va1,[2,196],{67:$V31}),{50:$V41,66:345,68:344},o($VH1,[2,186]),{17:[2,208],50:$V41,66:345,68:347,188:346},{16:[2,205]},{16:[2,206]},{16:[2,207]},{50:$V41,66:345,68:348},{50:$V41,66:345,68:349},o($V$1,[2,162],{148:350,149:351,150:[1,352]}),{17:[1,353],43:$V02},o($Va1,[2,66],{67:$V31}),{17:[1,355]},{17:[2,209],43:$V02},{17:[1,356],43:$V02},{17:[1,357],43:$V02},o($Vs1,[2,165],{151:358,152:[1,359],154:[1,360]}),o($V$1,[2,163]),{50:[1,362],63:361},o($VH1,[2,192]),{50:$V41,66:363},o($VH1,[2,214]),o($VH1,[2,215]),o($VH1,[2,216]),o($Vs1,[2,169]),{153:[1,364]},{105:[1,365]},o($V$1,[2,164]),{16:$V61},o($Va1,[2,67],{67:$V31}),o($Vs1,[2,166]),{155:[1,366]},{156:[1,367]},o($Vs1,[2,167])], defaultActions: {11:[2,3],22:[2,1],24:[2,2],143:[2,121],144:[2,122],262:[2,175],263:[2,176],280:[2,180],305:[2,182],338:[2,205],339:[2,206],340:[2,207]}, parseError: function parseError (str, hash) { if (hash.recoverable) { this.trace(str); } else { var error = new Error(str); error.hash = hash; throw error; } }, parse: function parse(input) { var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = '', yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; var args = lstack.slice.call(arguments, 1); var lexer = Object.create(this.lexer); var sharedState = { yy: {} }; for (var k in this.yy) { if (Object.prototype.hasOwnProperty.call(this.yy, k)) { sharedState.yy[k] = this.yy[k]; } } lexer.setInput(input, sharedState.yy); sharedState.yy.lexer = lexer; sharedState.yy.parser = this; if (typeof lexer.yylloc == 'undefined') { lexer.yylloc = {}; } var yyloc = lexer.yylloc; lstack.push(yyloc); var ranges = lexer.options && lexer.options.ranges; if (typeof sharedState.yy.parseError === 'function') { this.parseError = sharedState.yy.parseError; } else { this.parseError = Object.getPrototypeOf(this).parseError; } function popStack(n) { stack.length = stack.length - 2 * n; vstack.length = vstack.length - n; lstack.length = lstack.length - n; } _token_stack: var lex = function () { var token; token = lexer.lex() || EOF; if (typeof token !== 'number') { token = self.symbols_[token] || token; } return token; }; var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected; while (true) { state = stack[stack.length - 1]; if (this.defaultActions[state]) { action = this.defaultActions[state]; } else { if (symbol === null || typeof symbol == 'undefined') { symbol = lex(); } action = table[state] && table[state][symbol]; } if (typeof action === 'undefined' || !action.length || !action[0]) { var errStr = ''; expected = []; for (p in table[state]) { if (this.terminals_[p] && p > TERROR) { expected.push('\'' + this.terminals_[p] + '\''); } } if (lexer.showPosition) { errStr = 'Parse error on line ' + (yylineno + 1) + ':\n' + lexer.showPosition() + '\nExpecting ' + expected.join(', ') + ', got \'' + (this.terminals_[symbol] || symbol) + '\''; } else { errStr = 'Parse error on line ' + (yylineno + 1) + ': Unexpected ' + (symbol == EOF ? 'end of input' : '\'' + (this.terminals_[symbol] || symbol) + '\''); } this.parseError(errStr, { text: lexer.match, token: this.terminals_[symbol] || symbol, line: lexer.yylineno, loc: yyloc, expected: expected }); } if (action[0] instanceof Array && action.length > 1) { throw new Error('Parse Error: multiple actions possible at state: ' + state + ', token: ' + symbol); } switch (action[0]) { case 1: stack.push(symbol); vstack.push(lexer.yytext); lstack.push(lexer.yylloc); stack.push(action[1]); symbol = null; if (!preErrorSymbol) { yyleng = lexer.yyleng; yytext = lexer.yytext;