diff --git a/examples/grammars/javascript.cc b/examples/grammars/javascript.cc index 8f0e687b..56a1e155 100644 --- a/examples/grammars/javascript.cc +++ b/examples/grammars/javascript.cc @@ -12,6 +12,10 @@ namespace tree_sitter_examples { return seq({ str("{"), rule, str("}") }); } + static rule_ptr in_brackets(rule_ptr rule) { + return seq({ str("["), rule, str("]") }); + } + static rule_ptr comma_sep(rule_ptr element) { return choice({ seq({ element, repeat(seq({ str(","), element })) }), @@ -90,7 +94,10 @@ namespace tree_sitter_examples { // Expressions { "assignment", seq({ - sym("identifier"), + choice({ + sym("identifier"), + sym("property_access"), + }), str("="), sym("expression") })}, { "function_expression", seq({ @@ -105,8 +112,11 @@ namespace tree_sitter_examples { str(")") }) }, { "property_access", seq({ sym("expression"), - str("."), - sym("identifier") }) }, + choice({ + seq({ + str("."), + sym("identifier") }), + in_brackets(sym("expression")) }) }) }, { "formal_parameters", seq({ str("("), comma_sep(sym("identifier")), diff --git a/examples/parsers/javascript.c b/examples/parsers/javascript.c index c2984b41..4e3b6ee7 100644 --- a/examples/parsers/javascript.c +++ b/examples/parsers/javascript.c @@ -1,6 +1,6 @@ #include "tree_sitter/parser.h" -STATE_COUNT = 507; +STATE_COUNT = 604; SYMBOL_COUNT = 55; enum { @@ -687,6 +687,8 @@ LEX_FN() { ADVANCE(57); if (lookahead == ';') ADVANCE(53); + if (lookahead == '[') + ADVANCE(11); LEX_ERROR(); case 55: START_TOKEN(); @@ -702,6 +704,8 @@ LEX_FN() { ADVANCE(57); if (lookahead == ';') ADVANCE(53); + if (lookahead == '[') + ADVANCE(11); ACCEPT_TOKEN(ts_sym__terminator); case 56: ACCEPT_TOKEN(ts_aux_sym_token3); @@ -755,8 +759,200 @@ LEX_FN() { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(60); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == '[') + ADVANCE(11); + LEX_ERROR(); + case 61: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(61); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == ')') + ADVANCE(62); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == '[') + ADVANCE(11); + LEX_ERROR(); + case 62: + ACCEPT_TOKEN(ts_aux_sym_token4); + case 63: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(63); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == ')') + ADVANCE(62); + if (lookahead == ',') + ADVANCE(64); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == '[') + ADVANCE(11); + LEX_ERROR(); + case 64: + ACCEPT_TOKEN(ts_aux_sym_token7); + case 65: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(65); + if (lookahead == ')') + ADVANCE(62); + LEX_ERROR(); + case 66: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(66); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == ')') + ADVANCE(62); + if (lookahead == ',') + ADVANCE(64); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == '=') + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); + LEX_ERROR(); + case 67: + ACCEPT_TOKEN(ts_aux_sym_token6); + case 68: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(68); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(10); + LEX_ERROR(); + case 69: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(69); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == '[') + ADVANCE(11); + if (lookahead == ']') + ADVANCE(70); + LEX_ERROR(); + case 70: + ACCEPT_TOKEN(ts_aux_sym_token10); + case 71: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(71); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == ',') + ADVANCE(64); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == '[') + ADVANCE(11); + if (lookahead == '}') + ADVANCE(59); + LEX_ERROR(); + case 72: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(72); + if (lookahead == '\n') + ADVANCE(73); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == ';') + ADVANCE(53); + if (lookahead == '=') + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); + LEX_ERROR(); + case 73: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(72); + if (lookahead == '\n') + ADVANCE(73); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == ';') + ADVANCE(53); + if (lookahead == '=') + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); + ACCEPT_TOKEN(ts_sym__terminator); + case 74: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(74); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == ',') + ADVANCE(64); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == '[') + ADVANCE(11); + if (lookahead == ']') + ADVANCE(70); + LEX_ERROR(); + case 75: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(75); + if (lookahead == '}') + ADVANCE(59); + LEX_ERROR(); + case 76: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(76); if (lookahead == '\"') ADVANCE(2); + if (lookahead == ')') + ADVANCE(62); if ('0' <= lookahead && lookahead <= '9') ADVANCE(7); if (('A' <= lookahead && lookahead <= 'Z') || @@ -768,7 +964,7 @@ LEX_FN() { if (lookahead == '[') ADVANCE(11); if (lookahead == 'f') - ADVANCE(61); + ADVANCE(77); if (lookahead == 'n') ADVANCE(33); if (lookahead == 't') @@ -776,7 +972,7 @@ LEX_FN() { if (lookahead == '{') ADVANCE(50); LEX_ERROR(); - case 61: + case 77: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -789,203 +985,42 @@ LEX_FN() { if (lookahead == 'u') ADVANCE(24); ACCEPT_TOKEN(ts_sym_identifier); - case 62: - START_TOKEN(); - if (('\t' <= lookahead && lookahead <= '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(62); - if (lookahead == '(') - ADVANCE(56); - if (lookahead == ')') - ADVANCE(63); - if (lookahead == ',') - ADVANCE(64); - if (lookahead == '.') - ADVANCE(57); - LEX_ERROR(); - case 63: - ACCEPT_TOKEN(ts_aux_sym_token4); - case 64: - ACCEPT_TOKEN(ts_aux_sym_token7); - case 65: - START_TOKEN(); - if (('\t' <= lookahead && lookahead <= '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(65); - if (lookahead == '(') - ADVANCE(56); - if (lookahead == ')') - ADVANCE(63); - if (lookahead == '.') - ADVANCE(57); - LEX_ERROR(); - case 66: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(66); - if (lookahead == ')') - ADVANCE(63); - LEX_ERROR(); - case 67: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(67); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(10); - LEX_ERROR(); - case 68: - START_TOKEN(); - if (('\t' <= lookahead && lookahead <= '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(68); - if (lookahead == '(') - ADVANCE(56); - if (lookahead == ',') - ADVANCE(64); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == '}') - ADVANCE(59); - LEX_ERROR(); - case 69: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(69); - if (lookahead == '\n') - ADVANCE(70); - if (lookahead == ';') - ADVANCE(53); - if (lookahead == '=') - ADVANCE(71); - LEX_ERROR(); - case 70: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(69); - if (lookahead == '\n') - ADVANCE(70); - if (lookahead == ';') - ADVANCE(53); - if (lookahead == '=') - ADVANCE(71); - ACCEPT_TOKEN(ts_sym__terminator); - case 71: - ACCEPT_TOKEN(ts_aux_sym_token6); - case 72: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(72); - if (lookahead == '}') - ADVANCE(59); - LEX_ERROR(); - case 73: - START_TOKEN(); - if (('\t' <= lookahead && lookahead <= '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(73); - if (lookahead == '(') - ADVANCE(56); - if (lookahead == ',') - ADVANCE(64); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == ']') - ADVANCE(74); - LEX_ERROR(); - case 74: - ACCEPT_TOKEN(ts_aux_sym_token10); - case 75: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(75); - if (lookahead == '\n') - ADVANCE(76); - if (lookahead == '(') - ADVANCE(56); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == ':') - ADVANCE(77); - if (lookahead == ';') - ADVANCE(53); - if (lookahead == '=') - ADVANCE(71); - LEX_ERROR(); - case 76: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(75); - if (lookahead == '\n') - ADVANCE(76); - if (lookahead == '(') - ADVANCE(56); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == ':') - ADVANCE(77); - if (lookahead == ';') - ADVANCE(53); - if (lookahead == '=') - ADVANCE(71); - ACCEPT_TOKEN(ts_sym__terminator); - case 77: - ACCEPT_TOKEN(ts_aux_sym_token5); case 78: START_TOKEN(); - if ((lookahead == '\t') || + if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) ADVANCE(78); - if (lookahead == '\n') - ADVANCE(79); if (lookahead == '(') ADVANCE(56); + if (lookahead == ',') + ADVANCE(64); if (lookahead == '.') ADVANCE(57); - if (lookahead == ':') - ADVANCE(77); - if (lookahead == ';') - ADVANCE(53); + if (lookahead == '=') + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); + if (lookahead == '}') + ADVANCE(59); LEX_ERROR(); case 79: START_TOKEN(); - if ((lookahead == '\t') || + if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(78); - if (lookahead == '\n') ADVANCE(79); if (lookahead == '(') ADVANCE(56); if (lookahead == '.') ADVANCE(57); - if (lookahead == ':') - ADVANCE(77); - if (lookahead == ';') - ADVANCE(53); - ACCEPT_TOKEN(ts_sym__terminator); + if (lookahead == '=') + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); + if (lookahead == ']') + ADVANCE(70); + LEX_ERROR(); case 80: START_TOKEN(); if ((lookahead == '\t') || @@ -994,7 +1029,7 @@ LEX_FN() { (lookahead == ' ')) ADVANCE(80); if (lookahead == ']') - ADVANCE(74); + ADVANCE(70); LEX_ERROR(); case 81: START_TOKEN(); @@ -1002,28 +1037,18 @@ LEX_FN() { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(81); - if (lookahead == '\"') - ADVANCE(2); - if (lookahead == ')') - ADVANCE(63); - if ('0' <= lookahead && lookahead <= '9') - ADVANCE(7); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'e') || - ('g' <= lookahead && lookahead <= 'm') || - ('o' <= lookahead && lookahead <= 's') || - ('u' <= lookahead && lookahead <= 'z')) - ADVANCE(10); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == ',') + ADVANCE(64); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == '=') + ADVANCE(67); if (lookahead == '[') ADVANCE(11); - if (lookahead == 'f') - ADVANCE(61); - if (lookahead == 'n') - ADVANCE(33); - if (lookahead == 't') - ADVANCE(43); - if (lookahead == '{') - ADVANCE(50); + if (lookahead == ']') + ADVANCE(70); LEX_ERROR(); case 82: START_TOKEN(); @@ -1031,17 +1056,6 @@ LEX_FN() { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(82); - if (lookahead == ',') - ADVANCE(64); - if (lookahead == ']') - ADVANCE(74); - LEX_ERROR(); - case 83: - START_TOKEN(); - if (('\t' <= lookahead && lookahead <= '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(83); if (lookahead == '\"') ADVANCE(2); if ('0' <= lookahead && lookahead <= '9') @@ -1054,10 +1068,8 @@ LEX_FN() { ADVANCE(10); if (lookahead == '[') ADVANCE(11); - if (lookahead == ']') - ADVANCE(74); if (lookahead == 'f') - ADVANCE(61); + ADVANCE(77); if (lookahead == 'n') ADVANCE(33); if (lookahead == 't') @@ -1065,16 +1077,18 @@ LEX_FN() { if (lookahead == '{') ADVANCE(50); LEX_ERROR(); - case 84: + case 83: START_TOKEN(); if ((lookahead == '\t') || (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(84); + ADVANCE(83); if (lookahead == ':') - ADVANCE(77); + ADVANCE(84); LEX_ERROR(); + case 84: + ACCEPT_TOKEN(ts_aux_sym_token5); case 85: START_TOKEN(); if (('\t' <= lookahead && lookahead <= '\n') || @@ -1106,16 +1120,10 @@ LEX_FN() { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(87); - if (lookahead == '(') - ADVANCE(56); if (lookahead == ',') ADVANCE(64); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == '=') - ADVANCE(71); - if (lookahead == '}') - ADVANCE(59); + if (lookahead == ']') + ADVANCE(70); LEX_ERROR(); case 88: START_TOKEN(); @@ -1125,9 +1133,26 @@ LEX_FN() { ADVANCE(88); if (lookahead == '\"') ADVANCE(2); + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(7); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) + ('a' <= lookahead && lookahead <= 'e') || + ('g' <= lookahead && lookahead <= 'm') || + ('o' <= lookahead && lookahead <= 's') || + ('u' <= lookahead && lookahead <= 'z')) ADVANCE(10); + if (lookahead == '[') + ADVANCE(11); + if (lookahead == ']') + ADVANCE(70); + if (lookahead == 'f') + ADVANCE(77); + if (lookahead == 'n') + ADVANCE(33); + if (lookahead == 't') + ADVANCE(43); + if (lookahead == '{') + ADVANCE(50); LEX_ERROR(); case 89: START_TOKEN(); @@ -1135,16 +1160,11 @@ LEX_FN() { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(89); - if (lookahead == '(') - ADVANCE(56); - if (lookahead == ',') - ADVANCE(64); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == '=') - ADVANCE(71); - if (lookahead == ']') - ADVANCE(74); + if (lookahead == '\"') + ADVANCE(2); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(10); LEX_ERROR(); case 90: START_TOKEN(); @@ -1154,12 +1174,18 @@ LEX_FN() { ADVANCE(90); if (lookahead == '\n') ADVANCE(91); - if (lookahead == ',') - ADVANCE(64); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == ':') + ADVANCE(84); if (lookahead == ';') ADVANCE(53); - if (lookahead == '}') - ADVANCE(59); + if (lookahead == '=') + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); LEX_ERROR(); case 91: START_TOKEN(); @@ -1169,12 +1195,18 @@ LEX_FN() { ADVANCE(90); if (lookahead == '\n') ADVANCE(91); - if (lookahead == ',') - ADVANCE(64); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == ':') + ADVANCE(84); if (lookahead == ';') ADVANCE(53); - if (lookahead == '}') - ADVANCE(59); + if (lookahead == '=') + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); ACCEPT_TOKEN(ts_sym__terminator); case 92: START_TOKEN(); @@ -1184,10 +1216,16 @@ LEX_FN() { ADVANCE(92); if (lookahead == '\n') ADVANCE(93); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == ':') + ADVANCE(84); if (lookahead == ';') ADVANCE(53); - if (lookahead == '}') - ADVANCE(59); + if (lookahead == '[') + ADVANCE(11); LEX_ERROR(); case 93: START_TOKEN(); @@ -1197,116 +1235,115 @@ LEX_FN() { ADVANCE(92); if (lookahead == '\n') ADVANCE(93); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == ':') + ADVANCE(84); + if (lookahead == ';') + ADVANCE(53); + if (lookahead == '[') + ADVANCE(11); + ACCEPT_TOKEN(ts_sym__terminator); + case 94: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(94); + if (lookahead == '\n') + ADVANCE(95); + if (lookahead == ',') + ADVANCE(64); + if (lookahead == ';') + ADVANCE(53); + if (lookahead == '}') + ADVANCE(59); + LEX_ERROR(); + case 95: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(94); + if (lookahead == '\n') + ADVANCE(95); + if (lookahead == ',') + ADVANCE(64); if (lookahead == ';') ADVANCE(53); if (lookahead == '}') ADVANCE(59); ACCEPT_TOKEN(ts_sym__terminator); - case 94: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(94); - if (lookahead == '{') - ADVANCE(50); - LEX_ERROR(); - case 95: - START_TOKEN(); - if (('\t' <= lookahead && lookahead <= '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(95); - if (lookahead == ')') - ADVANCE(63); - if (lookahead == ',') - ADVANCE(64); - LEX_ERROR(); case 96: START_TOKEN(); - if (('\t' <= lookahead && lookahead <= '\n') || + if ((lookahead == '\t') || (lookahead == '\r') || (lookahead == ' ')) ADVANCE(96); - if (lookahead == ')') - ADVANCE(63); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(10); + if (lookahead == '\n') + ADVANCE(97); + if (lookahead == ';') + ADVANCE(53); + if (lookahead == '}') + ADVANCE(59); LEX_ERROR(); case 97: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(96); + if (lookahead == '\n') + ADVANCE(97); + if (lookahead == ';') + ADVANCE(53); + if (lookahead == '}') + ADVANCE(59); + ACCEPT_TOKEN(ts_sym__terminator); + case 98: START_TOKEN(); if ((lookahead == '\t') || (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(97); - if (lookahead == '(') - ADVANCE(56); + ADVANCE(98); + if (lookahead == '{') + ADVANCE(50); LEX_ERROR(); - case 98: + case 99: START_TOKEN(); if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(98); - if (lookahead == '(') - ADVANCE(56); + ADVANCE(99); + if (lookahead == ')') + ADVANCE(62); + if (lookahead == ',') + ADVANCE(64); + LEX_ERROR(); + case 100: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(100); + if (lookahead == ')') + ADVANCE(62); if (('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(10); LEX_ERROR(); - case 99: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(99); - if (lookahead == '\n') - ADVANCE(100); - if (lookahead == '(') - ADVANCE(56); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == ';') - ADVANCE(53); - if (lookahead == '=') - ADVANCE(71); - LEX_ERROR(); - case 100: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(99); - if (lookahead == '\n') - ADVANCE(100); - if (lookahead == '(') - ADVANCE(56); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == ';') - ADVANCE(53); - if (lookahead == '=') - ADVANCE(71); - ACCEPT_TOKEN(ts_sym__terminator); case 101: START_TOKEN(); - if (('\t' <= lookahead && lookahead <= '\n') || + if ((lookahead == '\t') || + (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) ADVANCE(101); if (lookahead == '(') ADVANCE(56); - if (lookahead == ')') - ADVANCE(63); - if (lookahead == ',') - ADVANCE(64); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == '=') - ADVANCE(71); LEX_ERROR(); case 102: START_TOKEN(); @@ -1316,10 +1353,9 @@ LEX_FN() { ADVANCE(102); if (lookahead == '(') ADVANCE(56); - if (lookahead == '.') - ADVANCE(57); - if (lookahead == ':') - ADVANCE(77); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(10); LEX_ERROR(); case 103: START_TOKEN(); @@ -1327,6 +1363,36 @@ LEX_FN() { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(103); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == '=') + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); + LEX_ERROR(); + case 104: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(104); + if (lookahead == '(') + ADVANCE(56); + if (lookahead == '.') + ADVANCE(57); + if (lookahead == ':') + ADVANCE(84); + if (lookahead == '[') + ADVANCE(11); + LEX_ERROR(); + case 105: + START_TOKEN(); + if (('\t' <= lookahead && lookahead <= '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(105); if (lookahead == '\"') ADVANCE(2); if ('0' <= lookahead && lookahead <= '9') @@ -1345,9 +1411,9 @@ LEX_FN() { if (lookahead == 'b') ADVANCE(12); if (lookahead == 'c') - ADVANCE(104); + ADVANCE(106); if (lookahead == 'd') - ADVANCE(108); + ADVANCE(110); if (lookahead == 'f') ADVANCE(17); if (lookahead == 'i') @@ -1365,7 +1431,7 @@ LEX_FN() { if (lookahead == '}') ADVANCE(59); LEX_ERROR(); - case 104: + case 106: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1373,9 +1439,9 @@ LEX_FN() { ('b' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 'a') - ADVANCE(105); + ADVANCE(107); ACCEPT_TOKEN(ts_sym_identifier); - case 105: + case 107: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1384,27 +1450,8 @@ LEX_FN() { ('t' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 's') - ADVANCE(106); + ADVANCE(108); ACCEPT_TOKEN(ts_sym_identifier); - case 106: - if ((lookahead == '$') || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'd') || - ('f' <= lookahead && lookahead <= 'z')) - ADVANCE(10); - if (lookahead == 'e') - ADVANCE(107); - ACCEPT_TOKEN(ts_sym_identifier); - case 107: - if ((lookahead == '$') || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(10); - ACCEPT_TOKEN(ts_sym__case); case 108: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || @@ -1417,6 +1464,25 @@ LEX_FN() { ADVANCE(109); ACCEPT_TOKEN(ts_sym_identifier); case 109: + if ((lookahead == '$') || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(10); + ACCEPT_TOKEN(ts_sym__case); + case 110: + if ((lookahead == '$') || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'd') || + ('f' <= lookahead && lookahead <= 'z')) + ADVANCE(10); + if (lookahead == 'e') + ADVANCE(111); + ACCEPT_TOKEN(ts_sym_identifier); + case 111: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1425,9 +1491,9 @@ LEX_FN() { ('g' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 'f') - ADVANCE(110); + ADVANCE(112); ACCEPT_TOKEN(ts_sym_identifier); - case 110: + case 112: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1435,9 +1501,9 @@ LEX_FN() { ('b' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 'a') - ADVANCE(111); + ADVANCE(113); ACCEPT_TOKEN(ts_sym_identifier); - case 111: + case 113: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1446,9 +1512,9 @@ LEX_FN() { ('v' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 'u') - ADVANCE(112); + ADVANCE(114); ACCEPT_TOKEN(ts_sym_identifier); - case 112: + case 114: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1457,9 +1523,9 @@ LEX_FN() { ('m' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 'l') - ADVANCE(113); + ADVANCE(115); ACCEPT_TOKEN(ts_sym_identifier); - case 113: + case 115: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1468,9 +1534,9 @@ LEX_FN() { ('u' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 't') - ADVANCE(114); + ADVANCE(116); ACCEPT_TOKEN(ts_sym_identifier); - case 114: + case 116: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1478,12 +1544,12 @@ LEX_FN() { ('a' <= lookahead && lookahead <= 'z')) ADVANCE(10); ACCEPT_TOKEN(ts_sym__default); - case 115: + case 117: START_TOKEN(); if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(115); + ADVANCE(117); if (lookahead == '\"') ADVANCE(2); if ('0' <= lookahead && lookahead <= '9') @@ -1501,11 +1567,11 @@ LEX_FN() { if (lookahead == 'b') ADVANCE(12); if (lookahead == 'c') - ADVANCE(104); + ADVANCE(106); if (lookahead == 'd') - ADVANCE(108); + ADVANCE(110); if (lookahead == 'e') - ADVANCE(116); + ADVANCE(118); if (lookahead == 'f') ADVANCE(17); if (lookahead == 'i') @@ -1523,7 +1589,7 @@ LEX_FN() { if (lookahead == '}') ADVANCE(59); LEX_ERROR(); - case 116: + case 118: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1532,9 +1598,9 @@ LEX_FN() { ('m' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 'l') - ADVANCE(117); + ADVANCE(119); ACCEPT_TOKEN(ts_sym_identifier); - case 117: + case 119: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1543,9 +1609,9 @@ LEX_FN() { ('t' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 's') - ADVANCE(118); + ADVANCE(120); ACCEPT_TOKEN(ts_sym_identifier); - case 118: + case 120: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1554,9 +1620,9 @@ LEX_FN() { ('f' <= lookahead && lookahead <= 'z')) ADVANCE(10); if (lookahead == 'e') - ADVANCE(119); + ADVANCE(121); ACCEPT_TOKEN(ts_sym_identifier); - case 119: + case 121: if ((lookahead == '$') || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1564,80 +1630,82 @@ LEX_FN() { ('a' <= lookahead && lookahead <= 'z')) ADVANCE(10); ACCEPT_TOKEN(ts_sym__else); - case 120: + case 122: START_TOKEN(); if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(120); + ADVANCE(122); if (lookahead == 'c') - ADVANCE(121); + ADVANCE(123); if (lookahead == 'd') - ADVANCE(125); + ADVANCE(127); if (lookahead == '}') ADVANCE(59); LEX_ERROR(); - case 121: - if (lookahead == 'a') - ADVANCE(122); - LEX_ERROR(); - case 122: - if (lookahead == 's') - ADVANCE(123); - LEX_ERROR(); case 123: - if (lookahead == 'e') + if (lookahead == 'a') ADVANCE(124); LEX_ERROR(); case 124: - ACCEPT_TOKEN(ts_sym__case); + if (lookahead == 's') + ADVANCE(125); + LEX_ERROR(); case 125: if (lookahead == 'e') ADVANCE(126); LEX_ERROR(); case 126: - if (lookahead == 'f') - ADVANCE(127); - LEX_ERROR(); + ACCEPT_TOKEN(ts_sym__case); case 127: - if (lookahead == 'a') + if (lookahead == 'e') ADVANCE(128); LEX_ERROR(); case 128: - if (lookahead == 'u') + if (lookahead == 'f') ADVANCE(129); LEX_ERROR(); case 129: - if (lookahead == 'l') + if (lookahead == 'a') ADVANCE(130); LEX_ERROR(); case 130: - if (lookahead == 't') + if (lookahead == 'u') ADVANCE(131); LEX_ERROR(); case 131: - ACCEPT_TOKEN(ts_sym__default); + if (lookahead == 'l') + ADVANCE(132); + LEX_ERROR(); case 132: + if (lookahead == 't') + ADVANCE(133); + LEX_ERROR(); + case 133: + ACCEPT_TOKEN(ts_sym__default); + case 134: START_TOKEN(); if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(132); + ADVANCE(134); if (lookahead == '(') ADVANCE(56); if (lookahead == ')') - ADVANCE(63); + ADVANCE(62); if (lookahead == '.') ADVANCE(57); if (lookahead == '=') - ADVANCE(71); + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); LEX_ERROR(); - case 133: + case 135: START_TOKEN(); if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(133); + ADVANCE(135); if (lookahead == '\"') ADVANCE(2); if ('0' <= lookahead && lookahead <= '9') @@ -1670,12 +1738,12 @@ LEX_FN() { if (lookahead == '{') ADVANCE(50); LEX_ERROR(); - case 134: + case 136: START_TOKEN(); if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(134); + ADVANCE(136); if (lookahead == '\"') ADVANCE(2); if ('0' <= lookahead && lookahead <= '9') @@ -1690,7 +1758,7 @@ LEX_FN() { if (lookahead == '[') ADVANCE(11); if (lookahead == 'f') - ADVANCE(61); + ADVANCE(77); if (lookahead == 'n') ADVANCE(33); if (lookahead == 't') @@ -1700,27 +1768,29 @@ LEX_FN() { if (lookahead == '{') ADVANCE(50); LEX_ERROR(); - case 135: + case 137: START_TOKEN(); if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(135); + ADVANCE(137); if (lookahead == '(') ADVANCE(56); if (lookahead == '.') ADVANCE(57); if (lookahead == ':') - ADVANCE(77); + ADVANCE(84); if (lookahead == '=') - ADVANCE(71); + ADVANCE(67); + if (lookahead == '[') + ADVANCE(11); LEX_ERROR(); - case 136: + case 138: START_TOKEN(); if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(136); + ADVANCE(138); if (lookahead == '\"') ADVANCE(2); if ('0' <= lookahead && lookahead <= '9') @@ -1739,7 +1809,7 @@ LEX_FN() { if (lookahead == 'b') ADVANCE(12); if (lookahead == 'e') - ADVANCE(116); + ADVANCE(118); if (lookahead == 'f') ADVANCE(17); if (lookahead == 'i') @@ -1757,14 +1827,14 @@ LEX_FN() { if (lookahead == '}') ADVANCE(59); LEX_ERROR(); - case 137: + case 139: START_TOKEN(); if (lookahead == '\0') ADVANCE(1); if (('\t' <= lookahead && lookahead <= '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(137); + ADVANCE(139); if (lookahead == '\"') ADVANCE(2); if ('0' <= lookahead && lookahead <= '9') @@ -1783,7 +1853,7 @@ LEX_FN() { if (lookahead == 'b') ADVANCE(12); if (lookahead == 'e') - ADVANCE(116); + ADVANCE(118); if (lookahead == 'f') ADVANCE(17); if (lookahead == 'i') @@ -1799,7 +1869,7 @@ LEX_FN() { if (lookahead == '{') ADVANCE(50); LEX_ERROR(); - case 138: + case 140: START_TOKEN(); if (lookahead == '\0') ADVANCE(1); @@ -1807,24 +1877,24 @@ LEX_FN() { (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(138); + ADVANCE(140); LEX_ERROR(); - case 139: + case 141: START_TOKEN(); if (lookahead == '\0') ADVANCE(1); if ((lookahead == '\t') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(139); + ADVANCE(141); if (lookahead == '\n') - ADVANCE(140); + ADVANCE(142); if (lookahead == '\"') ADVANCE(2); if (lookahead == '(') ADVANCE(56); if (lookahead == ')') - ADVANCE(63); + ADVANCE(62); if (lookahead == ',') ADVANCE(64); if (lookahead == '.') @@ -1832,11 +1902,11 @@ LEX_FN() { if ('0' <= lookahead && lookahead <= '9') ADVANCE(7); if (lookahead == ':') - ADVANCE(77); + ADVANCE(84); if (lookahead == ';') ADVANCE(53); if (lookahead == '=') - ADVANCE(71); + ADVANCE(67); if (('A' <= lookahead && lookahead <= 'Z') || (lookahead == 'a') || ('g' <= lookahead && lookahead <= 'h') || @@ -1848,15 +1918,15 @@ LEX_FN() { if (lookahead == '[') ADVANCE(11); if (lookahead == ']') - ADVANCE(74); + ADVANCE(70); if (lookahead == 'b') ADVANCE(12); if (lookahead == 'c') - ADVANCE(104); + ADVANCE(106); if (lookahead == 'd') - ADVANCE(108); + ADVANCE(110); if (lookahead == 'e') - ADVANCE(116); + ADVANCE(118); if (lookahead == 'f') ADVANCE(17); if (lookahead == 'i') @@ -1874,22 +1944,22 @@ LEX_FN() { if (lookahead == '}') ADVANCE(59); LEX_ERROR(); - case 140: + case 142: START_TOKEN(); if (lookahead == '\0') ADVANCE(1); if ((lookahead == '\t') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(139); + ADVANCE(141); if (lookahead == '\n') - ADVANCE(140); + ADVANCE(142); if (lookahead == '\"') ADVANCE(2); if (lookahead == '(') ADVANCE(56); if (lookahead == ')') - ADVANCE(63); + ADVANCE(62); if (lookahead == ',') ADVANCE(64); if (lookahead == '.') @@ -1897,11 +1967,11 @@ LEX_FN() { if ('0' <= lookahead && lookahead <= '9') ADVANCE(7); if (lookahead == ':') - ADVANCE(77); + ADVANCE(84); if (lookahead == ';') ADVANCE(53); if (lookahead == '=') - ADVANCE(71); + ADVANCE(67); if (('A' <= lookahead && lookahead <= 'Z') || (lookahead == 'a') || ('g' <= lookahead && lookahead <= 'h') || @@ -1913,15 +1983,15 @@ LEX_FN() { if (lookahead == '[') ADVANCE(11); if (lookahead == ']') - ADVANCE(74); + ADVANCE(70); if (lookahead == 'b') ADVANCE(12); if (lookahead == 'c') - ADVANCE(104); + ADVANCE(106); if (lookahead == 'd') - ADVANCE(108); + ADVANCE(110); if (lookahead == 'e') - ADVANCE(116); + ADVANCE(118); if (lookahead == 'f') ADVANCE(17); if (lookahead == 'i') @@ -1945,15 +2015,15 @@ LEX_FN() { if ((lookahead == '\t') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(139); + ADVANCE(141); if (lookahead == '\n') - ADVANCE(140); + ADVANCE(142); if (lookahead == '\"') ADVANCE(2); if (lookahead == '(') ADVANCE(56); if (lookahead == ')') - ADVANCE(63); + ADVANCE(62); if (lookahead == ',') ADVANCE(64); if (lookahead == '.') @@ -1961,11 +2031,11 @@ LEX_FN() { if ('0' <= lookahead && lookahead <= '9') ADVANCE(7); if (lookahead == ':') - ADVANCE(77); + ADVANCE(84); if (lookahead == ';') ADVANCE(53); if (lookahead == '=') - ADVANCE(71); + ADVANCE(67); if (('A' <= lookahead && lookahead <= 'Z') || (lookahead == 'a') || ('g' <= lookahead && lookahead <= 'h') || @@ -1977,15 +2047,15 @@ LEX_FN() { if (lookahead == '[') ADVANCE(11); if (lookahead == ']') - ADVANCE(74); + ADVANCE(70); if (lookahead == 'b') ADVANCE(12); if (lookahead == 'c') - ADVANCE(104); + ADVANCE(106); if (lookahead == 'd') - ADVANCE(108); + ADVANCE(110); if (lookahead == 'e') - ADVANCE(116); + ADVANCE(118); if (lookahead == 'f') ADVANCE(17); if (lookahead == 'i') @@ -2012,510 +2082,607 @@ LEX_STATES = { [0] = 0, [1] = 51, [2] = 0, - [3] = 97, - [4] = 134, - [5] = 98, - [6] = 94, + [3] = 101, + [4] = 136, + [5] = 102, + [6] = 98, [7] = 54, [8] = 58, [9] = 51, [10] = 58, - [11] = 97, - [12] = 134, - [13] = 67, - [14] = 51, - [15] = 60, - [16] = 69, - [17] = 60, - [18] = 54, - [19] = 54, - [20] = 54, - [21] = 81, - [22] = 98, - [23] = 94, - [24] = 62, - [25] = 58, - [26] = 97, - [27] = 60, - [28] = 98, - [29] = 94, - [30] = 65, - [31] = 58, - [32] = 97, - [33] = 60, - [34] = 65, - [35] = 65, - [36] = 65, - [37] = 81, - [38] = 62, - [39] = 62, - [40] = 62, - [41] = 66, - [42] = 65, - [43] = 81, - [44] = 62, - [45] = 66, - [46] = 62, - [47] = 60, - [48] = 62, - [49] = 66, - [50] = 67, - [51] = 62, - [52] = 101, - [53] = 60, - [54] = 62, - [55] = 86, - [56] = 84, - [57] = 60, - [58] = 98, - [59] = 94, - [60] = 68, + [11] = 101, + [12] = 136, + [13] = 82, + [14] = 102, + [15] = 98, + [16] = 60, + [17] = 58, + [18] = 101, + [19] = 82, + [20] = 102, + [21] = 98, + [22] = 61, + [23] = 58, + [24] = 101, + [25] = 82, + [26] = 61, + [27] = 61, + [28] = 61, + [29] = 76, + [30] = 102, + [31] = 98, + [32] = 63, + [33] = 58, + [34] = 82, + [35] = 60, + [36] = 54, + [37] = 58, + [38] = 60, + [39] = 76, + [40] = 63, + [41] = 63, + [42] = 63, + [43] = 65, + [44] = 60, + [45] = 76, + [46] = 63, + [47] = 65, + [48] = 63, + [49] = 82, + [50] = 63, + [51] = 65, + [52] = 68, + [53] = 66, + [54] = 82, + [55] = 102, + [56] = 98, + [57] = 69, + [58] = 58, + [59] = 54, + [60] = 54, [61] = 58, - [62] = 67, - [63] = 51, - [64] = 58, - [65] = 69, - [66] = 58, + [62] = 54, + [63] = 58, + [64] = 76, + [65] = 63, + [66] = 65, [67] = 54, - [68] = 58, - [69] = 67, - [70] = 54, - [71] = 99, - [72] = 60, - [73] = 54, - [74] = 86, - [75] = 84, - [76] = 60, - [77] = 68, - [78] = 68, - [79] = 68, - [80] = 72, - [81] = 54, - [82] = 81, - [83] = 62, - [84] = 66, - [85] = 68, - [86] = 68, - [87] = 83, - [88] = 98, - [89] = 94, - [90] = 73, - [91] = 58, - [92] = 58, - [93] = 72, - [94] = 58, - [95] = 75, - [96] = 78, - [97] = 72, + [68] = 66, + [69] = 82, + [70] = 63, + [71] = 86, + [72] = 83, + [73] = 82, + [74] = 102, + [75] = 98, + [76] = 71, + [77] = 58, + [78] = 72, + [79] = 82, + [80] = 54, + [81] = 68, + [82] = 72, + [83] = 82, + [84] = 69, + [85] = 69, + [86] = 69, + [87] = 72, + [88] = 76, + [89] = 63, + [90] = 65, + [91] = 69, + [92] = 69, + [93] = 88, + [94] = 102, + [95] = 98, + [96] = 74, + [97] = 58, [98] = 58, - [99] = 54, - [100] = 83, - [101] = 73, - [102] = 73, - [103] = 73, - [104] = 80, - [105] = 54, - [106] = 81, - [107] = 62, - [108] = 66, - [109] = 73, - [110] = 73, - [111] = 60, - [112] = 73, - [113] = 80, - [114] = 67, - [115] = 73, - [116] = 89, - [117] = 60, - [118] = 73, - [119] = 86, - [120] = 84, - [121] = 60, - [122] = 68, - [123] = 72, - [124] = 73, - [125] = 88, - [126] = 84, - [127] = 60, - [128] = 68, - [129] = 72, - [130] = 67, - [131] = 68, - [132] = 87, - [133] = 60, - [134] = 68, - [135] = 86, - [136] = 84, - [137] = 60, - [138] = 68, - [139] = 72, - [140] = 68, + [99] = 75, + [100] = 58, + [101] = 90, + [102] = 82, + [103] = 71, + [104] = 71, + [105] = 71, + [106] = 75, + [107] = 54, + [108] = 76, + [109] = 63, + [110] = 65, + [111] = 71, + [112] = 71, + [113] = 89, + [114] = 83, + [115] = 82, + [116] = 71, + [117] = 75, + [118] = 68, + [119] = 78, + [120] = 82, + [121] = 69, + [122] = 78, + [123] = 68, + [124] = 79, + [125] = 82, + [126] = 69, + [127] = 79, + [128] = 79, + [129] = 82, + [130] = 69, + [131] = 86, + [132] = 83, + [133] = 82, + [134] = 71, + [135] = 75, + [136] = 69, + [137] = 78, + [138] = 82, + [139] = 71, + [140] = 86, [141] = 83, - [142] = 73, - [143] = 80, - [144] = 68, - [145] = 68, - [146] = 83, - [147] = 73, - [148] = 80, - [149] = 73, - [150] = 73, - [151] = 82, - [152] = 82, - [153] = 68, - [154] = 85, - [155] = 72, - [156] = 68, - [157] = 85, - [158] = 72, - [159] = 73, - [160] = 85, - [161] = 72, - [162] = 73, - [163] = 82, - [164] = 54, - [165] = 82, - [166] = 90, - [167] = 72, - [168] = 54, - [169] = 51, - [170] = 72, - [171] = 73, - [172] = 92, - [173] = 97, - [174] = 94, - [175] = 73, - [176] = 96, - [177] = 95, - [178] = 66, - [179] = 94, - [180] = 67, - [181] = 95, - [182] = 66, - [183] = 94, - [184] = 73, - [185] = 80, - [186] = 62, - [187] = 62, - [188] = 82, - [189] = 85, - [190] = 72, - [191] = 68, - [192] = 92, - [193] = 97, - [194] = 94, - [195] = 68, - [196] = 68, - [197] = 72, - [198] = 62, - [199] = 62, - [200] = 85, - [201] = 72, - [202] = 62, - [203] = 62, - [204] = 65, - [205] = 94, - [206] = 120, - [207] = 60, - [208] = 98, - [209] = 94, - [210] = 102, - [211] = 58, - [212] = 72, - [213] = 102, - [214] = 92, - [215] = 97, - [216] = 94, - [217] = 102, - [218] = 102, - [219] = 102, - [220] = 102, - [221] = 81, - [222] = 62, - [223] = 66, - [224] = 102, - [225] = 102, - [226] = 103, - [227] = 51, - [228] = 103, - [229] = 97, - [230] = 134, - [231] = 54, - [232] = 60, - [233] = 60, - [234] = 60, - [235] = 65, - [236] = 133, - [237] = 97, - [238] = 60, - [239] = 65, - [240] = 133, - [241] = 51, - [242] = 115, - [243] = 97, - [244] = 134, - [245] = 60, - [246] = 60, - [247] = 65, - [248] = 133, - [249] = 97, - [250] = 60, - [251] = 65, - [252] = 133, - [253] = 97, - [254] = 60, - [255] = 65, - [256] = 94, - [257] = 120, - [258] = 84, - [259] = 103, - [260] = 97, - [261] = 60, - [262] = 65, - [263] = 94, - [264] = 120, - [265] = 120, - [266] = 72, - [267] = 72, - [268] = 103, - [269] = 67, - [270] = 65, - [271] = 132, - [272] = 60, - [273] = 65, - [274] = 86, - [275] = 84, + [142] = 82, + [143] = 71, + [144] = 75, + [145] = 71, + [146] = 88, + [147] = 74, + [148] = 74, + [149] = 74, + [150] = 80, + [151] = 71, + [152] = 76, + [153] = 63, + [154] = 65, + [155] = 74, + [156] = 74, + [157] = 82, + [158] = 74, + [159] = 80, + [160] = 68, + [161] = 81, + [162] = 82, + [163] = 69, + [164] = 81, + [165] = 88, + [166] = 74, + [167] = 80, + [168] = 69, + [169] = 81, + [170] = 82, + [171] = 74, + [172] = 86, + [173] = 83, + [174] = 82, + [175] = 71, + [176] = 75, + [177] = 74, + [178] = 74, + [179] = 85, + [180] = 75, + [181] = 74, + [182] = 88, + [183] = 74, + [184] = 80, + [185] = 74, + [186] = 74, + [187] = 87, + [188] = 69, + [189] = 87, + [190] = 87, + [191] = 71, + [192] = 87, + [193] = 71, + [194] = 85, + [195] = 75, + [196] = 71, + [197] = 69, + [198] = 85, + [199] = 75, + [200] = 69, + [201] = 85, + [202] = 75, + [203] = 92, + [204] = 75, + [205] = 58, + [206] = 54, + [207] = 88, + [208] = 74, + [209] = 80, + [210] = 54, + [211] = 54, + [212] = 87, + [213] = 94, + [214] = 75, + [215] = 54, + [216] = 51, + [217] = 75, + [218] = 74, + [219] = 96, + [220] = 101, + [221] = 98, + [222] = 74, + [223] = 100, + [224] = 99, + [225] = 65, + [226] = 98, + [227] = 68, + [228] = 99, + [229] = 65, + [230] = 98, + [231] = 74, + [232] = 80, + [233] = 63, + [234] = 63, + [235] = 87, + [236] = 86, + [237] = 83, + [238] = 85, + [239] = 75, + [240] = 71, + [241] = 96, + [242] = 101, + [243] = 98, + [244] = 71, + [245] = 71, + [246] = 75, + [247] = 63, + [248] = 63, + [249] = 85, + [250] = 75, + [251] = 63, + [252] = 54, + [253] = 75, + [254] = 69, + [255] = 96, + [256] = 101, + [257] = 98, + [258] = 69, + [259] = 69, + [260] = 66, + [261] = 63, + [262] = 60, + [263] = 68, + [264] = 103, + [265] = 82, + [266] = 69, + [267] = 103, + [268] = 60, + [269] = 72, + [270] = 103, + [271] = 86, + [272] = 83, + [273] = 82, + [274] = 71, + [275] = 75, [276] = 60, - [277] = 68, - [278] = 72, - [279] = 65, - [280] = 65, - [281] = 85, - [282] = 72, - [283] = 65, - [284] = 83, - [285] = 73, - [286] = 80, - [287] = 65, - [288] = 65, - [289] = 82, - [290] = 66, - [291] = 67, - [292] = 51, - [293] = 103, - [294] = 69, - [295] = 103, - [296] = 54, - [297] = 103, - [298] = 103, - [299] = 120, - [300] = 58, - [301] = 72, - [302] = 103, - [303] = 90, - [304] = 51, - [305] = 120, - [306] = 72, - [307] = 115, - [308] = 66, - [309] = 67, - [310] = 51, - [311] = 115, - [312] = 69, - [313] = 115, - [314] = 54, - [315] = 115, - [316] = 115, - [317] = 133, - [318] = 115, - [319] = 58, - [320] = 72, - [321] = 115, - [322] = 90, - [323] = 51, - [324] = 66, - [325] = 115, - [326] = 66, - [327] = 51, - [328] = 115, - [329] = 133, - [330] = 103, - [331] = 66, - [332] = 103, - [333] = 66, - [334] = 120, - [335] = 67, - [336] = 102, - [337] = 135, - [338] = 60, - [339] = 102, - [340] = 86, - [341] = 84, - [342] = 60, - [343] = 68, - [344] = 72, - [345] = 102, - [346] = 102, - [347] = 85, - [348] = 72, - [349] = 102, + [277] = 60, + [278] = 85, + [279] = 75, + [280] = 60, + [281] = 88, + [282] = 74, + [283] = 80, + [284] = 60, + [285] = 60, + [286] = 87, + [287] = 75, + [288] = 63, + [289] = 96, + [290] = 101, + [291] = 98, + [292] = 63, + [293] = 63, + [294] = 65, + [295] = 61, + [296] = 61, + [297] = 98, + [298] = 122, + [299] = 82, + [300] = 102, + [301] = 98, + [302] = 104, + [303] = 58, + [304] = 75, + [305] = 104, + [306] = 96, + [307] = 101, + [308] = 98, + [309] = 104, + [310] = 104, + [311] = 104, + [312] = 104, + [313] = 76, + [314] = 63, + [315] = 65, + [316] = 104, + [317] = 104, + [318] = 105, + [319] = 51, + [320] = 105, + [321] = 101, + [322] = 136, + [323] = 54, + [324] = 82, + [325] = 82, + [326] = 82, + [327] = 61, + [328] = 135, + [329] = 101, + [330] = 82, + [331] = 61, + [332] = 135, + [333] = 51, + [334] = 117, + [335] = 101, + [336] = 136, + [337] = 82, + [338] = 82, + [339] = 61, + [340] = 135, + [341] = 101, + [342] = 82, + [343] = 61, + [344] = 135, + [345] = 101, + [346] = 82, + [347] = 61, + [348] = 98, + [349] = 122, [350] = 83, - [351] = 73, - [352] = 80, - [353] = 102, - [354] = 102, - [355] = 82, - [356] = 72, - [357] = 58, - [358] = 66, - [359] = 72, - [360] = 65, - [361] = 92, - [362] = 97, - [363] = 94, - [364] = 65, - [365] = 65, - [366] = 133, - [367] = 51, - [368] = 136, - [369] = 97, - [370] = 134, - [371] = 60, - [372] = 60, - [373] = 65, - [374] = 133, - [375] = 97, - [376] = 60, - [377] = 65, - [378] = 133, - [379] = 97, - [380] = 60, - [381] = 65, - [382] = 94, - [383] = 120, - [384] = 72, - [385] = 136, - [386] = 66, - [387] = 67, - [388] = 51, - [389] = 136, - [390] = 69, - [391] = 136, - [392] = 54, - [393] = 136, - [394] = 136, - [395] = 133, - [396] = 136, - [397] = 58, - [398] = 72, - [399] = 136, - [400] = 90, - [401] = 51, - [402] = 66, - [403] = 136, - [404] = 66, - [405] = 136, - [406] = 133, - [407] = 58, - [408] = 66, - [409] = 72, - [410] = 62, - [411] = 92, - [412] = 97, - [413] = 94, - [414] = 62, - [415] = 62, - [416] = 66, - [417] = 54, - [418] = 54, - [419] = 60, - [420] = 60, + [351] = 105, + [352] = 101, + [353] = 82, + [354] = 61, + [355] = 98, + [356] = 122, + [357] = 122, + [358] = 75, + [359] = 75, + [360] = 105, + [361] = 68, + [362] = 134, + [363] = 82, + [364] = 69, + [365] = 134, + [366] = 134, + [367] = 82, + [368] = 61, + [369] = 86, + [370] = 83, + [371] = 82, + [372] = 71, + [373] = 75, + [374] = 61, + [375] = 61, + [376] = 85, + [377] = 75, + [378] = 61, + [379] = 88, + [380] = 74, + [381] = 80, + [382] = 61, + [383] = 61, + [384] = 87, + [385] = 65, + [386] = 82, + [387] = 54, + [388] = 105, + [389] = 72, + [390] = 105, + [391] = 54, + [392] = 105, + [393] = 105, + [394] = 122, + [395] = 58, + [396] = 75, + [397] = 105, + [398] = 94, + [399] = 51, + [400] = 122, + [401] = 75, + [402] = 117, + [403] = 65, + [404] = 82, + [405] = 54, + [406] = 117, + [407] = 72, + [408] = 117, + [409] = 54, + [410] = 117, + [411] = 117, + [412] = 135, + [413] = 117, + [414] = 58, + [415] = 75, + [416] = 117, + [417] = 94, + [418] = 51, + [419] = 65, + [420] = 117, [421] = 65, - [422] = 133, - [423] = 58, - [424] = 66, - [425] = 72, - [426] = 54, - [427] = 92, - [428] = 97, - [429] = 94, - [430] = 54, - [431] = 60, - [432] = 60, - [433] = 65, - [434] = 133, - [435] = 97, - [436] = 60, - [437] = 65, - [438] = 133, - [439] = 51, - [440] = 137, - [441] = 97, - [442] = 134, - [443] = 60, - [444] = 60, - [445] = 65, - [446] = 133, - [447] = 97, - [448] = 60, - [449] = 65, - [450] = 133, - [451] = 97, - [452] = 60, - [453] = 65, - [454] = 94, - [455] = 120, - [456] = 72, - [457] = 137, - [458] = 66, - [459] = 67, - [460] = 51, - [461] = 137, - [462] = 69, - [463] = 137, - [464] = 54, - [465] = 137, - [466] = 137, - [467] = 133, - [468] = 137, - [469] = 58, - [470] = 72, - [471] = 137, - [472] = 90, - [473] = 51, - [474] = 66, - [475] = 137, - [476] = 66, - [477] = 137, - [478] = 133, - [479] = 97, - [480] = 60, - [481] = 65, - [482] = 94, - [483] = 120, - [484] = 72, - [485] = 0, - [486] = 66, - [487] = 67, - [488] = 51, - [489] = 0, - [490] = 69, - [491] = 0, - [492] = 54, - [493] = 0, - [494] = 0, + [422] = 51, + [423] = 117, + [424] = 135, + [425] = 105, + [426] = 65, + [427] = 105, + [428] = 65, + [429] = 122, + [430] = 68, + [431] = 137, + [432] = 82, + [433] = 69, + [434] = 137, + [435] = 137, + [436] = 82, + [437] = 104, + [438] = 86, + [439] = 83, + [440] = 82, + [441] = 71, + [442] = 75, + [443] = 104, + [444] = 104, + [445] = 85, + [446] = 75, + [447] = 104, + [448] = 88, + [449] = 74, + [450] = 80, + [451] = 104, + [452] = 104, + [453] = 87, + [454] = 75, + [455] = 58, + [456] = 65, + [457] = 75, + [458] = 61, + [459] = 96, + [460] = 101, + [461] = 98, + [462] = 61, + [463] = 61, + [464] = 135, + [465] = 51, + [466] = 138, + [467] = 101, + [468] = 136, + [469] = 82, + [470] = 82, + [471] = 61, + [472] = 135, + [473] = 101, + [474] = 82, + [475] = 61, + [476] = 135, + [477] = 101, + [478] = 82, + [479] = 61, + [480] = 98, + [481] = 122, + [482] = 75, + [483] = 138, + [484] = 65, + [485] = 82, + [486] = 54, + [487] = 138, + [488] = 72, + [489] = 138, + [490] = 54, + [491] = 138, + [492] = 138, + [493] = 135, + [494] = 138, [495] = 58, - [496] = 72, - [497] = 0, - [498] = 90, + [496] = 75, + [497] = 138, + [498] = 94, [499] = 51, - [500] = 66, - [501] = 0, - [502] = 66, + [500] = 65, + [501] = 138, + [502] = 65, [503] = 138, - [504] = 0, - [505] = 138, - [506] = 138, + [504] = 135, + [505] = 58, + [506] = 65, + [507] = 75, + [508] = 60, + [509] = 96, + [510] = 101, + [511] = 98, + [512] = 60, + [513] = 54, + [514] = 82, + [515] = 72, + [516] = 82, + [517] = 82, + [518] = 61, + [519] = 135, + [520] = 58, + [521] = 65, + [522] = 75, + [523] = 54, + [524] = 96, + [525] = 101, + [526] = 98, + [527] = 54, + [528] = 82, + [529] = 82, + [530] = 61, + [531] = 135, + [532] = 101, + [533] = 82, + [534] = 61, + [535] = 135, + [536] = 51, + [537] = 139, + [538] = 101, + [539] = 136, + [540] = 82, + [541] = 82, + [542] = 61, + [543] = 135, + [544] = 101, + [545] = 82, + [546] = 61, + [547] = 135, + [548] = 101, + [549] = 82, + [550] = 61, + [551] = 98, + [552] = 122, + [553] = 75, + [554] = 139, + [555] = 65, + [556] = 82, + [557] = 54, + [558] = 139, + [559] = 72, + [560] = 139, + [561] = 54, + [562] = 139, + [563] = 139, + [564] = 135, + [565] = 139, + [566] = 58, + [567] = 75, + [568] = 139, + [569] = 94, + [570] = 51, + [571] = 65, + [572] = 139, + [573] = 65, + [574] = 139, + [575] = 135, + [576] = 101, + [577] = 82, + [578] = 61, + [579] = 98, + [580] = 122, + [581] = 75, + [582] = 0, + [583] = 65, + [584] = 82, + [585] = 54, + [586] = 0, + [587] = 72, + [588] = 0, + [589] = 54, + [590] = 0, + [591] = 0, + [592] = 58, + [593] = 75, + [594] = 0, + [595] = 94, + [596] = 51, + [597] = 65, + [598] = 0, + [599] = 65, + [600] = 140, + [601] = 0, + [602] = 140, + [603] = 140, }; PARSE_TABLE = { @@ -2523,37 +2690,37 @@ PARSE_TABLE = { [ts_sym__break] = SHIFT(1), [ts_sym__for] = SHIFT(3), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(435), - [ts_sym__switch] = SHIFT(479), - [ts_sym__var] = SHIFT(487), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(491), - [ts_sym_expression] = SHIFT(492), - [ts_sym_expression_statement] = SHIFT(491), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(491), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(491), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_program] = SHIFT(503), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(504), - [ts_sym_statement_block] = SHIFT(491), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(491), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(491), - [ts_aux_sym_repeat_helper1] = SHIFT(506), - [ts_aux_sym_token1] = SHIFT(495), - [ts_aux_sym_token9] = SHIFT(100), + [ts_sym__if] = SHIFT(532), + [ts_sym__switch] = SHIFT(576), + [ts_sym__var] = SHIFT(584), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(588), + [ts_sym_expression] = SHIFT(589), + [ts_sym_expression_statement] = SHIFT(588), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(588), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(588), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_program] = SHIFT(600), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(601), + [ts_sym_statement_block] = SHIFT(588), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(588), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(588), + [ts_aux_sym_repeat_helper1] = SHIFT(603), + [ts_aux_sym_token1] = SHIFT(592), + [ts_aux_sym_token9] = SHIFT(207), [ts_builtin_sym_end] = REDUCE(ts_aux_sym_repeat_helper1, 0), - [ts_builtin_sym_error] = SHIFT(499), + [ts_builtin_sym_error] = SHIFT(596), }, [1] = { [ts_sym__terminator] = SHIFT(2), @@ -2582,30 +2749,30 @@ PARSE_TABLE = { [4] = { [ts_sym__function] = SHIFT(5), [ts_sym__var] = SHIFT(13), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(431), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(431), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(528), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(528), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, [5] = { [ts_sym_formal_parameters] = SHIFT(6), - [ts_sym_identifier] = SHIFT(428), - [ts_aux_sym_token3] = SHIFT(176), + [ts_sym_identifier] = SHIFT(525), + [ts_aux_sym_token3] = SHIFT(223), }, [6] = { [ts_sym_statement_block] = SHIFT(7), @@ -2615,41 +2782,42 @@ PARSE_TABLE = { [ts_sym__terminator] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 3), }, [8] = { [ts_sym__break] = SHIFT(9), [ts_sym__for] = SHIFT(11), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(425), - [ts_aux_sym_token1] = SHIFT(94), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(522), + [ts_aux_sym_token1] = SHIFT(100), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(427), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(524), }, [9] = { [ts_sym__terminator] = SHIFT(10), @@ -2678,502 +2846,310 @@ PARSE_TABLE = { [12] = { [ts_sym__function] = SHIFT(5), [ts_sym__var] = SHIFT(13), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(419), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(419), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(516), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(516), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, [13] = { - [ts_sym_assignment] = SHIFT(14), - [ts_sym_identifier] = SHIFT(16), + [ts_sym__function] = SHIFT(14), + [ts_sym_array] = SHIFT(35), + [ts_sym_assignment] = SHIFT(513), + [ts_sym_expression] = SHIFT(38), + [ts_sym_false] = SHIFT(35), + [ts_sym_function_call] = SHIFT(268), + [ts_sym_function_expression] = SHIFT(268), + [ts_sym_identifier] = SHIFT(515), + [ts_sym_literal] = SHIFT(268), + [ts_sym_null] = SHIFT(35), + [ts_sym_number] = SHIFT(35), + [ts_sym_object] = SHIFT(35), + [ts_sym_property_access] = SHIFT(270), + [ts_sym_string] = SHIFT(35), + [ts_sym_true] = SHIFT(35), + [ts_aux_sym_token1] = SHIFT(271), + [ts_aux_sym_token9] = SHIFT(281), }, [14] = { - [ts_sym__terminator] = SHIFT(15), + [ts_sym_formal_parameters] = SHIFT(15), + [ts_sym_identifier] = SHIFT(510), + [ts_aux_sym_token3] = SHIFT(223), }, [15] = { - [ts_sym__function] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_false] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_identifier] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_null] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_number] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_string] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token1] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), - [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_statement_block] = SHIFT(16), + [ts_aux_sym_token1] = SHIFT(17), }, [16] = { - [ts_sym__terminator] = SHIFT(15), - [ts_aux_sym_token6] = SHIFT(17), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 3), }, [17] = { + [ts_sym__break] = SHIFT(9), + [ts_sym__for] = SHIFT(11), [ts_sym__function] = SHIFT(5), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(20), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(507), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(509), }, [18] = { - [ts_sym__terminator] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token3] = SHIFT(19), }, [19] = { - [ts_sym__terminator] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(463), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(506), }, [20] = { - [ts_sym__terminator] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token3] = SHIFT(21), - [ts_aux_sym_token8] = SHIFT(69), + [ts_sym_formal_parameters] = SHIFT(21), + [ts_sym_identifier] = SHIFT(460), + [ts_aux_sym_token3] = SHIFT(223), }, [21] = { - [ts_sym__function] = SHIFT(22), - [ts_sym_array] = SHIFT(38), - [ts_sym_assignment] = SHIFT(39), - [ts_sym_expression] = SHIFT(415), - [ts_sym_false] = SHIFT(38), - [ts_sym_function_call] = SHIFT(39), - [ts_sym_function_expression] = SHIFT(39), - [ts_sym_identifier] = SHIFT(52), - [ts_sym_literal] = SHIFT(39), - [ts_sym_null] = SHIFT(38), - [ts_sym_number] = SHIFT(38), - [ts_sym_object] = SHIFT(38), - [ts_sym_property_access] = SHIFT(39), - [ts_sym_string] = SHIFT(38), - [ts_sym_true] = SHIFT(38), - [ts_aux_sym_token1] = SHIFT(55), - [ts_aux_sym_token4] = SHIFT(418), - [ts_aux_sym_token9] = SHIFT(87), + [ts_sym_statement_block] = SHIFT(22), + [ts_aux_sym_token1] = SHIFT(23), }, [22] = { - [ts_sym_formal_parameters] = SHIFT(23), - [ts_sym_identifier] = SHIFT(412), - [ts_aux_sym_token3] = SHIFT(176), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token4] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 3), }, [23] = { - [ts_sym_statement_block] = SHIFT(24), - [ts_aux_sym_token1] = SHIFT(25), + [ts_sym__break] = SHIFT(9), + [ts_sym__for] = SHIFT(11), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(457), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(459), }, [24] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), - [ts_aux_sym_token4] = REDUCE(ts_sym_function_expression, 3), - [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token3] = SHIFT(25), }, [25] = { - [ts_sym__break] = SHIFT(9), - [ts_sym__for] = SHIFT(11), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(409), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(411), + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(28), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(456), }, [26] = { - [ts_aux_sym_token3] = SHIFT(27), + [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token4] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_literal, 1), }, [27] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(365), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(408), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, [28] = { - [ts_sym_formal_parameters] = SHIFT(29), - [ts_sym_identifier] = SHIFT(362), - [ts_aux_sym_token3] = SHIFT(176), + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(297), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, [29] = { - [ts_sym_statement_block] = SHIFT(30), - [ts_aux_sym_token1] = SHIFT(31), + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(293), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token4] = SHIFT(296), + [ts_aux_sym_token9] = SHIFT(93), }, [30] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), - [ts_aux_sym_token4] = REDUCE(ts_sym_function_expression, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), + [ts_sym_formal_parameters] = SHIFT(31), + [ts_sym_identifier] = SHIFT(290), + [ts_aux_sym_token3] = SHIFT(223), }, [31] = { - [ts_sym__break] = SHIFT(9), - [ts_sym__for] = SHIFT(11), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(359), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(361), + [ts_sym_statement_block] = SHIFT(32), + [ts_aux_sym_token1] = SHIFT(33), }, [32] = { - [ts_aux_sym_token3] = SHIFT(33), - }, - [33] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(36), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(358), - }, - [34] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token4] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), - }, - [35] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), - }, - [36] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(205), - [ts_aux_sym_token8] = SHIFT(269), - }, - [37] = { - [ts_sym__function] = SHIFT(22), - [ts_sym_array] = SHIFT(38), - [ts_sym_assignment] = SHIFT(39), - [ts_sym_expression] = SHIFT(40), - [ts_sym_false] = SHIFT(38), - [ts_sym_function_call] = SHIFT(39), - [ts_sym_function_expression] = SHIFT(39), - [ts_sym_identifier] = SHIFT(52), - [ts_sym_literal] = SHIFT(39), - [ts_sym_null] = SHIFT(38), - [ts_sym_number] = SHIFT(38), - [ts_sym_object] = SHIFT(38), - [ts_sym_property_access] = SHIFT(39), - [ts_sym_string] = SHIFT(38), - [ts_sym_true] = SHIFT(38), - [ts_aux_sym_token1] = SHIFT(55), - [ts_aux_sym_token4] = SHIFT(204), - [ts_aux_sym_token9] = SHIFT(87), - }, - [38] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token4] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), - }, - [39] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), - }, - [40] = { - [ts_aux_sym_repeat_helper5] = SHIFT(41), - [ts_aux_sym_token3] = SHIFT(43), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token7] = SHIFT(47), - [ts_aux_sym_token8] = SHIFT(50), - }, - [41] = { - [ts_aux_sym_token4] = SHIFT(42), - }, - [42] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token4] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), - }, - [43] = { - [ts_sym__function] = SHIFT(22), - [ts_sym_array] = SHIFT(38), - [ts_sym_assignment] = SHIFT(39), - [ts_sym_expression] = SHIFT(44), - [ts_sym_false] = SHIFT(38), - [ts_sym_function_call] = SHIFT(39), - [ts_sym_function_expression] = SHIFT(39), - [ts_sym_identifier] = SHIFT(52), - [ts_sym_literal] = SHIFT(39), - [ts_sym_null] = SHIFT(38), - [ts_sym_number] = SHIFT(38), - [ts_sym_object] = SHIFT(38), - [ts_sym_property_access] = SHIFT(39), - [ts_sym_string] = SHIFT(38), - [ts_sym_true] = SHIFT(38), - [ts_aux_sym_token1] = SHIFT(55), - [ts_aux_sym_token4] = SHIFT(203), - [ts_aux_sym_token9] = SHIFT(87), - }, - [44] = { - [ts_aux_sym_repeat_helper5] = SHIFT(45), - [ts_aux_sym_token3] = SHIFT(43), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token7] = SHIFT(47), - [ts_aux_sym_token8] = SHIFT(50), - }, - [45] = { - [ts_aux_sym_token4] = SHIFT(46), - }, - [46] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token4] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), - }, - [47] = { - [ts_sym__function] = SHIFT(22), - [ts_sym_array] = SHIFT(38), - [ts_sym_assignment] = SHIFT(39), - [ts_sym_expression] = SHIFT(48), - [ts_sym_false] = SHIFT(38), - [ts_sym_function_call] = SHIFT(39), - [ts_sym_function_expression] = SHIFT(39), - [ts_sym_identifier] = SHIFT(52), - [ts_sym_literal] = SHIFT(39), - [ts_sym_null] = SHIFT(38), - [ts_sym_number] = SHIFT(38), - [ts_sym_object] = SHIFT(38), - [ts_sym_property_access] = SHIFT(39), - [ts_sym_string] = SHIFT(38), - [ts_sym_true] = SHIFT(38), - [ts_aux_sym_token1] = SHIFT(55), - [ts_aux_sym_token9] = SHIFT(87), - }, - [48] = { - [ts_aux_sym_repeat_helper5] = SHIFT(49), - [ts_aux_sym_token3] = SHIFT(43), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token7] = SHIFT(47), - [ts_aux_sym_token8] = SHIFT(50), - }, - [49] = { - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 3), - }, - [50] = { - [ts_sym_identifier] = SHIFT(51), - }, - [51] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token4] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), - }, - [52] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token6] = SHIFT(53), - [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), - }, - [53] = { - [ts_sym__function] = SHIFT(22), - [ts_sym_array] = SHIFT(38), - [ts_sym_assignment] = SHIFT(39), - [ts_sym_expression] = SHIFT(54), - [ts_sym_false] = SHIFT(38), - [ts_sym_function_call] = SHIFT(39), - [ts_sym_function_expression] = SHIFT(39), - [ts_sym_identifier] = SHIFT(52), - [ts_sym_literal] = SHIFT(39), - [ts_sym_null] = SHIFT(38), - [ts_sym_number] = SHIFT(38), - [ts_sym_object] = SHIFT(38), - [ts_sym_property_access] = SHIFT(39), - [ts_sym_string] = SHIFT(38), - [ts_sym_true] = SHIFT(38), - [ts_aux_sym_token1] = SHIFT(55), - [ts_aux_sym_token9] = SHIFT(87), - }, - [54] = { - [ts_aux_sym_token3] = SHIFT(43), - [ts_aux_sym_token4] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token7] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token8] = SHIFT(50), - }, - [55] = { - [ts_sym_identifier] = SHIFT(56), - [ts_sym_string] = SHIFT(56), - [ts_aux_sym_token2] = SHIFT(199), - [ts_builtin_sym_error] = SHIFT(200), - }, - [56] = { - [ts_aux_sym_token5] = SHIFT(57), - }, - [57] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(77), - [ts_sym_assignment] = SHIFT(78), - [ts_sym_expression] = SHIFT(196), - [ts_sym_false] = SHIFT(77), - [ts_sym_function_call] = SHIFT(78), - [ts_sym_function_expression] = SHIFT(78), - [ts_sym_identifier] = SHIFT(132), - [ts_sym_literal] = SHIFT(78), - [ts_sym_null] = SHIFT(77), - [ts_sym_number] = SHIFT(77), - [ts_sym_object] = SHIFT(77), - [ts_sym_property_access] = SHIFT(78), - [ts_sym_string] = SHIFT(77), - [ts_sym_true] = SHIFT(77), - [ts_aux_sym_token1] = SHIFT(135), - [ts_aux_sym_token9] = SHIFT(141), - }, - [58] = { - [ts_sym_formal_parameters] = SHIFT(59), - [ts_sym_identifier] = SHIFT(193), - [ts_aux_sym_token3] = SHIFT(176), - }, - [59] = { - [ts_sym_statement_block] = SHIFT(60), - [ts_aux_sym_token1] = SHIFT(61), - }, - [60] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token4] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 3), }, - [61] = { + [33] = { [ts_sym__break] = SHIFT(9), [ts_sym__for] = SHIFT(11), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(190), - [ts_aux_sym_token1] = SHIFT(94), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(287), + [ts_aux_sym_token1] = SHIFT(100), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(192), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(289), }, - [62] = { - [ts_sym_assignment] = SHIFT(63), - [ts_sym_identifier] = SHIFT(65), + [34] = { + [ts_sym__function] = SHIFT(14), + [ts_sym_array] = SHIFT(35), + [ts_sym_assignment] = SHIFT(36), + [ts_sym_expression] = SHIFT(38), + [ts_sym_false] = SHIFT(35), + [ts_sym_function_call] = SHIFT(268), + [ts_sym_function_expression] = SHIFT(268), + [ts_sym_identifier] = SHIFT(269), + [ts_sym_literal] = SHIFT(268), + [ts_sym_null] = SHIFT(35), + [ts_sym_number] = SHIFT(35), + [ts_sym_object] = SHIFT(35), + [ts_sym_property_access] = SHIFT(270), + [ts_sym_string] = SHIFT(35), + [ts_sym_true] = SHIFT(35), + [ts_aux_sym_token1] = SHIFT(271), + [ts_aux_sym_token9] = SHIFT(281), }, - [63] = { - [ts_sym__terminator] = SHIFT(64), + [35] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_literal, 1), }, - [64] = { + [36] = { + [ts_sym__terminator] = SHIFT(37), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [37] = { [ts_sym__break] = REDUCE(ts_sym_var_declaration, 3), [ts_sym__for] = REDUCE(ts_sym_var_declaration, 3), [ts_sym__function] = REDUCE(ts_sym_var_declaration, 3), @@ -3191,11 +3167,222 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), }, - [65] = { - [ts_sym__terminator] = SHIFT(64), - [ts_aux_sym_token6] = SHIFT(17), + [38] = { + [ts_aux_sym_token3] = SHIFT(39), + [ts_aux_sym_token8] = SHIFT(263), + [ts_aux_sym_token9] = SHIFT(265), }, - [66] = { + [39] = { + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(42), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token4] = SHIFT(262), + [ts_aux_sym_token9] = SHIFT(93), + }, + [40] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token4] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_literal, 1), + }, + [41] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [42] = { + [ts_aux_sym_repeat_helper5] = SHIFT(43), + [ts_aux_sym_token3] = SHIFT(45), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token7] = SHIFT(49), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), + }, + [43] = { + [ts_aux_sym_token4] = SHIFT(44), + }, + [44] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 5), + }, + [45] = { + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(46), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token4] = SHIFT(261), + [ts_aux_sym_token9] = SHIFT(93), + }, + [46] = { + [ts_aux_sym_repeat_helper5] = SHIFT(47), + [ts_aux_sym_token3] = SHIFT(45), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token7] = SHIFT(49), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), + }, + [47] = { + [ts_aux_sym_token4] = SHIFT(48), + }, + [48] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token4] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 5), + }, + [49] = { + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(50), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token9] = SHIFT(93), + }, + [50] = { + [ts_aux_sym_repeat_helper5] = SHIFT(51), + [ts_aux_sym_token3] = SHIFT(45), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token7] = SHIFT(49), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), + }, + [51] = { + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 3), + }, + [52] = { + [ts_sym_identifier] = SHIFT(53), + }, + [53] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token4] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 3), + }, + [54] = { + [ts_sym__function] = SHIFT(55), + [ts_sym_array] = SHIFT(84), + [ts_sym_assignment] = SHIFT(85), + [ts_sym_expression] = SHIFT(259), + [ts_sym_false] = SHIFT(84), + [ts_sym_function_call] = SHIFT(85), + [ts_sym_function_expression] = SHIFT(85), + [ts_sym_identifier] = SHIFT(128), + [ts_sym_literal] = SHIFT(85), + [ts_sym_null] = SHIFT(84), + [ts_sym_number] = SHIFT(84), + [ts_sym_object] = SHIFT(84), + [ts_sym_property_access] = SHIFT(128), + [ts_sym_string] = SHIFT(84), + [ts_sym_true] = SHIFT(84), + [ts_aux_sym_token1] = SHIFT(131), + [ts_aux_sym_token9] = SHIFT(165), + }, + [55] = { + [ts_sym_formal_parameters] = SHIFT(56), + [ts_sym_identifier] = SHIFT(256), + [ts_aux_sym_token3] = SHIFT(223), + }, + [56] = { + [ts_sym_statement_block] = SHIFT(57), + [ts_aux_sym_token1] = SHIFT(58), + }, + [57] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 3), + }, + [58] = { + [ts_sym__break] = SHIFT(9), + [ts_sym__for] = SHIFT(11), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(253), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(255), + }, + [59] = { + [ts_sym__terminator] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_literal, 1), + }, + [60] = { + [ts_sym__terminator] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [61] = { [ts_sym__break] = REDUCE(ts_sym_statement, 1), [ts_sym__for] = REDUCE(ts_sym_statement, 1), [ts_sym__function] = REDUCE(ts_sym_statement, 1), @@ -3213,12 +3400,13 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), }, - [67] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_token3] = SHIFT(21), - [ts_aux_sym_token8] = SHIFT(69), + [62] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_token3] = SHIFT(64), + [ts_aux_sym_token8] = SHIFT(81), + [ts_aux_sym_token9] = SHIFT(83), }, - [68] = { + [63] = { [ts_sym__break] = REDUCE(ts_sym_expression_statement, 2), [ts_sym__for] = REDUCE(ts_sym_expression_statement, 2), [ts_sym__function] = REDUCE(ts_sym_expression_statement, 2), @@ -3236,302 +3424,1267 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_expression_statement, 2), [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), }, - [69] = { - [ts_sym_identifier] = SHIFT(70), + [64] = { + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(65), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token4] = SHIFT(252), + [ts_aux_sym_token9] = SHIFT(93), }, - [70] = { - [ts_sym__terminator] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [65] = { + [ts_aux_sym_repeat_helper5] = SHIFT(66), + [ts_aux_sym_token3] = SHIFT(45), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token7] = SHIFT(49), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), }, - [71] = { - [ts_sym__terminator] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token6] = SHIFT(72), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), - }, - [72] = { - [ts_sym__function] = SHIFT(5), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(73), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - }, - [73] = { - [ts_sym__terminator] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token3] = SHIFT(21), - [ts_aux_sym_token8] = SHIFT(69), - }, - [74] = { - [ts_sym_identifier] = SHIFT(75), - [ts_sym_string] = SHIFT(75), - [ts_aux_sym_token2] = SHIFT(99), - [ts_builtin_sym_error] = SHIFT(189), - }, - [75] = { - [ts_aux_sym_token5] = SHIFT(76), - }, - [76] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(77), - [ts_sym_assignment] = SHIFT(78), - [ts_sym_expression] = SHIFT(79), - [ts_sym_false] = SHIFT(77), - [ts_sym_function_call] = SHIFT(78), - [ts_sym_function_expression] = SHIFT(78), - [ts_sym_identifier] = SHIFT(132), - [ts_sym_literal] = SHIFT(78), - [ts_sym_null] = SHIFT(77), - [ts_sym_number] = SHIFT(77), - [ts_sym_object] = SHIFT(77), - [ts_sym_property_access] = SHIFT(78), - [ts_sym_string] = SHIFT(77), - [ts_sym_true] = SHIFT(77), - [ts_aux_sym_token1] = SHIFT(135), - [ts_aux_sym_token9] = SHIFT(141), - }, - [77] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), - }, - [78] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_expression, 1), + [66] = { + [ts_aux_sym_token4] = SHIFT(67), + }, + [67] = { + [ts_sym__terminator] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 5), + }, + [68] = { [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(69), [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [69] = { + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(70), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token9] = SHIFT(93), + }, + [70] = { + [ts_aux_sym_token3] = SHIFT(45), + [ts_aux_sym_token4] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token7] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), + }, + [71] = { + [ts_sym_identifier] = SHIFT(72), + [ts_sym_string] = SHIFT(72), + [ts_aux_sym_token2] = SHIFT(248), + [ts_builtin_sym_error] = SHIFT(249), + }, + [72] = { + [ts_aux_sym_token5] = SHIFT(73), + }, + [73] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(245), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [74] = { + [ts_sym_formal_parameters] = SHIFT(75), + [ts_sym_identifier] = SHIFT(242), + [ts_aux_sym_token3] = SHIFT(223), + }, + [75] = { + [ts_sym_statement_block] = SHIFT(76), + [ts_aux_sym_token1] = SHIFT(77), + }, + [76] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 3), + }, + [77] = { + [ts_sym__break] = SHIFT(9), + [ts_sym__for] = SHIFT(11), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(239), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(241), + }, + [78] = { + [ts_sym__terminator] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, [79] = { - [ts_aux_sym_repeat_helper7] = SHIFT(80), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token3] = SHIFT(82), - [ts_aux_sym_token7] = SHIFT(125), - [ts_aux_sym_token8] = SHIFT(130), + [ts_sym__function] = SHIFT(5), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(80), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), }, [80] = { - [ts_aux_sym_token2] = SHIFT(81), + [ts_sym__terminator] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token3] = SHIFT(64), + [ts_aux_sym_token8] = SHIFT(81), + [ts_aux_sym_token9] = SHIFT(83), }, [81] = { - [ts_sym__terminator] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_sym_identifier] = SHIFT(82), }, [82] = { - [ts_sym__function] = SHIFT(22), - [ts_sym_array] = SHIFT(38), - [ts_sym_assignment] = SHIFT(39), - [ts_sym_expression] = SHIFT(83), - [ts_sym_false] = SHIFT(38), - [ts_sym_function_call] = SHIFT(39), - [ts_sym_function_expression] = SHIFT(39), - [ts_sym_identifier] = SHIFT(52), - [ts_sym_literal] = SHIFT(39), - [ts_sym_null] = SHIFT(38), - [ts_sym_number] = SHIFT(38), - [ts_sym_object] = SHIFT(38), - [ts_sym_property_access] = SHIFT(39), - [ts_sym_string] = SHIFT(38), - [ts_sym_true] = SHIFT(38), - [ts_aux_sym_token1] = SHIFT(55), - [ts_aux_sym_token4] = SHIFT(86), - [ts_aux_sym_token9] = SHIFT(87), + [ts_sym__terminator] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 3), }, [83] = { - [ts_aux_sym_repeat_helper5] = SHIFT(84), - [ts_aux_sym_token3] = SHIFT(43), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token7] = SHIFT(47), - [ts_aux_sym_token8] = SHIFT(50), + [ts_sym__function] = SHIFT(55), + [ts_sym_array] = SHIFT(84), + [ts_sym_assignment] = SHIFT(85), + [ts_sym_expression] = SHIFT(86), + [ts_sym_false] = SHIFT(84), + [ts_sym_function_call] = SHIFT(85), + [ts_sym_function_expression] = SHIFT(85), + [ts_sym_identifier] = SHIFT(128), + [ts_sym_literal] = SHIFT(85), + [ts_sym_null] = SHIFT(84), + [ts_sym_number] = SHIFT(84), + [ts_sym_object] = SHIFT(84), + [ts_sym_property_access] = SHIFT(128), + [ts_sym_string] = SHIFT(84), + [ts_sym_true] = SHIFT(84), + [ts_aux_sym_token1] = SHIFT(131), + [ts_aux_sym_token9] = SHIFT(165), }, [84] = { - [ts_aux_sym_token4] = SHIFT(85), + [ts_aux_sym_token10] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_literal, 1), }, [85] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token10] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, [86] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_function_call, 3), - [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), - [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token10] = SHIFT(87), + [ts_aux_sym_token3] = SHIFT(88), + [ts_aux_sym_token8] = SHIFT(123), + [ts_aux_sym_token9] = SHIFT(125), }, [87] = { - [ts_sym__function] = SHIFT(88), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(184), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(116), - [ts_sym_literal] = SHIFT(102), - [ts_sym_null] = SHIFT(101), - [ts_sym_number] = SHIFT(101), - [ts_sym_object] = SHIFT(101), - [ts_sym_property_access] = SHIFT(102), - [ts_sym_string] = SHIFT(101), - [ts_sym_true] = SHIFT(101), - [ts_aux_sym_token1] = SHIFT(119), - [ts_aux_sym_token10] = SHIFT(187), - [ts_aux_sym_token9] = SHIFT(146), - [ts_builtin_sym_error] = SHIFT(188), + [ts_sym__terminator] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 4), }, [88] = { - [ts_sym_formal_parameters] = SHIFT(89), - [ts_sym_identifier] = SHIFT(173), - [ts_aux_sym_token3] = SHIFT(176), + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(89), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token4] = SHIFT(92), + [ts_aux_sym_token9] = SHIFT(93), }, [89] = { - [ts_sym_statement_block] = SHIFT(90), - [ts_aux_sym_token1] = SHIFT(91), + [ts_aux_sym_repeat_helper5] = SHIFT(90), + [ts_aux_sym_token3] = SHIFT(45), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token7] = SHIFT(49), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), }, [90] = { + [ts_aux_sym_token4] = SHIFT(91), + }, + [91] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 5), + }, + [92] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 3), + }, + [93] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(231), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token10] = SHIFT(234), + [ts_aux_sym_token9] = SHIFT(182), + [ts_builtin_sym_error] = SHIFT(235), + }, + [94] = { + [ts_sym_formal_parameters] = SHIFT(95), + [ts_sym_identifier] = SHIFT(220), + [ts_aux_sym_token3] = SHIFT(223), + }, + [95] = { + [ts_sym_statement_block] = SHIFT(96), + [ts_aux_sym_token1] = SHIFT(97), + }, + [96] = { [ts_aux_sym_token10] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), - }, - [91] = { - [ts_sym__break] = SHIFT(9), - [ts_sym__for] = SHIFT(11), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(170), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(172), - }, - [92] = { - [ts_sym__break] = SHIFT(9), - [ts_sym__for] = SHIFT(11), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(93), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(169), - }, - [93] = { - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 2), - }, - [94] = { - [ts_sym__break] = SHIFT(9), - [ts_sym__for] = SHIFT(11), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(96), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(97), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = SHIFT(99), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(166), - }, - [95] = { - [ts_sym__terminator] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token5] = SHIFT(76), - [ts_aux_sym_token6] = SHIFT(72), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), - }, - [96] = { - [ts_sym__terminator] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token5] = SHIFT(76), - [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 3), }, [97] = { - [ts_aux_sym_token2] = SHIFT(98), + [ts_sym__break] = SHIFT(9), + [ts_sym__for] = SHIFT(11), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(217), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(219), }, [98] = { + [ts_sym__break] = SHIFT(9), + [ts_sym__for] = SHIFT(11), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(99), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(216), + }, + [99] = { + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 2), + }, + [100] = { + [ts_sym__break] = SHIFT(9), + [ts_sym__for] = SHIFT(11), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(101), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(203), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(204), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = SHIFT(206), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(213), + }, + [101] = { + [ts_sym__terminator] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token5] = SHIFT(102), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [102] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(105), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [103] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_literal, 1), + }, + [104] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [105] = { + [ts_aux_sym_repeat_helper7] = SHIFT(106), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = SHIFT(113), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), + }, + [106] = { + [ts_aux_sym_token2] = SHIFT(107), + }, + [107] = { + [ts_sym__terminator] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 6), + }, + [108] = { + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(109), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token4] = SHIFT(112), + [ts_aux_sym_token9] = SHIFT(93), + }, + [109] = { + [ts_aux_sym_repeat_helper5] = SHIFT(110), + [ts_aux_sym_token3] = SHIFT(45), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token7] = SHIFT(49), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), + }, + [110] = { + [ts_aux_sym_token4] = SHIFT(111), + }, + [111] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 5), + }, + [112] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 3), + }, + [113] = { + [ts_sym_identifier] = SHIFT(114), + [ts_sym_string] = SHIFT(114), + [ts_builtin_sym_error] = SHIFT(201), + }, + [114] = { + [ts_aux_sym_token5] = SHIFT(115), + }, + [115] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(116), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [116] = { + [ts_aux_sym_repeat_helper7] = SHIFT(117), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = SHIFT(113), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), + }, + [117] = { + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 5), + }, + [118] = { + [ts_sym_identifier] = SHIFT(119), + }, + [119] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 3), + }, + [120] = { + [ts_sym__function] = SHIFT(55), + [ts_sym_array] = SHIFT(84), + [ts_sym_assignment] = SHIFT(85), + [ts_sym_expression] = SHIFT(121), + [ts_sym_false] = SHIFT(84), + [ts_sym_function_call] = SHIFT(85), + [ts_sym_function_expression] = SHIFT(85), + [ts_sym_identifier] = SHIFT(128), + [ts_sym_literal] = SHIFT(85), + [ts_sym_null] = SHIFT(84), + [ts_sym_number] = SHIFT(84), + [ts_sym_object] = SHIFT(84), + [ts_sym_property_access] = SHIFT(128), + [ts_sym_string] = SHIFT(84), + [ts_sym_true] = SHIFT(84), + [ts_aux_sym_token1] = SHIFT(131), + [ts_aux_sym_token9] = SHIFT(165), + }, + [121] = { + [ts_aux_sym_token10] = SHIFT(122), + [ts_aux_sym_token3] = SHIFT(88), + [ts_aux_sym_token8] = SHIFT(123), + [ts_aux_sym_token9] = SHIFT(125), + }, + [122] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 4), + }, + [123] = { + [ts_sym_identifier] = SHIFT(124), + }, + [124] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 3), + }, + [125] = { + [ts_sym__function] = SHIFT(55), + [ts_sym_array] = SHIFT(84), + [ts_sym_assignment] = SHIFT(85), + [ts_sym_expression] = SHIFT(126), + [ts_sym_false] = SHIFT(84), + [ts_sym_function_call] = SHIFT(85), + [ts_sym_function_expression] = SHIFT(85), + [ts_sym_identifier] = SHIFT(128), + [ts_sym_literal] = SHIFT(85), + [ts_sym_null] = SHIFT(84), + [ts_sym_number] = SHIFT(84), + [ts_sym_object] = SHIFT(84), + [ts_sym_property_access] = SHIFT(128), + [ts_sym_string] = SHIFT(84), + [ts_sym_true] = SHIFT(84), + [ts_aux_sym_token1] = SHIFT(131), + [ts_aux_sym_token9] = SHIFT(165), + }, + [126] = { + [ts_aux_sym_token10] = SHIFT(127), + [ts_aux_sym_token3] = SHIFT(88), + [ts_aux_sym_token8] = SHIFT(123), + [ts_aux_sym_token9] = SHIFT(125), + }, + [127] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 4), + }, + [128] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(129), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [129] = { + [ts_sym__function] = SHIFT(55), + [ts_sym_array] = SHIFT(84), + [ts_sym_assignment] = SHIFT(85), + [ts_sym_expression] = SHIFT(130), + [ts_sym_false] = SHIFT(84), + [ts_sym_function_call] = SHIFT(85), + [ts_sym_function_expression] = SHIFT(85), + [ts_sym_identifier] = SHIFT(128), + [ts_sym_literal] = SHIFT(85), + [ts_sym_null] = SHIFT(84), + [ts_sym_number] = SHIFT(84), + [ts_sym_object] = SHIFT(84), + [ts_sym_property_access] = SHIFT(128), + [ts_sym_string] = SHIFT(84), + [ts_sym_true] = SHIFT(84), + [ts_aux_sym_token1] = SHIFT(131), + [ts_aux_sym_token9] = SHIFT(165), + }, + [130] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token3] = SHIFT(88), + [ts_aux_sym_token8] = SHIFT(123), + [ts_aux_sym_token9] = SHIFT(125), + }, + [131] = { + [ts_sym_identifier] = SHIFT(132), + [ts_sym_string] = SHIFT(132), + [ts_aux_sym_token2] = SHIFT(197), + [ts_builtin_sym_error] = SHIFT(198), + }, + [132] = { + [ts_aux_sym_token5] = SHIFT(133), + }, + [133] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(134), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [134] = { + [ts_aux_sym_repeat_helper7] = SHIFT(135), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = SHIFT(113), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), + }, + [135] = { + [ts_aux_sym_token2] = SHIFT(136), + }, + [136] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 6), + }, + [137] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(138), + [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [138] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(139), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [139] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), + }, + [140] = { + [ts_sym_identifier] = SHIFT(141), + [ts_sym_string] = SHIFT(141), + [ts_aux_sym_token2] = SHIFT(193), + [ts_builtin_sym_error] = SHIFT(194), + }, + [141] = { + [ts_aux_sym_token5] = SHIFT(142), + }, + [142] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(143), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [143] = { + [ts_aux_sym_repeat_helper7] = SHIFT(144), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = SHIFT(113), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), + }, + [144] = { + [ts_aux_sym_token2] = SHIFT(145), + }, + [145] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 6), + }, + [146] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(149), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token10] = SHIFT(191), + [ts_aux_sym_token9] = SHIFT(182), + [ts_builtin_sym_error] = SHIFT(192), + }, + [147] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_literal, 1), + }, + [148] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [149] = { + [ts_aux_sym_repeat_helper8] = SHIFT(150), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = SHIFT(157), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), + }, + [150] = { + [ts_aux_sym_token10] = SHIFT(151), + }, + [151] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 4), + }, + [152] = { + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(153), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token4] = SHIFT(156), + [ts_aux_sym_token9] = SHIFT(93), + }, + [153] = { + [ts_aux_sym_repeat_helper5] = SHIFT(154), + [ts_aux_sym_token3] = SHIFT(45), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token7] = SHIFT(49), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), + }, + [154] = { + [ts_aux_sym_token4] = SHIFT(155), + }, + [155] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 5), + }, + [156] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 3), + }, + [157] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(158), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token9] = SHIFT(182), + [ts_builtin_sym_error] = SHIFT(190), + }, + [158] = { + [ts_aux_sym_repeat_helper8] = SHIFT(159), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = SHIFT(157), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), + }, + [159] = { + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 3), + }, + [160] = { + [ts_sym_identifier] = SHIFT(161), + }, + [161] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 3), + }, + [162] = { + [ts_sym__function] = SHIFT(55), + [ts_sym_array] = SHIFT(84), + [ts_sym_assignment] = SHIFT(85), + [ts_sym_expression] = SHIFT(163), + [ts_sym_false] = SHIFT(84), + [ts_sym_function_call] = SHIFT(85), + [ts_sym_function_expression] = SHIFT(85), + [ts_sym_identifier] = SHIFT(128), + [ts_sym_literal] = SHIFT(85), + [ts_sym_null] = SHIFT(84), + [ts_sym_number] = SHIFT(84), + [ts_sym_object] = SHIFT(84), + [ts_sym_property_access] = SHIFT(128), + [ts_sym_string] = SHIFT(84), + [ts_sym_true] = SHIFT(84), + [ts_aux_sym_token1] = SHIFT(131), + [ts_aux_sym_token9] = SHIFT(165), + }, + [163] = { + [ts_aux_sym_token10] = SHIFT(164), + [ts_aux_sym_token3] = SHIFT(88), + [ts_aux_sym_token8] = SHIFT(123), + [ts_aux_sym_token9] = SHIFT(125), + }, + [164] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 4), + }, + [165] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(166), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token10] = SHIFT(188), + [ts_aux_sym_token9] = SHIFT(182), + [ts_builtin_sym_error] = SHIFT(189), + }, + [166] = { + [ts_aux_sym_repeat_helper8] = SHIFT(167), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = SHIFT(157), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), + }, + [167] = { + [ts_aux_sym_token10] = SHIFT(168), + }, + [168] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 4), + }, + [169] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(170), + [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [170] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(171), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token9] = SHIFT(182), + }, + [171] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), + }, + [172] = { + [ts_sym_identifier] = SHIFT(173), + [ts_sym_string] = SHIFT(173), + [ts_aux_sym_token2] = SHIFT(178), + [ts_builtin_sym_error] = SHIFT(179), + }, + [173] = { + [ts_aux_sym_token5] = SHIFT(174), + }, + [174] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(175), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [175] = { + [ts_aux_sym_repeat_helper7] = SHIFT(176), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = SHIFT(113), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), + }, + [176] = { + [ts_aux_sym_token2] = SHIFT(177), + }, + [177] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 6), + }, + [178] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token7] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 2), + }, + [179] = { + [ts_aux_sym_repeat_helper7] = SHIFT(180), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token7] = SHIFT(113), + }, + [180] = { + [ts_aux_sym_token2] = SHIFT(181), + }, + [181] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 4), + }, + [182] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(183), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token10] = SHIFT(186), + [ts_aux_sym_token9] = SHIFT(182), + [ts_builtin_sym_error] = SHIFT(187), + }, + [183] = { + [ts_aux_sym_repeat_helper8] = SHIFT(184), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = SHIFT(157), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), + }, + [184] = { + [ts_aux_sym_token10] = SHIFT(185), + }, + [185] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 4), + }, + [186] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 2), + }, + [187] = { + [ts_aux_sym_repeat_helper8] = SHIFT(184), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token7] = SHIFT(157), + }, + [188] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 2), + }, + [189] = { + [ts_aux_sym_repeat_helper8] = SHIFT(167), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token7] = SHIFT(157), + }, + [190] = { + [ts_aux_sym_repeat_helper8] = SHIFT(159), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token7] = SHIFT(157), + }, + [191] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 2), + }, + [192] = { + [ts_aux_sym_repeat_helper8] = SHIFT(150), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token7] = SHIFT(157), + }, + [193] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token7] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 2), + }, + [194] = { + [ts_aux_sym_repeat_helper7] = SHIFT(195), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token7] = SHIFT(113), + }, + [195] = { + [ts_aux_sym_token2] = SHIFT(196), + }, + [196] = { + [ts_aux_sym_token2] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 4), + }, + [197] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 2), + }, + [198] = { + [ts_aux_sym_repeat_helper7] = SHIFT(199), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token7] = SHIFT(113), + }, + [199] = { + [ts_aux_sym_token2] = SHIFT(200), + }, + [200] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 4), + }, + [201] = { + [ts_aux_sym_repeat_helper7] = SHIFT(202), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token7] = SHIFT(113), + }, + [202] = { + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 3), + }, + [203] = { + [ts_sym__terminator] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token5] = SHIFT(102), + [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_literal, 1), + }, + [204] = { + [ts_aux_sym_token2] = SHIFT(205), + }, + [205] = { [ts_sym__break] = REDUCE(ts_sym_statement_block, 3), [ts_sym__for] = REDUCE(ts_sym_statement_block, 3), [ts_sym__function] = REDUCE(ts_sym_statement_block, 3), @@ -3549,875 +4702,736 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), }, - [99] = { + [206] = { [ts_sym__terminator] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 2), }, - [100] = { - [ts_sym__function] = SHIFT(88), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(103), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(116), - [ts_sym_literal] = SHIFT(102), - [ts_sym_null] = SHIFT(101), - [ts_sym_number] = SHIFT(101), - [ts_sym_object] = SHIFT(101), - [ts_sym_property_access] = SHIFT(102), - [ts_sym_string] = SHIFT(101), - [ts_sym_true] = SHIFT(101), - [ts_aux_sym_token1] = SHIFT(119), - [ts_aux_sym_token10] = SHIFT(164), - [ts_aux_sym_token9] = SHIFT(146), - [ts_builtin_sym_error] = SHIFT(165), + [207] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(208), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token10] = SHIFT(211), + [ts_aux_sym_token9] = SHIFT(182), + [ts_builtin_sym_error] = SHIFT(212), }, - [101] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), - }, - [102] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), - }, - [103] = { - [ts_aux_sym_repeat_helper8] = SHIFT(104), + [208] = { + [ts_aux_sym_repeat_helper8] = SHIFT(209), [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token3] = SHIFT(106), - [ts_aux_sym_token7] = SHIFT(111), - [ts_aux_sym_token8] = SHIFT(114), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = SHIFT(157), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), }, - [104] = { - [ts_aux_sym_token10] = SHIFT(105), + [209] = { + [ts_aux_sym_token10] = SHIFT(210), }, - [105] = { + [210] = { [ts_sym__terminator] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 4), }, - [106] = { - [ts_sym__function] = SHIFT(22), - [ts_sym_array] = SHIFT(38), - [ts_sym_assignment] = SHIFT(39), - [ts_sym_expression] = SHIFT(107), - [ts_sym_false] = SHIFT(38), - [ts_sym_function_call] = SHIFT(39), - [ts_sym_function_expression] = SHIFT(39), - [ts_sym_identifier] = SHIFT(52), - [ts_sym_literal] = SHIFT(39), - [ts_sym_null] = SHIFT(38), - [ts_sym_number] = SHIFT(38), - [ts_sym_object] = SHIFT(38), - [ts_sym_property_access] = SHIFT(39), - [ts_sym_string] = SHIFT(38), - [ts_sym_true] = SHIFT(38), - [ts_aux_sym_token1] = SHIFT(55), - [ts_aux_sym_token4] = SHIFT(110), - [ts_aux_sym_token9] = SHIFT(87), - }, - [107] = { - [ts_aux_sym_repeat_helper5] = SHIFT(108), - [ts_aux_sym_token3] = SHIFT(43), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token7] = SHIFT(47), - [ts_aux_sym_token8] = SHIFT(50), - }, - [108] = { - [ts_aux_sym_token4] = SHIFT(109), - }, - [109] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), - }, - [110] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_function_call, 3), - [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), - [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), - }, - [111] = { - [ts_sym__function] = SHIFT(88), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(112), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(116), - [ts_sym_literal] = SHIFT(102), - [ts_sym_null] = SHIFT(101), - [ts_sym_number] = SHIFT(101), - [ts_sym_object] = SHIFT(101), - [ts_sym_property_access] = SHIFT(102), - [ts_sym_string] = SHIFT(101), - [ts_sym_true] = SHIFT(101), - [ts_aux_sym_token1] = SHIFT(119), - [ts_aux_sym_token9] = SHIFT(146), - [ts_builtin_sym_error] = SHIFT(163), - }, - [112] = { - [ts_aux_sym_repeat_helper8] = SHIFT(113), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token3] = SHIFT(106), - [ts_aux_sym_token7] = SHIFT(111), - [ts_aux_sym_token8] = SHIFT(114), - }, - [113] = { - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 3), - }, - [114] = { - [ts_sym_identifier] = SHIFT(115), - }, - [115] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), - }, - [116] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token6] = SHIFT(117), - [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), - }, - [117] = { - [ts_sym__function] = SHIFT(88), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(118), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(116), - [ts_sym_literal] = SHIFT(102), - [ts_sym_null] = SHIFT(101), - [ts_sym_number] = SHIFT(101), - [ts_sym_object] = SHIFT(101), - [ts_sym_property_access] = SHIFT(102), - [ts_sym_string] = SHIFT(101), - [ts_sym_true] = SHIFT(101), - [ts_aux_sym_token1] = SHIFT(119), - [ts_aux_sym_token9] = SHIFT(146), - }, - [118] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token3] = SHIFT(106), - [ts_aux_sym_token7] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token8] = SHIFT(114), - }, - [119] = { - [ts_sym_identifier] = SHIFT(120), - [ts_sym_string] = SHIFT(120), - [ts_aux_sym_token2] = SHIFT(159), - [ts_builtin_sym_error] = SHIFT(160), - }, - [120] = { - [ts_aux_sym_token5] = SHIFT(121), - }, - [121] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(77), - [ts_sym_assignment] = SHIFT(78), - [ts_sym_expression] = SHIFT(122), - [ts_sym_false] = SHIFT(77), - [ts_sym_function_call] = SHIFT(78), - [ts_sym_function_expression] = SHIFT(78), - [ts_sym_identifier] = SHIFT(132), - [ts_sym_literal] = SHIFT(78), - [ts_sym_null] = SHIFT(77), - [ts_sym_number] = SHIFT(77), - [ts_sym_object] = SHIFT(77), - [ts_sym_property_access] = SHIFT(78), - [ts_sym_string] = SHIFT(77), - [ts_sym_true] = SHIFT(77), - [ts_aux_sym_token1] = SHIFT(135), - [ts_aux_sym_token9] = SHIFT(141), - }, - [122] = { - [ts_aux_sym_repeat_helper7] = SHIFT(123), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token3] = SHIFT(82), - [ts_aux_sym_token7] = SHIFT(125), - [ts_aux_sym_token8] = SHIFT(130), - }, - [123] = { - [ts_aux_sym_token2] = SHIFT(124), - }, - [124] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), - }, - [125] = { - [ts_sym_identifier] = SHIFT(126), - [ts_sym_string] = SHIFT(126), - [ts_builtin_sym_error] = SHIFT(157), - }, - [126] = { - [ts_aux_sym_token5] = SHIFT(127), - }, - [127] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(77), - [ts_sym_assignment] = SHIFT(78), - [ts_sym_expression] = SHIFT(128), - [ts_sym_false] = SHIFT(77), - [ts_sym_function_call] = SHIFT(78), - [ts_sym_function_expression] = SHIFT(78), - [ts_sym_identifier] = SHIFT(132), - [ts_sym_literal] = SHIFT(78), - [ts_sym_null] = SHIFT(77), - [ts_sym_number] = SHIFT(77), - [ts_sym_object] = SHIFT(77), - [ts_sym_property_access] = SHIFT(78), - [ts_sym_string] = SHIFT(77), - [ts_sym_true] = SHIFT(77), - [ts_aux_sym_token1] = SHIFT(135), - [ts_aux_sym_token9] = SHIFT(141), - }, - [128] = { - [ts_aux_sym_repeat_helper7] = SHIFT(129), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token3] = SHIFT(82), - [ts_aux_sym_token7] = SHIFT(125), - [ts_aux_sym_token8] = SHIFT(130), - }, - [129] = { - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 5), - }, - [130] = { - [ts_sym_identifier] = SHIFT(131), - }, - [131] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), - }, - [132] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token6] = SHIFT(133), - [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), - }, - [133] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(77), - [ts_sym_assignment] = SHIFT(78), - [ts_sym_expression] = SHIFT(134), - [ts_sym_false] = SHIFT(77), - [ts_sym_function_call] = SHIFT(78), - [ts_sym_function_expression] = SHIFT(78), - [ts_sym_identifier] = SHIFT(132), - [ts_sym_literal] = SHIFT(78), - [ts_sym_null] = SHIFT(77), - [ts_sym_number] = SHIFT(77), - [ts_sym_object] = SHIFT(77), - [ts_sym_property_access] = SHIFT(78), - [ts_sym_string] = SHIFT(77), - [ts_sym_true] = SHIFT(77), - [ts_aux_sym_token1] = SHIFT(135), - [ts_aux_sym_token9] = SHIFT(141), - }, - [134] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token3] = SHIFT(82), - [ts_aux_sym_token7] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token8] = SHIFT(130), - }, - [135] = { - [ts_sym_identifier] = SHIFT(136), - [ts_sym_string] = SHIFT(136), - [ts_aux_sym_token2] = SHIFT(153), - [ts_builtin_sym_error] = SHIFT(154), - }, - [136] = { - [ts_aux_sym_token5] = SHIFT(137), - }, - [137] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(77), - [ts_sym_assignment] = SHIFT(78), - [ts_sym_expression] = SHIFT(138), - [ts_sym_false] = SHIFT(77), - [ts_sym_function_call] = SHIFT(78), - [ts_sym_function_expression] = SHIFT(78), - [ts_sym_identifier] = SHIFT(132), - [ts_sym_literal] = SHIFT(78), - [ts_sym_null] = SHIFT(77), - [ts_sym_number] = SHIFT(77), - [ts_sym_object] = SHIFT(77), - [ts_sym_property_access] = SHIFT(78), - [ts_sym_string] = SHIFT(77), - [ts_sym_true] = SHIFT(77), - [ts_aux_sym_token1] = SHIFT(135), - [ts_aux_sym_token9] = SHIFT(141), - }, - [138] = { - [ts_aux_sym_repeat_helper7] = SHIFT(139), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token3] = SHIFT(82), - [ts_aux_sym_token7] = SHIFT(125), - [ts_aux_sym_token8] = SHIFT(130), - }, - [139] = { - [ts_aux_sym_token2] = SHIFT(140), - }, - [140] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), - }, - [141] = { - [ts_sym__function] = SHIFT(88), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(142), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(116), - [ts_sym_literal] = SHIFT(102), - [ts_sym_null] = SHIFT(101), - [ts_sym_number] = SHIFT(101), - [ts_sym_object] = SHIFT(101), - [ts_sym_property_access] = SHIFT(102), - [ts_sym_string] = SHIFT(101), - [ts_sym_true] = SHIFT(101), - [ts_aux_sym_token1] = SHIFT(119), - [ts_aux_sym_token10] = SHIFT(145), - [ts_aux_sym_token9] = SHIFT(146), - [ts_builtin_sym_error] = SHIFT(152), - }, - [142] = { - [ts_aux_sym_repeat_helper8] = SHIFT(143), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token3] = SHIFT(106), - [ts_aux_sym_token7] = SHIFT(111), - [ts_aux_sym_token8] = SHIFT(114), - }, - [143] = { - [ts_aux_sym_token10] = SHIFT(144), - }, - [144] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), - }, - [145] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), - }, - [146] = { - [ts_sym__function] = SHIFT(88), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(147), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(116), - [ts_sym_literal] = SHIFT(102), - [ts_sym_null] = SHIFT(101), - [ts_sym_number] = SHIFT(101), - [ts_sym_object] = SHIFT(101), - [ts_sym_property_access] = SHIFT(102), - [ts_sym_string] = SHIFT(101), - [ts_sym_true] = SHIFT(101), - [ts_aux_sym_token1] = SHIFT(119), - [ts_aux_sym_token10] = SHIFT(150), - [ts_aux_sym_token9] = SHIFT(146), - [ts_builtin_sym_error] = SHIFT(151), - }, - [147] = { - [ts_aux_sym_repeat_helper8] = SHIFT(148), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token3] = SHIFT(106), - [ts_aux_sym_token7] = SHIFT(111), - [ts_aux_sym_token8] = SHIFT(114), - }, - [148] = { - [ts_aux_sym_token10] = SHIFT(149), - }, - [149] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), - }, - [150] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), - }, - [151] = { - [ts_aux_sym_repeat_helper8] = SHIFT(148), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token7] = SHIFT(111), - }, - [152] = { - [ts_aux_sym_repeat_helper8] = SHIFT(143), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token7] = SHIFT(111), - }, - [153] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token7] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), - }, - [154] = { - [ts_aux_sym_repeat_helper7] = SHIFT(155), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token7] = SHIFT(125), - }, - [155] = { - [ts_aux_sym_token2] = SHIFT(156), - }, - [156] = { - [ts_aux_sym_token2] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), - }, - [157] = { - [ts_aux_sym_repeat_helper7] = SHIFT(158), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token7] = SHIFT(125), - }, - [158] = { - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 3), - }, - [159] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token7] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), - }, - [160] = { - [ts_aux_sym_repeat_helper7] = SHIFT(161), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token7] = SHIFT(125), - }, - [161] = { - [ts_aux_sym_token2] = SHIFT(162), - }, - [162] = { - [ts_aux_sym_token10] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), - }, - [163] = { - [ts_aux_sym_repeat_helper8] = SHIFT(113), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token7] = SHIFT(111), - }, - [164] = { + [211] = { [ts_sym__terminator] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 2), }, - [165] = { - [ts_aux_sym_repeat_helper8] = SHIFT(104), + [212] = { + [ts_aux_sym_repeat_helper8] = SHIFT(209), [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token7] = SHIFT(111), + [ts_aux_sym_token7] = SHIFT(157), }, - [166] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_repeat_helper7] = SHIFT(167), - [ts_aux_sym_token2] = SHIFT(98), - [ts_aux_sym_token7] = SHIFT(125), + [213] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_repeat_helper7] = SHIFT(214), + [ts_aux_sym_token2] = SHIFT(205), + [ts_aux_sym_token7] = SHIFT(113), }, - [167] = { - [ts_aux_sym_token2] = SHIFT(168), + [214] = { + [ts_aux_sym_token2] = SHIFT(215), }, - [168] = { + [215] = { [ts_sym__terminator] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 4), }, - [169] = { - [ts_sym__terminator] = SHIFT(68), + [216] = { + [ts_sym__terminator] = SHIFT(63), }, - [170] = { - [ts_aux_sym_token2] = SHIFT(171), + [217] = { + [ts_aux_sym_token2] = SHIFT(218), }, - [171] = { + [218] = { [ts_aux_sym_token10] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), }, - [172] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_token2] = SHIFT(171), + [219] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_token2] = SHIFT(218), }, - [173] = { - [ts_sym_formal_parameters] = SHIFT(174), - [ts_aux_sym_token3] = SHIFT(176), + [220] = { + [ts_sym_formal_parameters] = SHIFT(221), + [ts_aux_sym_token3] = SHIFT(223), }, - [174] = { - [ts_sym_statement_block] = SHIFT(175), - [ts_aux_sym_token1] = SHIFT(91), + [221] = { + [ts_sym_statement_block] = SHIFT(222), + [ts_aux_sym_token1] = SHIFT(97), }, - [175] = { + [222] = { [ts_aux_sym_token10] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 4), }, - [176] = { - [ts_sym_identifier] = SHIFT(177), - [ts_aux_sym_token4] = SHIFT(183), + [223] = { + [ts_sym_identifier] = SHIFT(224), + [ts_aux_sym_token4] = SHIFT(230), }, - [177] = { - [ts_aux_sym_repeat_helper6] = SHIFT(178), + [224] = { + [ts_aux_sym_repeat_helper6] = SHIFT(225), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token7] = SHIFT(180), + [ts_aux_sym_token7] = SHIFT(227), }, - [178] = { - [ts_aux_sym_token4] = SHIFT(179), + [225] = { + [ts_aux_sym_token4] = SHIFT(226), }, - [179] = { + [226] = { [ts_aux_sym_token1] = REDUCE(ts_sym_formal_parameters, 4), }, - [180] = { - [ts_sym_identifier] = SHIFT(181), + [227] = { + [ts_sym_identifier] = SHIFT(228), }, - [181] = { - [ts_aux_sym_repeat_helper6] = SHIFT(182), + [228] = { + [ts_aux_sym_repeat_helper6] = SHIFT(229), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token7] = SHIFT(180), + [ts_aux_sym_token7] = SHIFT(227), }, - [182] = { + [229] = { [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper6, 3), }, - [183] = { + [230] = { [ts_aux_sym_token1] = REDUCE(ts_sym_formal_parameters, 2), }, - [184] = { - [ts_aux_sym_repeat_helper8] = SHIFT(185), + [231] = { + [ts_aux_sym_repeat_helper8] = SHIFT(232), [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token3] = SHIFT(106), - [ts_aux_sym_token7] = SHIFT(111), - [ts_aux_sym_token8] = SHIFT(114), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = SHIFT(157), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), }, - [185] = { - [ts_aux_sym_token10] = SHIFT(186), + [232] = { + [ts_aux_sym_token10] = SHIFT(233), }, - [186] = { + [233] = { [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token4] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 4), }, - [187] = { + [234] = { [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token4] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 2), }, - [188] = { - [ts_aux_sym_repeat_helper8] = SHIFT(185), + [235] = { + [ts_aux_sym_repeat_helper8] = SHIFT(232), [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token7] = SHIFT(111), + [ts_aux_sym_token7] = SHIFT(157), }, - [189] = { - [ts_aux_sym_repeat_helper7] = SHIFT(167), + [236] = { + [ts_sym_identifier] = SHIFT(237), + [ts_sym_string] = SHIFT(237), + [ts_aux_sym_token2] = SHIFT(206), + [ts_builtin_sym_error] = SHIFT(238), + }, + [237] = { + [ts_aux_sym_token5] = SHIFT(102), + }, + [238] = { + [ts_aux_sym_repeat_helper7] = SHIFT(214), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token7] = SHIFT(125), + [ts_aux_sym_token7] = SHIFT(113), }, - [190] = { - [ts_aux_sym_token2] = SHIFT(191), + [239] = { + [ts_aux_sym_token2] = SHIFT(240), }, - [191] = { + [240] = { [ts_aux_sym_token2] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), }, - [192] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_token2] = SHIFT(191), + [241] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_token2] = SHIFT(240), }, - [193] = { - [ts_sym_formal_parameters] = SHIFT(194), - [ts_aux_sym_token3] = SHIFT(176), + [242] = { + [ts_sym_formal_parameters] = SHIFT(243), + [ts_aux_sym_token3] = SHIFT(223), }, - [194] = { - [ts_sym_statement_block] = SHIFT(195), - [ts_aux_sym_token1] = SHIFT(61), + [243] = { + [ts_sym_statement_block] = SHIFT(244), + [ts_aux_sym_token1] = SHIFT(77), }, - [195] = { + [244] = { [ts_aux_sym_token2] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 4), }, - [196] = { - [ts_aux_sym_repeat_helper7] = SHIFT(197), + [245] = { + [ts_aux_sym_repeat_helper7] = SHIFT(246), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token3] = SHIFT(82), - [ts_aux_sym_token7] = SHIFT(125), - [ts_aux_sym_token8] = SHIFT(130), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = SHIFT(113), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), }, - [197] = { - [ts_aux_sym_token2] = SHIFT(198), + [246] = { + [ts_aux_sym_token2] = SHIFT(247), }, - [198] = { + [247] = { [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token4] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 6), }, - [199] = { + [248] = { [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token4] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 2), }, - [200] = { - [ts_aux_sym_repeat_helper7] = SHIFT(201), + [249] = { + [ts_aux_sym_repeat_helper7] = SHIFT(250), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token7] = SHIFT(125), + [ts_aux_sym_token7] = SHIFT(113), }, - [201] = { - [ts_aux_sym_token2] = SHIFT(202), + [250] = { + [ts_aux_sym_token2] = SHIFT(251), }, - [202] = { + [251] = { [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token4] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 4), }, - [203] = { + [252] = { + [ts_sym__terminator] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 3), + }, + [253] = { + [ts_aux_sym_token2] = SHIFT(254), + }, + [254] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), + }, + [255] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_token2] = SHIFT(254), + }, + [256] = { + [ts_sym_formal_parameters] = SHIFT(257), + [ts_aux_sym_token3] = SHIFT(223), + }, + [257] = { + [ts_sym_statement_block] = SHIFT(258), + [ts_aux_sym_token1] = SHIFT(58), + }, + [258] = { + [ts_aux_sym_token10] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 4), + }, + [259] = { + [ts_aux_sym_token10] = SHIFT(260), + [ts_aux_sym_token3] = SHIFT(88), + [ts_aux_sym_token8] = SHIFT(123), + [ts_aux_sym_token9] = SHIFT(125), + }, + [260] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token4] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 4), + }, + [261] = { [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token4] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 3), }, - [204] = { + [262] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 3), + }, + [263] = { + [ts_sym_identifier] = SHIFT(264), + }, + [264] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 3), + }, + [265] = { + [ts_sym__function] = SHIFT(55), + [ts_sym_array] = SHIFT(84), + [ts_sym_assignment] = SHIFT(85), + [ts_sym_expression] = SHIFT(266), + [ts_sym_false] = SHIFT(84), + [ts_sym_function_call] = SHIFT(85), + [ts_sym_function_expression] = SHIFT(85), + [ts_sym_identifier] = SHIFT(128), + [ts_sym_literal] = SHIFT(85), + [ts_sym_null] = SHIFT(84), + [ts_sym_number] = SHIFT(84), + [ts_sym_object] = SHIFT(84), + [ts_sym_property_access] = SHIFT(128), + [ts_sym_string] = SHIFT(84), + [ts_sym_true] = SHIFT(84), + [ts_aux_sym_token1] = SHIFT(131), + [ts_aux_sym_token9] = SHIFT(165), + }, + [266] = { + [ts_aux_sym_token10] = SHIFT(267), + [ts_aux_sym_token3] = SHIFT(88), + [ts_aux_sym_token8] = SHIFT(123), + [ts_aux_sym_token9] = SHIFT(125), + }, + [267] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 4), + }, + [268] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [269] = { + [ts_sym__terminator] = SHIFT(37), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [270] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [271] = { + [ts_sym_identifier] = SHIFT(272), + [ts_sym_string] = SHIFT(272), + [ts_aux_sym_token2] = SHIFT(277), + [ts_builtin_sym_error] = SHIFT(278), + }, + [272] = { + [ts_aux_sym_token5] = SHIFT(273), + }, + [273] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(274), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [274] = { + [ts_aux_sym_repeat_helper7] = SHIFT(275), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = SHIFT(113), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), + }, + [275] = { + [ts_aux_sym_token2] = SHIFT(276), + }, + [276] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 6), + }, + [277] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 2), + }, + [278] = { + [ts_aux_sym_repeat_helper7] = SHIFT(279), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token7] = SHIFT(113), + }, + [279] = { + [ts_aux_sym_token2] = SHIFT(280), + }, + [280] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 4), + }, + [281] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(282), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token10] = SHIFT(285), + [ts_aux_sym_token9] = SHIFT(182), + [ts_builtin_sym_error] = SHIFT(286), + }, + [282] = { + [ts_aux_sym_repeat_helper8] = SHIFT(283), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = SHIFT(157), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), + }, + [283] = { + [ts_aux_sym_token10] = SHIFT(284), + }, + [284] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 4), + }, + [285] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 2), + }, + [286] = { + [ts_aux_sym_repeat_helper8] = SHIFT(283), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token7] = SHIFT(157), + }, + [287] = { + [ts_aux_sym_token2] = SHIFT(288), + }, + [288] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token4] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token7] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), + }, + [289] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_token2] = SHIFT(288), + }, + [290] = { + [ts_sym_formal_parameters] = SHIFT(291), + [ts_aux_sym_token3] = SHIFT(223), + }, + [291] = { + [ts_sym_statement_block] = SHIFT(292), + [ts_aux_sym_token1] = SHIFT(33), + }, + [292] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token4] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 4), + }, + [293] = { + [ts_aux_sym_repeat_helper5] = SHIFT(294), + [ts_aux_sym_token3] = SHIFT(45), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token7] = SHIFT(49), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), + }, + [294] = { + [ts_aux_sym_token4] = SHIFT(295), + }, + [295] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token4] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 5), + }, + [296] = { [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token4] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 3), }, - [205] = { - [ts_aux_sym_token1] = SHIFT(206), + [297] = { + [ts_aux_sym_token1] = SHIFT(298), }, - [206] = { - [ts_sym__case] = SHIFT(207), - [ts_sym__default] = SHIFT(258), - [ts_sym_switch_case] = SHIFT(265), - [ts_aux_sym_repeat_helper3] = SHIFT(356), + [298] = { + [ts_sym__case] = SHIFT(299), + [ts_sym__default] = SHIFT(350), + [ts_sym_switch_case] = SHIFT(357), + [ts_aux_sym_repeat_helper3] = SHIFT(454), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), }, - [207] = { - [ts_sym__function] = SHIFT(208), - [ts_sym_array] = SHIFT(218), - [ts_sym_assignment] = SHIFT(219), - [ts_sym_expression] = SHIFT(220), - [ts_sym_false] = SHIFT(218), - [ts_sym_function_call] = SHIFT(219), - [ts_sym_function_expression] = SHIFT(219), - [ts_sym_identifier] = SHIFT(337), - [ts_sym_literal] = SHIFT(219), - [ts_sym_null] = SHIFT(218), - [ts_sym_number] = SHIFT(218), - [ts_sym_object] = SHIFT(218), - [ts_sym_property_access] = SHIFT(219), - [ts_sym_string] = SHIFT(218), - [ts_sym_true] = SHIFT(218), - [ts_aux_sym_token1] = SHIFT(340), - [ts_aux_sym_token9] = SHIFT(350), + [299] = { + [ts_sym__function] = SHIFT(300), + [ts_sym_array] = SHIFT(310), + [ts_sym_assignment] = SHIFT(311), + [ts_sym_expression] = SHIFT(312), + [ts_sym_false] = SHIFT(310), + [ts_sym_function_call] = SHIFT(311), + [ts_sym_function_expression] = SHIFT(311), + [ts_sym_identifier] = SHIFT(435), + [ts_sym_literal] = SHIFT(311), + [ts_sym_null] = SHIFT(310), + [ts_sym_number] = SHIFT(310), + [ts_sym_object] = SHIFT(310), + [ts_sym_property_access] = SHIFT(435), + [ts_sym_string] = SHIFT(310), + [ts_sym_true] = SHIFT(310), + [ts_aux_sym_token1] = SHIFT(438), + [ts_aux_sym_token9] = SHIFT(448), }, - [208] = { - [ts_sym_formal_parameters] = SHIFT(209), - [ts_sym_identifier] = SHIFT(215), - [ts_aux_sym_token3] = SHIFT(176), + [300] = { + [ts_sym_formal_parameters] = SHIFT(301), + [ts_sym_identifier] = SHIFT(307), + [ts_aux_sym_token3] = SHIFT(223), }, - [209] = { - [ts_sym_statement_block] = SHIFT(210), - [ts_aux_sym_token1] = SHIFT(211), + [301] = { + [ts_sym_statement_block] = SHIFT(302), + [ts_aux_sym_token1] = SHIFT(303), }, - [210] = { + [302] = { [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token5] = REDUCE(ts_sym_function_expression, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 3), }, - [211] = { + [303] = { [ts_sym__break] = SHIFT(9), [ts_sym__for] = SHIFT(11), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(212), - [ts_aux_sym_token1] = SHIFT(94), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(304), + [ts_aux_sym_token1] = SHIFT(100), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper2, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(214), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(306), }, - [212] = { - [ts_aux_sym_token2] = SHIFT(213), + [304] = { + [ts_aux_sym_token2] = SHIFT(305), }, - [213] = { + [305] = { [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token5] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), }, - [214] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_token2] = SHIFT(213), + [306] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_token2] = SHIFT(305), }, - [215] = { - [ts_sym_formal_parameters] = SHIFT(216), - [ts_aux_sym_token3] = SHIFT(176), + [307] = { + [ts_sym_formal_parameters] = SHIFT(308), + [ts_aux_sym_token3] = SHIFT(223), }, - [216] = { - [ts_sym_statement_block] = SHIFT(217), - [ts_aux_sym_token1] = SHIFT(211), + [308] = { + [ts_sym_statement_block] = SHIFT(309), + [ts_aux_sym_token1] = SHIFT(303), }, - [217] = { + [309] = { [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token5] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 4), }, - [218] = { + [310] = { [ts_aux_sym_token3] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token5] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token8] = REDUCE(ts_sym_literal, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_literal, 1), }, - [219] = { + [311] = { [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token5] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, - [220] = { - [ts_aux_sym_token3] = SHIFT(221), - [ts_aux_sym_token5] = SHIFT(226), - [ts_aux_sym_token8] = SHIFT(335), + [312] = { + [ts_aux_sym_token3] = SHIFT(313), + [ts_aux_sym_token5] = SHIFT(318), + [ts_aux_sym_token8] = SHIFT(430), + [ts_aux_sym_token9] = SHIFT(432), }, - [221] = { - [ts_sym__function] = SHIFT(22), - [ts_sym_array] = SHIFT(38), - [ts_sym_assignment] = SHIFT(39), - [ts_sym_expression] = SHIFT(222), - [ts_sym_false] = SHIFT(38), - [ts_sym_function_call] = SHIFT(39), - [ts_sym_function_expression] = SHIFT(39), - [ts_sym_identifier] = SHIFT(52), - [ts_sym_literal] = SHIFT(39), - [ts_sym_null] = SHIFT(38), - [ts_sym_number] = SHIFT(38), - [ts_sym_object] = SHIFT(38), - [ts_sym_property_access] = SHIFT(39), - [ts_sym_string] = SHIFT(38), - [ts_sym_true] = SHIFT(38), - [ts_aux_sym_token1] = SHIFT(55), - [ts_aux_sym_token4] = SHIFT(225), - [ts_aux_sym_token9] = SHIFT(87), + [313] = { + [ts_sym__function] = SHIFT(30), + [ts_sym_array] = SHIFT(40), + [ts_sym_assignment] = SHIFT(41), + [ts_sym_expression] = SHIFT(314), + [ts_sym_false] = SHIFT(40), + [ts_sym_function_call] = SHIFT(41), + [ts_sym_function_expression] = SHIFT(41), + [ts_sym_identifier] = SHIFT(68), + [ts_sym_literal] = SHIFT(41), + [ts_sym_null] = SHIFT(40), + [ts_sym_number] = SHIFT(40), + [ts_sym_object] = SHIFT(40), + [ts_sym_property_access] = SHIFT(68), + [ts_sym_string] = SHIFT(40), + [ts_sym_true] = SHIFT(40), + [ts_aux_sym_token1] = SHIFT(71), + [ts_aux_sym_token4] = SHIFT(317), + [ts_aux_sym_token9] = SHIFT(93), }, - [222] = { - [ts_aux_sym_repeat_helper5] = SHIFT(223), - [ts_aux_sym_token3] = SHIFT(43), + [314] = { + [ts_aux_sym_repeat_helper5] = SHIFT(315), + [ts_aux_sym_token3] = SHIFT(45), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token7] = SHIFT(47), - [ts_aux_sym_token8] = SHIFT(50), + [ts_aux_sym_token7] = SHIFT(49), + [ts_aux_sym_token8] = SHIFT(52), + [ts_aux_sym_token9] = SHIFT(54), }, - [223] = { - [ts_aux_sym_token4] = SHIFT(224), + [315] = { + [ts_aux_sym_token4] = SHIFT(316), }, - [224] = { + [316] = { [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token5] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 5), }, - [225] = { + [317] = { [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token5] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_call, 3), }, - [226] = { - [ts_sym__break] = SHIFT(227), + [318] = { + [ts_sym__break] = SHIFT(319), [ts_sym__case] = REDUCE(ts_aux_sym_repeat_helper4, 0), [ts_sym__default] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_sym__for] = SHIFT(229), + [ts_sym__for] = SHIFT(321), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(237), - [ts_sym__switch] = SHIFT(260), - [ts_sym__var] = SHIFT(291), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(295), - [ts_sym_expression] = SHIFT(296), - [ts_sym_expression_statement] = SHIFT(295), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(295), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(295), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(298), - [ts_sym_statement_block] = SHIFT(295), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(295), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(295), - [ts_aux_sym_repeat_helper4] = SHIFT(334), - [ts_aux_sym_token1] = SHIFT(300), + [ts_sym__if] = SHIFT(329), + [ts_sym__switch] = SHIFT(352), + [ts_sym__var] = SHIFT(386), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(390), + [ts_sym_expression] = SHIFT(391), + [ts_sym_expression_statement] = SHIFT(390), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(390), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(390), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(393), + [ts_sym_statement_block] = SHIFT(390), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(390), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(390), + [ts_aux_sym_repeat_helper4] = SHIFT(429), + [ts_aux_sym_token1] = SHIFT(395), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(304), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(399), }, - [227] = { - [ts_sym__terminator] = SHIFT(228), + [319] = { + [ts_sym__terminator] = SHIFT(320), }, - [228] = { + [320] = { [ts_sym__break] = REDUCE(ts_sym_break_statement, 2), [ts_sym__case] = REDUCE(ts_sym_break_statement, 2), [ts_sym__default] = REDUCE(ts_sym_break_statement, 2), @@ -4437,38 +5451,39 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_break_statement, 2), [ts_builtin_sym_error] = REDUCE(ts_sym_break_statement, 2), }, - [229] = { - [ts_aux_sym_token3] = SHIFT(230), + [321] = { + [ts_aux_sym_token3] = SHIFT(322), }, - [230] = { + [322] = { [ts_sym__function] = SHIFT(5), [ts_sym__var] = SHIFT(13), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(233), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(233), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(325), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(325), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, - [231] = { - [ts_sym__terminator] = SHIFT(232), - [ts_aux_sym_token3] = SHIFT(21), - [ts_aux_sym_token8] = SHIFT(69), + [323] = { + [ts_sym__terminator] = SHIFT(324), + [ts_aux_sym_token3] = SHIFT(64), + [ts_aux_sym_token8] = SHIFT(81), + [ts_aux_sym_token9] = SHIFT(83), }, - [232] = { + [324] = { [ts_sym__function] = REDUCE(ts_sym_expression_statement, 2), [ts_sym_false] = REDUCE(ts_sym_expression_statement, 2), [ts_sym_identifier] = REDUCE(ts_sym_expression_statement, 2), @@ -4480,150 +5495,152 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_expression_statement, 2), [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), }, - [233] = { + [325] = { [ts_sym__function] = SHIFT(5), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(234), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(326), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, - [234] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(235), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(333), + [326] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(327), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(428), }, - [235] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(236), - [ts_aux_sym_token8] = SHIFT(269), + [327] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(328), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [236] = { - [ts_sym__break] = SHIFT(227), - [ts_sym__for] = SHIFT(229), + [328] = { + [ts_sym__break] = SHIFT(319), + [ts_sym__for] = SHIFT(321), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(237), - [ts_sym__switch] = SHIFT(260), - [ts_sym__var] = SHIFT(291), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(295), - [ts_sym_expression] = SHIFT(296), - [ts_sym_expression_statement] = SHIFT(295), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(295), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(295), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(332), - [ts_sym_statement_block] = SHIFT(295), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(295), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(295), - [ts_aux_sym_token1] = SHIFT(300), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(304), + [ts_sym__if] = SHIFT(329), + [ts_sym__switch] = SHIFT(352), + [ts_sym__var] = SHIFT(386), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(390), + [ts_sym_expression] = SHIFT(391), + [ts_sym_expression_statement] = SHIFT(390), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(390), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(390), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(427), + [ts_sym_statement_block] = SHIFT(390), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(390), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(390), + [ts_aux_sym_token1] = SHIFT(395), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(399), }, - [237] = { - [ts_aux_sym_token3] = SHIFT(238), + [329] = { + [ts_aux_sym_token3] = SHIFT(330), }, - [238] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(239), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(331), + [330] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(331), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(426), }, - [239] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(240), - [ts_aux_sym_token8] = SHIFT(269), + [331] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(332), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [240] = { - [ts_sym__break] = SHIFT(241), - [ts_sym__for] = SHIFT(243), + [332] = { + [ts_sym__break] = SHIFT(333), + [ts_sym__for] = SHIFT(335), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(249), - [ts_sym__switch] = SHIFT(253), - [ts_sym__var] = SHIFT(309), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(313), - [ts_sym_expression] = SHIFT(314), - [ts_sym_expression_statement] = SHIFT(313), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(313), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(313), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(328), - [ts_sym_statement_block] = SHIFT(313), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(313), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(313), - [ts_aux_sym_token1] = SHIFT(319), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(323), + [ts_sym__if] = SHIFT(341), + [ts_sym__switch] = SHIFT(345), + [ts_sym__var] = SHIFT(404), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(408), + [ts_sym_expression] = SHIFT(409), + [ts_sym_expression_statement] = SHIFT(408), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(408), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(408), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(423), + [ts_sym_statement_block] = SHIFT(408), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(408), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(408), + [ts_aux_sym_token1] = SHIFT(414), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(418), }, - [241] = { - [ts_sym__terminator] = SHIFT(242), + [333] = { + [ts_sym__terminator] = SHIFT(334), }, - [242] = { + [334] = { [ts_sym__break] = REDUCE(ts_sym_break_statement, 2), [ts_sym__case] = REDUCE(ts_sym_break_statement, 2), [ts_sym__default] = REDUCE(ts_sym_break_statement, 2), @@ -4644,1279 +5661,1416 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_break_statement, 2), [ts_builtin_sym_error] = REDUCE(ts_sym_break_statement, 2), }, - [243] = { - [ts_aux_sym_token3] = SHIFT(244), - }, - [244] = { - [ts_sym__function] = SHIFT(5), - [ts_sym__var] = SHIFT(13), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(245), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(245), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), - }, - [245] = { - [ts_sym__function] = SHIFT(5), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(246), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), - }, - [246] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(247), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(326), - }, - [247] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(248), - [ts_aux_sym_token8] = SHIFT(269), - }, - [248] = { - [ts_sym__break] = SHIFT(241), - [ts_sym__for] = SHIFT(243), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(249), - [ts_sym__switch] = SHIFT(253), - [ts_sym__var] = SHIFT(309), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(313), - [ts_sym_expression] = SHIFT(314), - [ts_sym_expression_statement] = SHIFT(313), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(313), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(313), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(325), - [ts_sym_statement_block] = SHIFT(313), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(313), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(313), - [ts_aux_sym_token1] = SHIFT(319), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(323), - }, - [249] = { - [ts_aux_sym_token3] = SHIFT(250), - }, - [250] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(251), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(324), - }, - [251] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(252), - [ts_aux_sym_token8] = SHIFT(269), - }, - [252] = { - [ts_sym__break] = SHIFT(241), - [ts_sym__for] = SHIFT(243), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(249), - [ts_sym__switch] = SHIFT(253), - [ts_sym__var] = SHIFT(309), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(313), - [ts_sym_expression] = SHIFT(314), - [ts_sym_expression_statement] = SHIFT(313), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(313), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(313), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(316), - [ts_sym_statement_block] = SHIFT(313), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(313), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(313), - [ts_aux_sym_token1] = SHIFT(319), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(323), - }, - [253] = { - [ts_aux_sym_token3] = SHIFT(254), - }, - [254] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(255), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(308), - }, - [255] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(256), - [ts_aux_sym_token8] = SHIFT(269), - }, - [256] = { - [ts_aux_sym_token1] = SHIFT(257), - }, - [257] = { - [ts_sym__case] = SHIFT(207), - [ts_sym__default] = SHIFT(258), - [ts_sym_switch_case] = SHIFT(265), - [ts_aux_sym_repeat_helper3] = SHIFT(306), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), - }, - [258] = { - [ts_aux_sym_token5] = SHIFT(259), - }, - [259] = { - [ts_sym__break] = SHIFT(227), - [ts_sym__case] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_sym__default] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_sym__for] = SHIFT(229), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(237), - [ts_sym__switch] = SHIFT(260), - [ts_sym__var] = SHIFT(291), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(295), - [ts_sym_expression] = SHIFT(296), - [ts_sym_expression_statement] = SHIFT(295), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(295), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(295), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(298), - [ts_sym_statement_block] = SHIFT(295), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(295), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(295), - [ts_aux_sym_repeat_helper4] = SHIFT(305), - [ts_aux_sym_token1] = SHIFT(300), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(304), - }, - [260] = { - [ts_aux_sym_token3] = SHIFT(261), - }, - [261] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(262), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(290), - }, - [262] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(263), - [ts_aux_sym_token8] = SHIFT(269), - }, - [263] = { - [ts_aux_sym_token1] = SHIFT(264), - }, - [264] = { - [ts_sym__case] = SHIFT(207), - [ts_sym__default] = SHIFT(258), - [ts_sym_switch_case] = SHIFT(265), - [ts_aux_sym_repeat_helper3] = SHIFT(267), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), - }, - [265] = { - [ts_sym__case] = SHIFT(207), - [ts_sym__default] = SHIFT(258), - [ts_sym_switch_case] = SHIFT(265), - [ts_aux_sym_repeat_helper3] = SHIFT(266), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), - }, - [266] = { - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 2), - }, - [267] = { - [ts_aux_sym_token2] = SHIFT(268), - }, - [268] = { - [ts_sym__break] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__case] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__default] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__for] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__function] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__if] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__switch] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__var] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_false] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_identifier] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_null] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_number] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_string] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_true] = REDUCE(ts_sym_switch_statement, 7), - [ts_aux_sym_token1] = REDUCE(ts_sym_switch_statement, 7), - [ts_aux_sym_token2] = REDUCE(ts_sym_switch_statement, 7), - [ts_aux_sym_token9] = REDUCE(ts_sym_switch_statement, 7), - [ts_builtin_sym_error] = REDUCE(ts_sym_switch_statement, 7), - }, - [269] = { - [ts_sym_identifier] = SHIFT(270), - }, - [270] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token4] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), - }, - [271] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token6] = SHIFT(272), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), - }, - [272] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(273), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - }, - [273] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token8] = SHIFT(269), - }, - [274] = { - [ts_sym_identifier] = SHIFT(275), - [ts_sym_string] = SHIFT(275), - [ts_aux_sym_token2] = SHIFT(280), - [ts_builtin_sym_error] = SHIFT(281), - }, - [275] = { - [ts_aux_sym_token5] = SHIFT(276), - }, - [276] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(77), - [ts_sym_assignment] = SHIFT(78), - [ts_sym_expression] = SHIFT(277), - [ts_sym_false] = SHIFT(77), - [ts_sym_function_call] = SHIFT(78), - [ts_sym_function_expression] = SHIFT(78), - [ts_sym_identifier] = SHIFT(132), - [ts_sym_literal] = SHIFT(78), - [ts_sym_null] = SHIFT(77), - [ts_sym_number] = SHIFT(77), - [ts_sym_object] = SHIFT(77), - [ts_sym_property_access] = SHIFT(78), - [ts_sym_string] = SHIFT(77), - [ts_sym_true] = SHIFT(77), - [ts_aux_sym_token1] = SHIFT(135), - [ts_aux_sym_token9] = SHIFT(141), - }, - [277] = { - [ts_aux_sym_repeat_helper7] = SHIFT(278), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token3] = SHIFT(82), - [ts_aux_sym_token7] = SHIFT(125), - [ts_aux_sym_token8] = SHIFT(130), - }, - [278] = { - [ts_aux_sym_token2] = SHIFT(279), - }, - [279] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token4] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), - }, - [280] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token4] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), - }, - [281] = { - [ts_aux_sym_repeat_helper7] = SHIFT(282), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token7] = SHIFT(125), - }, - [282] = { - [ts_aux_sym_token2] = SHIFT(283), - }, - [283] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token4] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), - }, - [284] = { - [ts_sym__function] = SHIFT(88), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(285), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(116), - [ts_sym_literal] = SHIFT(102), - [ts_sym_null] = SHIFT(101), - [ts_sym_number] = SHIFT(101), - [ts_sym_object] = SHIFT(101), - [ts_sym_property_access] = SHIFT(102), - [ts_sym_string] = SHIFT(101), - [ts_sym_true] = SHIFT(101), - [ts_aux_sym_token1] = SHIFT(119), - [ts_aux_sym_token10] = SHIFT(288), - [ts_aux_sym_token9] = SHIFT(146), - [ts_builtin_sym_error] = SHIFT(289), - }, - [285] = { - [ts_aux_sym_repeat_helper8] = SHIFT(286), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token3] = SHIFT(106), - [ts_aux_sym_token7] = SHIFT(111), - [ts_aux_sym_token8] = SHIFT(114), - }, - [286] = { - [ts_aux_sym_token10] = SHIFT(287), - }, - [287] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token4] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), - }, - [288] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token4] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), - }, - [289] = { - [ts_aux_sym_repeat_helper8] = SHIFT(286), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token7] = SHIFT(111), - }, - [290] = { - [ts_aux_sym_token4] = SHIFT(263), - }, - [291] = { - [ts_sym_assignment] = SHIFT(292), - [ts_sym_identifier] = SHIFT(294), - }, - [292] = { - [ts_sym__terminator] = SHIFT(293), - }, - [293] = { - [ts_sym__break] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__case] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__default] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__for] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__function] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__if] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__switch] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__var] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_false] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_identifier] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_null] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_number] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_string] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token1] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token2] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), - [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), - }, - [294] = { - [ts_sym__terminator] = SHIFT(293), - [ts_aux_sym_token6] = SHIFT(17), - }, - [295] = { - [ts_sym__break] = REDUCE(ts_sym_statement, 1), - [ts_sym__case] = REDUCE(ts_sym_statement, 1), - [ts_sym__default] = REDUCE(ts_sym_statement, 1), - [ts_sym__for] = REDUCE(ts_sym_statement, 1), - [ts_sym__function] = REDUCE(ts_sym_statement, 1), - [ts_sym__if] = REDUCE(ts_sym_statement, 1), - [ts_sym__switch] = REDUCE(ts_sym_statement, 1), - [ts_sym__var] = REDUCE(ts_sym_statement, 1), - [ts_sym_false] = REDUCE(ts_sym_statement, 1), - [ts_sym_identifier] = REDUCE(ts_sym_statement, 1), - [ts_sym_null] = REDUCE(ts_sym_statement, 1), - [ts_sym_number] = REDUCE(ts_sym_statement, 1), - [ts_sym_string] = REDUCE(ts_sym_statement, 1), - [ts_sym_true] = REDUCE(ts_sym_statement, 1), - [ts_aux_sym_token1] = REDUCE(ts_sym_statement, 1), - [ts_aux_sym_token2] = REDUCE(ts_sym_statement, 1), - [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), - [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), - }, - [296] = { - [ts_sym__terminator] = SHIFT(297), - [ts_aux_sym_token3] = SHIFT(21), - [ts_aux_sym_token8] = SHIFT(69), - }, - [297] = { - [ts_sym__break] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__case] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__default] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__for] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__function] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__if] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__switch] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__var] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_false] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_identifier] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_null] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_number] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_string] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_true] = REDUCE(ts_sym_expression_statement, 2), - [ts_aux_sym_token1] = REDUCE(ts_sym_expression_statement, 2), - [ts_aux_sym_token2] = REDUCE(ts_sym_expression_statement, 2), - [ts_aux_sym_token9] = REDUCE(ts_sym_expression_statement, 2), - [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), - }, - [298] = { - [ts_sym__break] = SHIFT(227), - [ts_sym__case] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_sym__default] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_sym__for] = SHIFT(229), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(237), - [ts_sym__switch] = SHIFT(260), - [ts_sym__var] = SHIFT(291), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(295), - [ts_sym_expression] = SHIFT(296), - [ts_sym_expression_statement] = SHIFT(295), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(295), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(295), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(298), - [ts_sym_statement_block] = SHIFT(295), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(295), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(295), - [ts_aux_sym_repeat_helper4] = SHIFT(299), - [ts_aux_sym_token1] = SHIFT(300), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(304), - }, - [299] = { - [ts_sym__case] = REDUCE(ts_aux_sym_repeat_helper4, 2), - [ts_sym__default] = REDUCE(ts_aux_sym_repeat_helper4, 2), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 2), - }, - [300] = { - [ts_sym__break] = SHIFT(9), - [ts_sym__for] = SHIFT(11), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(96), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(301), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = SHIFT(99), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(303), - }, - [301] = { - [ts_aux_sym_token2] = SHIFT(302), - }, - [302] = { - [ts_sym__break] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__case] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__default] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__for] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__function] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__if] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__switch] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__var] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_false] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_identifier] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_null] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_number] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_string] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_true] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token1] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token2] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), - [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), - }, - [303] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_repeat_helper7] = SHIFT(167), - [ts_aux_sym_token2] = SHIFT(302), - [ts_aux_sym_token7] = SHIFT(125), - }, - [304] = { - [ts_sym__terminator] = SHIFT(297), - }, - [305] = { - [ts_sym__case] = REDUCE(ts_sym_switch_case, 3), - [ts_sym__default] = REDUCE(ts_sym_switch_case, 3), - [ts_aux_sym_token2] = REDUCE(ts_sym_switch_case, 3), - }, - [306] = { - [ts_aux_sym_token2] = SHIFT(307), - }, - [307] = { - [ts_sym__break] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__case] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__default] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__else] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__for] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__function] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__if] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__switch] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__var] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_false] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_identifier] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_null] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_number] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_string] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_true] = REDUCE(ts_sym_switch_statement, 7), - [ts_aux_sym_token1] = REDUCE(ts_sym_switch_statement, 7), - [ts_aux_sym_token2] = REDUCE(ts_sym_switch_statement, 7), - [ts_aux_sym_token9] = REDUCE(ts_sym_switch_statement, 7), - [ts_builtin_sym_error] = REDUCE(ts_sym_switch_statement, 7), - }, - [308] = { - [ts_aux_sym_token4] = SHIFT(256), - }, - [309] = { - [ts_sym_assignment] = SHIFT(310), - [ts_sym_identifier] = SHIFT(312), - }, - [310] = { - [ts_sym__terminator] = SHIFT(311), - }, - [311] = { - [ts_sym__break] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__case] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__default] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__else] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__for] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__function] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__if] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__switch] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym__var] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_false] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_identifier] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_null] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_number] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_string] = REDUCE(ts_sym_var_declaration, 3), - [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token1] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token2] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), - [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), - }, - [312] = { - [ts_sym__terminator] = SHIFT(311), - [ts_aux_sym_token6] = SHIFT(17), - }, - [313] = { - [ts_sym__break] = REDUCE(ts_sym_statement, 1), - [ts_sym__case] = REDUCE(ts_sym_statement, 1), - [ts_sym__default] = REDUCE(ts_sym_statement, 1), - [ts_sym__else] = REDUCE(ts_sym_statement, 1), - [ts_sym__for] = REDUCE(ts_sym_statement, 1), - [ts_sym__function] = REDUCE(ts_sym_statement, 1), - [ts_sym__if] = REDUCE(ts_sym_statement, 1), - [ts_sym__switch] = REDUCE(ts_sym_statement, 1), - [ts_sym__var] = REDUCE(ts_sym_statement, 1), - [ts_sym_false] = REDUCE(ts_sym_statement, 1), - [ts_sym_identifier] = REDUCE(ts_sym_statement, 1), - [ts_sym_null] = REDUCE(ts_sym_statement, 1), - [ts_sym_number] = REDUCE(ts_sym_statement, 1), - [ts_sym_string] = REDUCE(ts_sym_statement, 1), - [ts_sym_true] = REDUCE(ts_sym_statement, 1), - [ts_aux_sym_token1] = REDUCE(ts_sym_statement, 1), - [ts_aux_sym_token2] = REDUCE(ts_sym_statement, 1), - [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), - [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), - }, - [314] = { - [ts_sym__terminator] = SHIFT(315), - [ts_aux_sym_token3] = SHIFT(21), - [ts_aux_sym_token8] = SHIFT(69), - }, - [315] = { - [ts_sym__break] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__case] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__default] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__else] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__for] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__function] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__if] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__switch] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym__var] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_false] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_identifier] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_null] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_number] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_string] = REDUCE(ts_sym_expression_statement, 2), - [ts_sym_true] = REDUCE(ts_sym_expression_statement, 2), - [ts_aux_sym_token1] = REDUCE(ts_sym_expression_statement, 2), - [ts_aux_sym_token2] = REDUCE(ts_sym_expression_statement, 2), - [ts_aux_sym_token9] = REDUCE(ts_sym_expression_statement, 2), - [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), - }, - [316] = { - [ts_sym__break] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__case] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__default] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__else] = SHIFT(317), - [ts_sym__for] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__function] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__if] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__switch] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__var] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_false] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_identifier] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_null] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_number] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_string] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_true] = REDUCE(ts_sym_if_statement, 5), - [ts_aux_sym_token1] = REDUCE(ts_sym_if_statement, 5), - [ts_aux_sym_token2] = REDUCE(ts_sym_if_statement, 5), - [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 5), - [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), - }, - [317] = { - [ts_sym__break] = SHIFT(241), - [ts_sym__for] = SHIFT(243), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(249), - [ts_sym__switch] = SHIFT(253), - [ts_sym__var] = SHIFT(309), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(313), - [ts_sym_expression] = SHIFT(314), - [ts_sym_expression_statement] = SHIFT(313), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(313), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(313), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(318), - [ts_sym_statement_block] = SHIFT(313), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(313), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(313), - [ts_aux_sym_token1] = SHIFT(319), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(323), - }, - [318] = { - [ts_sym__break] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__case] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__default] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__else] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__for] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__function] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__if] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__switch] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__var] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_false] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_identifier] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_null] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_number] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_string] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_true] = REDUCE(ts_sym_if_statement, 7), - [ts_aux_sym_token1] = REDUCE(ts_sym_if_statement, 7), - [ts_aux_sym_token2] = REDUCE(ts_sym_if_statement, 7), - [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 7), - [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), - }, - [319] = { - [ts_sym__break] = SHIFT(9), - [ts_sym__for] = SHIFT(11), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(96), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(320), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = SHIFT(99), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(322), - }, - [320] = { - [ts_aux_sym_token2] = SHIFT(321), - }, - [321] = { - [ts_sym__break] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__case] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__default] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__else] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__for] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__function] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__if] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__switch] = REDUCE(ts_sym_statement_block, 3), - [ts_sym__var] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_false] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_identifier] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_null] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_number] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_string] = REDUCE(ts_sym_statement_block, 3), - [ts_sym_true] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token1] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token2] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), - [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), - }, - [322] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_repeat_helper7] = SHIFT(167), - [ts_aux_sym_token2] = SHIFT(321), - [ts_aux_sym_token7] = SHIFT(125), - }, - [323] = { - [ts_sym__terminator] = SHIFT(315), - }, - [324] = { - [ts_aux_sym_token4] = SHIFT(252), - }, - [325] = { - [ts_sym__break] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__case] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__default] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__else] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__for] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__function] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__if] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__switch] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__var] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_false] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_identifier] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_null] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_number] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_string] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_true] = REDUCE(ts_sym_for_statement, 7), - [ts_aux_sym_token1] = REDUCE(ts_sym_for_statement, 7), - [ts_aux_sym_token2] = REDUCE(ts_sym_for_statement, 7), - [ts_aux_sym_token9] = REDUCE(ts_sym_for_statement, 7), - [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), - }, - [326] = { - [ts_aux_sym_token4] = SHIFT(248), - }, - [327] = { - [ts_sym__terminator] = SHIFT(232), - }, - [328] = { - [ts_sym__break] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__case] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__default] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__else] = SHIFT(329), - [ts_sym__for] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__function] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__if] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__switch] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__var] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_false] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_identifier] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_null] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_number] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_string] = REDUCE(ts_sym_if_statement, 5), - [ts_sym_true] = REDUCE(ts_sym_if_statement, 5), - [ts_aux_sym_token1] = REDUCE(ts_sym_if_statement, 5), - [ts_aux_sym_token2] = REDUCE(ts_sym_if_statement, 5), - [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 5), - [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), - }, - [329] = { - [ts_sym__break] = SHIFT(227), - [ts_sym__for] = SHIFT(229), - [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(237), - [ts_sym__switch] = SHIFT(260), - [ts_sym__var] = SHIFT(291), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(295), - [ts_sym_expression] = SHIFT(296), - [ts_sym_expression_statement] = SHIFT(295), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(295), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(295), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(330), - [ts_sym_statement_block] = SHIFT(295), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(295), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(295), - [ts_aux_sym_token1] = SHIFT(300), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(304), - }, - [330] = { - [ts_sym__break] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__case] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__default] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__for] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__function] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__if] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__switch] = REDUCE(ts_sym_if_statement, 7), - [ts_sym__var] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_false] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_identifier] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_null] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_number] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_string] = REDUCE(ts_sym_if_statement, 7), - [ts_sym_true] = REDUCE(ts_sym_if_statement, 7), - [ts_aux_sym_token1] = REDUCE(ts_sym_if_statement, 7), - [ts_aux_sym_token2] = REDUCE(ts_sym_if_statement, 7), - [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 7), - [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), - }, - [331] = { - [ts_aux_sym_token4] = SHIFT(240), - }, - [332] = { - [ts_sym__break] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__case] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__default] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__for] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__function] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__if] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__switch] = REDUCE(ts_sym_for_statement, 7), - [ts_sym__var] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_false] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_identifier] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_null] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_number] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_string] = REDUCE(ts_sym_for_statement, 7), - [ts_sym_true] = REDUCE(ts_sym_for_statement, 7), - [ts_aux_sym_token1] = REDUCE(ts_sym_for_statement, 7), - [ts_aux_sym_token2] = REDUCE(ts_sym_for_statement, 7), - [ts_aux_sym_token9] = REDUCE(ts_sym_for_statement, 7), - [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), - }, - [333] = { - [ts_aux_sym_token4] = SHIFT(236), - }, - [334] = { - [ts_sym__case] = REDUCE(ts_sym_switch_case, 4), - [ts_sym__default] = REDUCE(ts_sym_switch_case, 4), - [ts_aux_sym_token2] = REDUCE(ts_sym_switch_case, 4), - }, [335] = { - [ts_sym_identifier] = SHIFT(336), + [ts_aux_sym_token3] = SHIFT(336), }, [336] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token5] = REDUCE(ts_sym_property_access, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [ts_sym__function] = SHIFT(5), + [ts_sym__var] = SHIFT(13), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(337), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(337), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, [337] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token5] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token6] = SHIFT(338), - [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_sym__function] = SHIFT(5), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(338), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, [338] = { - [ts_sym__function] = SHIFT(208), - [ts_sym_array] = SHIFT(218), - [ts_sym_assignment] = SHIFT(219), + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), [ts_sym_expression] = SHIFT(339), - [ts_sym_false] = SHIFT(218), - [ts_sym_function_call] = SHIFT(219), - [ts_sym_function_expression] = SHIFT(219), - [ts_sym_identifier] = SHIFT(337), - [ts_sym_literal] = SHIFT(219), - [ts_sym_null] = SHIFT(218), - [ts_sym_number] = SHIFT(218), - [ts_sym_object] = SHIFT(218), - [ts_sym_property_access] = SHIFT(219), - [ts_sym_string] = SHIFT(218), - [ts_sym_true] = SHIFT(218), - [ts_aux_sym_token1] = SHIFT(340), - [ts_aux_sym_token9] = SHIFT(350), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(421), }, [339] = { - [ts_aux_sym_token3] = SHIFT(221), - [ts_aux_sym_token5] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token8] = SHIFT(335), + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(340), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, [340] = { - [ts_sym_identifier] = SHIFT(341), - [ts_sym_string] = SHIFT(341), - [ts_aux_sym_token2] = SHIFT(346), - [ts_builtin_sym_error] = SHIFT(347), + [ts_sym__break] = SHIFT(333), + [ts_sym__for] = SHIFT(335), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(341), + [ts_sym__switch] = SHIFT(345), + [ts_sym__var] = SHIFT(404), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(408), + [ts_sym_expression] = SHIFT(409), + [ts_sym_expression_statement] = SHIFT(408), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(408), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(408), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(420), + [ts_sym_statement_block] = SHIFT(408), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(408), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(408), + [ts_aux_sym_token1] = SHIFT(414), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(418), }, [341] = { - [ts_aux_sym_token5] = SHIFT(342), + [ts_aux_sym_token3] = SHIFT(342), }, [342] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(77), - [ts_sym_assignment] = SHIFT(78), + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), [ts_sym_expression] = SHIFT(343), - [ts_sym_false] = SHIFT(77), - [ts_sym_function_call] = SHIFT(78), - [ts_sym_function_expression] = SHIFT(78), - [ts_sym_identifier] = SHIFT(132), - [ts_sym_literal] = SHIFT(78), - [ts_sym_null] = SHIFT(77), - [ts_sym_number] = SHIFT(77), - [ts_sym_object] = SHIFT(77), - [ts_sym_property_access] = SHIFT(78), - [ts_sym_string] = SHIFT(77), - [ts_sym_true] = SHIFT(77), - [ts_aux_sym_token1] = SHIFT(135), - [ts_aux_sym_token9] = SHIFT(141), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(419), }, [343] = { - [ts_aux_sym_repeat_helper7] = SHIFT(344), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token3] = SHIFT(82), - [ts_aux_sym_token7] = SHIFT(125), - [ts_aux_sym_token8] = SHIFT(130), + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(344), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, [344] = { - [ts_aux_sym_token2] = SHIFT(345), + [ts_sym__break] = SHIFT(333), + [ts_sym__for] = SHIFT(335), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(341), + [ts_sym__switch] = SHIFT(345), + [ts_sym__var] = SHIFT(404), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(408), + [ts_sym_expression] = SHIFT(409), + [ts_sym_expression_statement] = SHIFT(408), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(408), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(408), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(411), + [ts_sym_statement_block] = SHIFT(408), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(408), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(408), + [ts_aux_sym_token1] = SHIFT(414), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(418), }, [345] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token5] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token3] = SHIFT(346), }, [346] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token5] = REDUCE(ts_sym_object, 2), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(347), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(403), }, [347] = { - [ts_aux_sym_repeat_helper7] = SHIFT(348), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), - [ts_aux_sym_token7] = SHIFT(125), + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(348), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, [348] = { - [ts_aux_sym_token2] = SHIFT(349), + [ts_aux_sym_token1] = SHIFT(349), }, [349] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token5] = REDUCE(ts_sym_object, 4), - [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), + [ts_sym__case] = SHIFT(299), + [ts_sym__default] = SHIFT(350), + [ts_sym_switch_case] = SHIFT(357), + [ts_aux_sym_repeat_helper3] = SHIFT(401), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), }, [350] = { - [ts_sym__function] = SHIFT(88), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(351), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(116), - [ts_sym_literal] = SHIFT(102), - [ts_sym_null] = SHIFT(101), - [ts_sym_number] = SHIFT(101), - [ts_sym_object] = SHIFT(101), - [ts_sym_property_access] = SHIFT(102), - [ts_sym_string] = SHIFT(101), - [ts_sym_true] = SHIFT(101), - [ts_aux_sym_token1] = SHIFT(119), - [ts_aux_sym_token10] = SHIFT(354), - [ts_aux_sym_token9] = SHIFT(146), - [ts_builtin_sym_error] = SHIFT(355), + [ts_aux_sym_token5] = SHIFT(351), }, [351] = { - [ts_aux_sym_repeat_helper8] = SHIFT(352), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token3] = SHIFT(106), - [ts_aux_sym_token7] = SHIFT(111), - [ts_aux_sym_token8] = SHIFT(114), + [ts_sym__break] = SHIFT(319), + [ts_sym__case] = REDUCE(ts_aux_sym_repeat_helper4, 0), + [ts_sym__default] = REDUCE(ts_aux_sym_repeat_helper4, 0), + [ts_sym__for] = SHIFT(321), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(329), + [ts_sym__switch] = SHIFT(352), + [ts_sym__var] = SHIFT(386), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(390), + [ts_sym_expression] = SHIFT(391), + [ts_sym_expression_statement] = SHIFT(390), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(390), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(390), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(393), + [ts_sym_statement_block] = SHIFT(390), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(390), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(390), + [ts_aux_sym_repeat_helper4] = SHIFT(400), + [ts_aux_sym_token1] = SHIFT(395), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 0), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(399), }, [352] = { - [ts_aux_sym_token10] = SHIFT(353), + [ts_aux_sym_token3] = SHIFT(353), }, [353] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token5] = REDUCE(ts_sym_array, 4), - [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(354), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(385), }, [354] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token5] = REDUCE(ts_sym_array, 2), - [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(355), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, [355] = { - [ts_aux_sym_repeat_helper8] = SHIFT(352), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), - [ts_aux_sym_token7] = SHIFT(111), + [ts_aux_sym_token1] = SHIFT(356), }, [356] = { - [ts_aux_sym_token2] = SHIFT(357), + [ts_sym__case] = SHIFT(299), + [ts_sym__default] = SHIFT(350), + [ts_sym_switch_case] = SHIFT(357), + [ts_aux_sym_repeat_helper3] = SHIFT(359), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), }, [357] = { - [ts_sym__break] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__for] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__function] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__if] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__switch] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym__var] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_false] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_identifier] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_null] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_number] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_string] = REDUCE(ts_sym_switch_statement, 7), - [ts_sym_true] = REDUCE(ts_sym_switch_statement, 7), - [ts_aux_sym_token1] = REDUCE(ts_sym_switch_statement, 7), - [ts_aux_sym_token2] = REDUCE(ts_sym_switch_statement, 7), - [ts_aux_sym_token9] = REDUCE(ts_sym_switch_statement, 7), - [ts_builtin_sym_error] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__case] = SHIFT(299), + [ts_sym__default] = SHIFT(350), + [ts_sym_switch_case] = SHIFT(357), + [ts_aux_sym_repeat_helper3] = SHIFT(358), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), }, [358] = { - [ts_aux_sym_token4] = SHIFT(205), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 2), }, [359] = { [ts_aux_sym_token2] = SHIFT(360), }, [360] = { + [ts_sym__break] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__case] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__default] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__for] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__function] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__if] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__switch] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__var] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_false] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_identifier] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_null] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_number] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_string] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_true] = REDUCE(ts_sym_switch_statement, 7), + [ts_aux_sym_token1] = REDUCE(ts_sym_switch_statement, 7), + [ts_aux_sym_token2] = REDUCE(ts_sym_switch_statement, 7), + [ts_aux_sym_token9] = REDUCE(ts_sym_switch_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_switch_statement, 7), + }, + [361] = { + [ts_sym_identifier] = SHIFT(362), + }, + [362] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token4] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 3), + }, + [363] = { + [ts_sym__function] = SHIFT(55), + [ts_sym_array] = SHIFT(84), + [ts_sym_assignment] = SHIFT(85), + [ts_sym_expression] = SHIFT(364), + [ts_sym_false] = SHIFT(84), + [ts_sym_function_call] = SHIFT(85), + [ts_sym_function_expression] = SHIFT(85), + [ts_sym_identifier] = SHIFT(128), + [ts_sym_literal] = SHIFT(85), + [ts_sym_null] = SHIFT(84), + [ts_sym_number] = SHIFT(84), + [ts_sym_object] = SHIFT(84), + [ts_sym_property_access] = SHIFT(128), + [ts_sym_string] = SHIFT(84), + [ts_sym_true] = SHIFT(84), + [ts_aux_sym_token1] = SHIFT(131), + [ts_aux_sym_token9] = SHIFT(165), + }, + [364] = { + [ts_aux_sym_token10] = SHIFT(365), + [ts_aux_sym_token3] = SHIFT(88), + [ts_aux_sym_token8] = SHIFT(123), + [ts_aux_sym_token9] = SHIFT(125), + }, + [365] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token4] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 4), + }, + [366] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(367), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [367] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(368), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + }, + [368] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), + }, + [369] = { + [ts_sym_identifier] = SHIFT(370), + [ts_sym_string] = SHIFT(370), + [ts_aux_sym_token2] = SHIFT(375), + [ts_builtin_sym_error] = SHIFT(376), + }, + [370] = { + [ts_aux_sym_token5] = SHIFT(371), + }, + [371] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(372), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [372] = { + [ts_aux_sym_repeat_helper7] = SHIFT(373), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = SHIFT(113), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), + }, + [373] = { + [ts_aux_sym_token2] = SHIFT(374), + }, + [374] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token4] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 6), + }, + [375] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token4] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 2), + }, + [376] = { + [ts_aux_sym_repeat_helper7] = SHIFT(377), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token7] = SHIFT(113), + }, + [377] = { + [ts_aux_sym_token2] = SHIFT(378), + }, + [378] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token4] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 4), + }, + [379] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(380), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token10] = SHIFT(383), + [ts_aux_sym_token9] = SHIFT(182), + [ts_builtin_sym_error] = SHIFT(384), + }, + [380] = { + [ts_aux_sym_repeat_helper8] = SHIFT(381), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = SHIFT(157), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), + }, + [381] = { + [ts_aux_sym_token10] = SHIFT(382), + }, + [382] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token4] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 4), + }, + [383] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token4] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 2), + }, + [384] = { + [ts_aux_sym_repeat_helper8] = SHIFT(381), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token7] = SHIFT(157), + }, + [385] = { + [ts_aux_sym_token4] = SHIFT(355), + }, + [386] = { + [ts_sym__function] = SHIFT(14), + [ts_sym_array] = SHIFT(35), + [ts_sym_assignment] = SHIFT(387), + [ts_sym_expression] = SHIFT(38), + [ts_sym_false] = SHIFT(35), + [ts_sym_function_call] = SHIFT(268), + [ts_sym_function_expression] = SHIFT(268), + [ts_sym_identifier] = SHIFT(389), + [ts_sym_literal] = SHIFT(268), + [ts_sym_null] = SHIFT(35), + [ts_sym_number] = SHIFT(35), + [ts_sym_object] = SHIFT(35), + [ts_sym_property_access] = SHIFT(270), + [ts_sym_string] = SHIFT(35), + [ts_sym_true] = SHIFT(35), + [ts_aux_sym_token1] = SHIFT(271), + [ts_aux_sym_token9] = SHIFT(281), + }, + [387] = { + [ts_sym__terminator] = SHIFT(388), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [388] = { + [ts_sym__break] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__case] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__default] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__for] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__function] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__if] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__switch] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__var] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_false] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_identifier] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_null] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_number] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_string] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), + [ts_aux_sym_token1] = REDUCE(ts_sym_var_declaration, 3), + [ts_aux_sym_token2] = REDUCE(ts_sym_var_declaration, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), + [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), + }, + [389] = { + [ts_sym__terminator] = SHIFT(388), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [390] = { + [ts_sym__break] = REDUCE(ts_sym_statement, 1), + [ts_sym__case] = REDUCE(ts_sym_statement, 1), + [ts_sym__default] = REDUCE(ts_sym_statement, 1), + [ts_sym__for] = REDUCE(ts_sym_statement, 1), + [ts_sym__function] = REDUCE(ts_sym_statement, 1), + [ts_sym__if] = REDUCE(ts_sym_statement, 1), + [ts_sym__switch] = REDUCE(ts_sym_statement, 1), + [ts_sym__var] = REDUCE(ts_sym_statement, 1), + [ts_sym_false] = REDUCE(ts_sym_statement, 1), + [ts_sym_identifier] = REDUCE(ts_sym_statement, 1), + [ts_sym_null] = REDUCE(ts_sym_statement, 1), + [ts_sym_number] = REDUCE(ts_sym_statement, 1), + [ts_sym_string] = REDUCE(ts_sym_statement, 1), + [ts_sym_true] = REDUCE(ts_sym_statement, 1), + [ts_aux_sym_token1] = REDUCE(ts_sym_statement, 1), + [ts_aux_sym_token2] = REDUCE(ts_sym_statement, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), + }, + [391] = { + [ts_sym__terminator] = SHIFT(392), + [ts_aux_sym_token3] = SHIFT(64), + [ts_aux_sym_token8] = SHIFT(81), + [ts_aux_sym_token9] = SHIFT(83), + }, + [392] = { + [ts_sym__break] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__case] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__default] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__for] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__function] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__if] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__switch] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__var] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_false] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_identifier] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_null] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_number] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_string] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_true] = REDUCE(ts_sym_expression_statement, 2), + [ts_aux_sym_token1] = REDUCE(ts_sym_expression_statement, 2), + [ts_aux_sym_token2] = REDUCE(ts_sym_expression_statement, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression_statement, 2), + [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), + }, + [393] = { + [ts_sym__break] = SHIFT(319), + [ts_sym__case] = REDUCE(ts_aux_sym_repeat_helper4, 0), + [ts_sym__default] = REDUCE(ts_aux_sym_repeat_helper4, 0), + [ts_sym__for] = SHIFT(321), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(329), + [ts_sym__switch] = SHIFT(352), + [ts_sym__var] = SHIFT(386), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(390), + [ts_sym_expression] = SHIFT(391), + [ts_sym_expression_statement] = SHIFT(390), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(390), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(390), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(393), + [ts_sym_statement_block] = SHIFT(390), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(390), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(390), + [ts_aux_sym_repeat_helper4] = SHIFT(394), + [ts_aux_sym_token1] = SHIFT(395), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 0), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(399), + }, + [394] = { + [ts_sym__case] = REDUCE(ts_aux_sym_repeat_helper4, 2), + [ts_sym__default] = REDUCE(ts_aux_sym_repeat_helper4, 2), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 2), + }, + [395] = { + [ts_sym__break] = SHIFT(9), + [ts_sym__for] = SHIFT(11), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(101), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(203), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(396), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = SHIFT(206), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(398), + }, + [396] = { + [ts_aux_sym_token2] = SHIFT(397), + }, + [397] = { + [ts_sym__break] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__case] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__default] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__for] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__function] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__if] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__switch] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__var] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_false] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_identifier] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_null] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_number] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_string] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_true] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token1] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token2] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), + }, + [398] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_repeat_helper7] = SHIFT(214), + [ts_aux_sym_token2] = SHIFT(397), + [ts_aux_sym_token7] = SHIFT(113), + }, + [399] = { + [ts_sym__terminator] = SHIFT(392), + }, + [400] = { + [ts_sym__case] = REDUCE(ts_sym_switch_case, 3), + [ts_sym__default] = REDUCE(ts_sym_switch_case, 3), + [ts_aux_sym_token2] = REDUCE(ts_sym_switch_case, 3), + }, + [401] = { + [ts_aux_sym_token2] = SHIFT(402), + }, + [402] = { + [ts_sym__break] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__case] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__default] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__else] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__for] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__function] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__if] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__switch] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__var] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_false] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_identifier] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_null] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_number] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_string] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_true] = REDUCE(ts_sym_switch_statement, 7), + [ts_aux_sym_token1] = REDUCE(ts_sym_switch_statement, 7), + [ts_aux_sym_token2] = REDUCE(ts_sym_switch_statement, 7), + [ts_aux_sym_token9] = REDUCE(ts_sym_switch_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_switch_statement, 7), + }, + [403] = { + [ts_aux_sym_token4] = SHIFT(348), + }, + [404] = { + [ts_sym__function] = SHIFT(14), + [ts_sym_array] = SHIFT(35), + [ts_sym_assignment] = SHIFT(405), + [ts_sym_expression] = SHIFT(38), + [ts_sym_false] = SHIFT(35), + [ts_sym_function_call] = SHIFT(268), + [ts_sym_function_expression] = SHIFT(268), + [ts_sym_identifier] = SHIFT(407), + [ts_sym_literal] = SHIFT(268), + [ts_sym_null] = SHIFT(35), + [ts_sym_number] = SHIFT(35), + [ts_sym_object] = SHIFT(35), + [ts_sym_property_access] = SHIFT(270), + [ts_sym_string] = SHIFT(35), + [ts_sym_true] = SHIFT(35), + [ts_aux_sym_token1] = SHIFT(271), + [ts_aux_sym_token9] = SHIFT(281), + }, + [405] = { + [ts_sym__terminator] = SHIFT(406), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [406] = { + [ts_sym__break] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__case] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__default] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__else] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__for] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__function] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__if] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__switch] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym__var] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_false] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_identifier] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_null] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_number] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_string] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), + [ts_aux_sym_token1] = REDUCE(ts_sym_var_declaration, 3), + [ts_aux_sym_token2] = REDUCE(ts_sym_var_declaration, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), + [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), + }, + [407] = { + [ts_sym__terminator] = SHIFT(406), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [408] = { + [ts_sym__break] = REDUCE(ts_sym_statement, 1), + [ts_sym__case] = REDUCE(ts_sym_statement, 1), + [ts_sym__default] = REDUCE(ts_sym_statement, 1), + [ts_sym__else] = REDUCE(ts_sym_statement, 1), + [ts_sym__for] = REDUCE(ts_sym_statement, 1), + [ts_sym__function] = REDUCE(ts_sym_statement, 1), + [ts_sym__if] = REDUCE(ts_sym_statement, 1), + [ts_sym__switch] = REDUCE(ts_sym_statement, 1), + [ts_sym__var] = REDUCE(ts_sym_statement, 1), + [ts_sym_false] = REDUCE(ts_sym_statement, 1), + [ts_sym_identifier] = REDUCE(ts_sym_statement, 1), + [ts_sym_null] = REDUCE(ts_sym_statement, 1), + [ts_sym_number] = REDUCE(ts_sym_statement, 1), + [ts_sym_string] = REDUCE(ts_sym_statement, 1), + [ts_sym_true] = REDUCE(ts_sym_statement, 1), + [ts_aux_sym_token1] = REDUCE(ts_sym_statement, 1), + [ts_aux_sym_token2] = REDUCE(ts_sym_statement, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), + }, + [409] = { + [ts_sym__terminator] = SHIFT(410), + [ts_aux_sym_token3] = SHIFT(64), + [ts_aux_sym_token8] = SHIFT(81), + [ts_aux_sym_token9] = SHIFT(83), + }, + [410] = { + [ts_sym__break] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__case] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__default] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__else] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__for] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__function] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__if] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__switch] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym__var] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_false] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_identifier] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_null] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_number] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_string] = REDUCE(ts_sym_expression_statement, 2), + [ts_sym_true] = REDUCE(ts_sym_expression_statement, 2), + [ts_aux_sym_token1] = REDUCE(ts_sym_expression_statement, 2), + [ts_aux_sym_token2] = REDUCE(ts_sym_expression_statement, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression_statement, 2), + [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), + }, + [411] = { + [ts_sym__break] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__case] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__default] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__else] = SHIFT(412), + [ts_sym__for] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__function] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__if] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__switch] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__var] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_false] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_identifier] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_null] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_number] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_string] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_true] = REDUCE(ts_sym_if_statement, 5), + [ts_aux_sym_token1] = REDUCE(ts_sym_if_statement, 5), + [ts_aux_sym_token2] = REDUCE(ts_sym_if_statement, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 5), + [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), + }, + [412] = { + [ts_sym__break] = SHIFT(333), + [ts_sym__for] = SHIFT(335), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(341), + [ts_sym__switch] = SHIFT(345), + [ts_sym__var] = SHIFT(404), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(408), + [ts_sym_expression] = SHIFT(409), + [ts_sym_expression_statement] = SHIFT(408), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(408), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(408), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(413), + [ts_sym_statement_block] = SHIFT(408), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(408), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(408), + [ts_aux_sym_token1] = SHIFT(414), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(418), + }, + [413] = { + [ts_sym__break] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__case] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__default] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__else] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__for] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__function] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__if] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__switch] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__var] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_false] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_identifier] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_null] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_number] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_string] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_true] = REDUCE(ts_sym_if_statement, 7), + [ts_aux_sym_token1] = REDUCE(ts_sym_if_statement, 7), + [ts_aux_sym_token2] = REDUCE(ts_sym_if_statement, 7), + [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), + }, + [414] = { + [ts_sym__break] = SHIFT(9), + [ts_sym__for] = SHIFT(11), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(101), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(203), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(415), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = SHIFT(206), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(417), + }, + [415] = { + [ts_aux_sym_token2] = SHIFT(416), + }, + [416] = { + [ts_sym__break] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__case] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__default] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__else] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__for] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__function] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__if] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__switch] = REDUCE(ts_sym_statement_block, 3), + [ts_sym__var] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_false] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_identifier] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_null] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_number] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_string] = REDUCE(ts_sym_statement_block, 3), + [ts_sym_true] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token1] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token2] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), + }, + [417] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_repeat_helper7] = SHIFT(214), + [ts_aux_sym_token2] = SHIFT(416), + [ts_aux_sym_token7] = SHIFT(113), + }, + [418] = { + [ts_sym__terminator] = SHIFT(410), + }, + [419] = { + [ts_aux_sym_token4] = SHIFT(344), + }, + [420] = { + [ts_sym__break] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__case] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__default] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__else] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__for] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__function] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__if] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__switch] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__var] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_false] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_identifier] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_null] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_number] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_string] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_true] = REDUCE(ts_sym_for_statement, 7), + [ts_aux_sym_token1] = REDUCE(ts_sym_for_statement, 7), + [ts_aux_sym_token2] = REDUCE(ts_sym_for_statement, 7), + [ts_aux_sym_token9] = REDUCE(ts_sym_for_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), + }, + [421] = { + [ts_aux_sym_token4] = SHIFT(340), + }, + [422] = { + [ts_sym__terminator] = SHIFT(324), + }, + [423] = { + [ts_sym__break] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__case] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__default] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__else] = SHIFT(424), + [ts_sym__for] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__function] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__if] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__switch] = REDUCE(ts_sym_if_statement, 5), + [ts_sym__var] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_false] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_identifier] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_null] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_number] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_string] = REDUCE(ts_sym_if_statement, 5), + [ts_sym_true] = REDUCE(ts_sym_if_statement, 5), + [ts_aux_sym_token1] = REDUCE(ts_sym_if_statement, 5), + [ts_aux_sym_token2] = REDUCE(ts_sym_if_statement, 5), + [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 5), + [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), + }, + [424] = { + [ts_sym__break] = SHIFT(319), + [ts_sym__for] = SHIFT(321), + [ts_sym__function] = SHIFT(5), + [ts_sym__if] = SHIFT(329), + [ts_sym__switch] = SHIFT(352), + [ts_sym__var] = SHIFT(386), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(390), + [ts_sym_expression] = SHIFT(391), + [ts_sym_expression_statement] = SHIFT(390), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(390), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(390), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(425), + [ts_sym_statement_block] = SHIFT(390), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(390), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(390), + [ts_aux_sym_token1] = SHIFT(395), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(399), + }, + [425] = { + [ts_sym__break] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__case] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__default] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__for] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__function] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__if] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__switch] = REDUCE(ts_sym_if_statement, 7), + [ts_sym__var] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_false] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_identifier] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_null] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_number] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_string] = REDUCE(ts_sym_if_statement, 7), + [ts_sym_true] = REDUCE(ts_sym_if_statement, 7), + [ts_aux_sym_token1] = REDUCE(ts_sym_if_statement, 7), + [ts_aux_sym_token2] = REDUCE(ts_sym_if_statement, 7), + [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), + }, + [426] = { + [ts_aux_sym_token4] = SHIFT(332), + }, + [427] = { + [ts_sym__break] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__case] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__default] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__for] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__function] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__if] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__switch] = REDUCE(ts_sym_for_statement, 7), + [ts_sym__var] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_false] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_identifier] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_null] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_number] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_string] = REDUCE(ts_sym_for_statement, 7), + [ts_sym_true] = REDUCE(ts_sym_for_statement, 7), + [ts_aux_sym_token1] = REDUCE(ts_sym_for_statement, 7), + [ts_aux_sym_token2] = REDUCE(ts_sym_for_statement, 7), + [ts_aux_sym_token9] = REDUCE(ts_sym_for_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), + }, + [428] = { + [ts_aux_sym_token4] = SHIFT(328), + }, + [429] = { + [ts_sym__case] = REDUCE(ts_sym_switch_case, 4), + [ts_sym__default] = REDUCE(ts_sym_switch_case, 4), + [ts_aux_sym_token2] = REDUCE(ts_sym_switch_case, 4), + }, + [430] = { + [ts_sym_identifier] = SHIFT(431), + }, + [431] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token5] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 3), + }, + [432] = { + [ts_sym__function] = SHIFT(55), + [ts_sym_array] = SHIFT(84), + [ts_sym_assignment] = SHIFT(85), + [ts_sym_expression] = SHIFT(433), + [ts_sym_false] = SHIFT(84), + [ts_sym_function_call] = SHIFT(85), + [ts_sym_function_expression] = SHIFT(85), + [ts_sym_identifier] = SHIFT(128), + [ts_sym_literal] = SHIFT(85), + [ts_sym_null] = SHIFT(84), + [ts_sym_number] = SHIFT(84), + [ts_sym_object] = SHIFT(84), + [ts_sym_property_access] = SHIFT(128), + [ts_sym_string] = SHIFT(84), + [ts_sym_true] = SHIFT(84), + [ts_aux_sym_token1] = SHIFT(131), + [ts_aux_sym_token9] = SHIFT(165), + }, + [433] = { + [ts_aux_sym_token10] = SHIFT(434), + [ts_aux_sym_token3] = SHIFT(88), + [ts_aux_sym_token8] = SHIFT(123), + [ts_aux_sym_token9] = SHIFT(125), + }, + [434] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token5] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token6] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_property_access, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_property_access, 4), + }, + [435] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token5] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(436), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), + }, + [436] = { + [ts_sym__function] = SHIFT(300), + [ts_sym_array] = SHIFT(310), + [ts_sym_assignment] = SHIFT(311), + [ts_sym_expression] = SHIFT(437), + [ts_sym_false] = SHIFT(310), + [ts_sym_function_call] = SHIFT(311), + [ts_sym_function_expression] = SHIFT(311), + [ts_sym_identifier] = SHIFT(435), + [ts_sym_literal] = SHIFT(311), + [ts_sym_null] = SHIFT(310), + [ts_sym_number] = SHIFT(310), + [ts_sym_object] = SHIFT(310), + [ts_sym_property_access] = SHIFT(435), + [ts_sym_string] = SHIFT(310), + [ts_sym_true] = SHIFT(310), + [ts_aux_sym_token1] = SHIFT(438), + [ts_aux_sym_token9] = SHIFT(448), + }, + [437] = { + [ts_aux_sym_token3] = SHIFT(313), + [ts_aux_sym_token5] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token8] = SHIFT(430), + [ts_aux_sym_token9] = SHIFT(432), + }, + [438] = { + [ts_sym_identifier] = SHIFT(439), + [ts_sym_string] = SHIFT(439), + [ts_aux_sym_token2] = SHIFT(444), + [ts_builtin_sym_error] = SHIFT(445), + }, + [439] = { + [ts_aux_sym_token5] = SHIFT(440), + }, + [440] = { + [ts_sym__function] = SHIFT(74), + [ts_sym_array] = SHIFT(103), + [ts_sym_assignment] = SHIFT(104), + [ts_sym_expression] = SHIFT(441), + [ts_sym_false] = SHIFT(103), + [ts_sym_function_call] = SHIFT(104), + [ts_sym_function_expression] = SHIFT(104), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(104), + [ts_sym_null] = SHIFT(103), + [ts_sym_number] = SHIFT(103), + [ts_sym_object] = SHIFT(103), + [ts_sym_property_access] = SHIFT(137), + [ts_sym_string] = SHIFT(103), + [ts_sym_true] = SHIFT(103), + [ts_aux_sym_token1] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + [441] = { + [ts_aux_sym_repeat_helper7] = SHIFT(442), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token3] = SHIFT(108), + [ts_aux_sym_token7] = SHIFT(113), + [ts_aux_sym_token8] = SHIFT(118), + [ts_aux_sym_token9] = SHIFT(120), + }, + [442] = { + [ts_aux_sym_token2] = SHIFT(443), + }, + [443] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token5] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 6), + }, + [444] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token5] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 2), + }, + [445] = { + [ts_aux_sym_repeat_helper7] = SHIFT(446), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper7, 0), + [ts_aux_sym_token7] = SHIFT(113), + }, + [446] = { + [ts_aux_sym_token2] = SHIFT(447), + }, + [447] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token5] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_object, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_object, 4), + }, + [448] = { + [ts_sym__function] = SHIFT(94), + [ts_sym_array] = SHIFT(147), + [ts_sym_assignment] = SHIFT(148), + [ts_sym_expression] = SHIFT(449), + [ts_sym_false] = SHIFT(147), + [ts_sym_function_call] = SHIFT(148), + [ts_sym_function_expression] = SHIFT(148), + [ts_sym_identifier] = SHIFT(169), + [ts_sym_literal] = SHIFT(148), + [ts_sym_null] = SHIFT(147), + [ts_sym_number] = SHIFT(147), + [ts_sym_object] = SHIFT(147), + [ts_sym_property_access] = SHIFT(169), + [ts_sym_string] = SHIFT(147), + [ts_sym_true] = SHIFT(147), + [ts_aux_sym_token1] = SHIFT(172), + [ts_aux_sym_token10] = SHIFT(452), + [ts_aux_sym_token9] = SHIFT(182), + [ts_builtin_sym_error] = SHIFT(453), + }, + [449] = { + [ts_aux_sym_repeat_helper8] = SHIFT(450), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token3] = SHIFT(152), + [ts_aux_sym_token7] = SHIFT(157), + [ts_aux_sym_token8] = SHIFT(160), + [ts_aux_sym_token9] = SHIFT(162), + }, + [450] = { + [ts_aux_sym_token10] = SHIFT(451), + }, + [451] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token5] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 4), + }, + [452] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token5] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token8] = REDUCE(ts_sym_array, 2), + [ts_aux_sym_token9] = REDUCE(ts_sym_array, 2), + }, + [453] = { + [ts_aux_sym_repeat_helper8] = SHIFT(450), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper8, 0), + [ts_aux_sym_token7] = SHIFT(157), + }, + [454] = { + [ts_aux_sym_token2] = SHIFT(455), + }, + [455] = { + [ts_sym__break] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__for] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__function] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__if] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__switch] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym__var] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_false] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_identifier] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_null] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_number] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_string] = REDUCE(ts_sym_switch_statement, 7), + [ts_sym_true] = REDUCE(ts_sym_switch_statement, 7), + [ts_aux_sym_token1] = REDUCE(ts_sym_switch_statement, 7), + [ts_aux_sym_token2] = REDUCE(ts_sym_switch_statement, 7), + [ts_aux_sym_token9] = REDUCE(ts_sym_switch_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_switch_statement, 7), + }, + [456] = { + [ts_aux_sym_token4] = SHIFT(297), + }, + [457] = { + [ts_aux_sym_token2] = SHIFT(458), + }, + [458] = { [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token4] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), }, - [361] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_token2] = SHIFT(360), + [459] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_token2] = SHIFT(458), }, - [362] = { - [ts_sym_formal_parameters] = SHIFT(363), - [ts_aux_sym_token3] = SHIFT(176), + [460] = { + [ts_sym_formal_parameters] = SHIFT(461), + [ts_aux_sym_token3] = SHIFT(223), }, - [363] = { - [ts_sym_statement_block] = SHIFT(364), - [ts_aux_sym_token1] = SHIFT(31), + [461] = { + [ts_sym_statement_block] = SHIFT(462), + [ts_aux_sym_token1] = SHIFT(23), }, - [364] = { + [462] = { [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token4] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 4), }, - [365] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(366), - [ts_aux_sym_token8] = SHIFT(269), + [463] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(464), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [366] = { - [ts_sym__break] = SHIFT(367), - [ts_sym__for] = SHIFT(369), + [464] = { + [ts_sym__break] = SHIFT(465), + [ts_sym__for] = SHIFT(467), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(375), - [ts_sym__switch] = SHIFT(379), - [ts_sym__var] = SHIFT(387), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(391), - [ts_sym_expression] = SHIFT(392), - [ts_sym_expression_statement] = SHIFT(391), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(391), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(391), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(405), - [ts_sym_statement_block] = SHIFT(391), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(391), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(391), - [ts_aux_sym_token1] = SHIFT(397), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(401), + [ts_sym__if] = SHIFT(473), + [ts_sym__switch] = SHIFT(477), + [ts_sym__var] = SHIFT(485), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(489), + [ts_sym_expression] = SHIFT(490), + [ts_sym_expression_statement] = SHIFT(489), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(489), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(489), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(503), + [ts_sym_statement_block] = SHIFT(489), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(489), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(489), + [ts_aux_sym_token1] = SHIFT(495), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(499), }, - [367] = { - [ts_sym__terminator] = SHIFT(368), + [465] = { + [ts_sym__terminator] = SHIFT(466), }, - [368] = { + [466] = { [ts_sym__break] = REDUCE(ts_sym_break_statement, 2), [ts_sym__else] = REDUCE(ts_sym_break_statement, 2), [ts_sym__for] = REDUCE(ts_sym_break_statement, 2), @@ -5935,214 +7089,217 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_break_statement, 2), [ts_builtin_sym_error] = REDUCE(ts_sym_break_statement, 2), }, - [369] = { - [ts_aux_sym_token3] = SHIFT(370), + [467] = { + [ts_aux_sym_token3] = SHIFT(468), }, - [370] = { + [468] = { [ts_sym__function] = SHIFT(5), [ts_sym__var] = SHIFT(13), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(371), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(371), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(469), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(469), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, - [371] = { + [469] = { [ts_sym__function] = SHIFT(5), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(372), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(470), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, - [372] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(373), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(404), + [470] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(471), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(502), }, - [373] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(374), - [ts_aux_sym_token8] = SHIFT(269), + [471] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(472), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [374] = { - [ts_sym__break] = SHIFT(367), - [ts_sym__for] = SHIFT(369), + [472] = { + [ts_sym__break] = SHIFT(465), + [ts_sym__for] = SHIFT(467), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(375), - [ts_sym__switch] = SHIFT(379), - [ts_sym__var] = SHIFT(387), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(391), - [ts_sym_expression] = SHIFT(392), - [ts_sym_expression_statement] = SHIFT(391), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(391), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(391), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(403), - [ts_sym_statement_block] = SHIFT(391), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(391), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(391), - [ts_aux_sym_token1] = SHIFT(397), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(401), + [ts_sym__if] = SHIFT(473), + [ts_sym__switch] = SHIFT(477), + [ts_sym__var] = SHIFT(485), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(489), + [ts_sym_expression] = SHIFT(490), + [ts_sym_expression_statement] = SHIFT(489), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(489), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(489), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(501), + [ts_sym_statement_block] = SHIFT(489), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(489), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(489), + [ts_aux_sym_token1] = SHIFT(495), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(499), }, - [375] = { - [ts_aux_sym_token3] = SHIFT(376), + [473] = { + [ts_aux_sym_token3] = SHIFT(474), }, - [376] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(377), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(402), + [474] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(475), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(500), }, - [377] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(378), - [ts_aux_sym_token8] = SHIFT(269), + [475] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(476), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [378] = { - [ts_sym__break] = SHIFT(367), - [ts_sym__for] = SHIFT(369), + [476] = { + [ts_sym__break] = SHIFT(465), + [ts_sym__for] = SHIFT(467), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(375), - [ts_sym__switch] = SHIFT(379), - [ts_sym__var] = SHIFT(387), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(391), - [ts_sym_expression] = SHIFT(392), - [ts_sym_expression_statement] = SHIFT(391), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(391), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(391), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(394), - [ts_sym_statement_block] = SHIFT(391), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(391), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(391), - [ts_aux_sym_token1] = SHIFT(397), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(401), + [ts_sym__if] = SHIFT(473), + [ts_sym__switch] = SHIFT(477), + [ts_sym__var] = SHIFT(485), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(489), + [ts_sym_expression] = SHIFT(490), + [ts_sym_expression_statement] = SHIFT(489), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(489), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(489), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(492), + [ts_sym_statement_block] = SHIFT(489), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(489), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(489), + [ts_aux_sym_token1] = SHIFT(495), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(499), }, - [379] = { - [ts_aux_sym_token3] = SHIFT(380), + [477] = { + [ts_aux_sym_token3] = SHIFT(478), }, - [380] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(381), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(386), + [478] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(479), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(484), }, - [381] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(382), - [ts_aux_sym_token8] = SHIFT(269), + [479] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(480), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [382] = { - [ts_aux_sym_token1] = SHIFT(383), + [480] = { + [ts_aux_sym_token1] = SHIFT(481), }, - [383] = { - [ts_sym__case] = SHIFT(207), - [ts_sym__default] = SHIFT(258), - [ts_sym_switch_case] = SHIFT(265), - [ts_aux_sym_repeat_helper3] = SHIFT(384), + [481] = { + [ts_sym__case] = SHIFT(299), + [ts_sym__default] = SHIFT(350), + [ts_sym_switch_case] = SHIFT(357), + [ts_aux_sym_repeat_helper3] = SHIFT(482), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), }, - [384] = { - [ts_aux_sym_token2] = SHIFT(385), + [482] = { + [ts_aux_sym_token2] = SHIFT(483), }, - [385] = { + [483] = { [ts_sym__break] = REDUCE(ts_sym_switch_statement, 7), [ts_sym__else] = REDUCE(ts_sym_switch_statement, 7), [ts_sym__for] = REDUCE(ts_sym_switch_statement, 7), @@ -6161,17 +7318,35 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_switch_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_switch_statement, 7), }, - [386] = { - [ts_aux_sym_token4] = SHIFT(382), + [484] = { + [ts_aux_sym_token4] = SHIFT(480), }, - [387] = { - [ts_sym_assignment] = SHIFT(388), - [ts_sym_identifier] = SHIFT(390), + [485] = { + [ts_sym__function] = SHIFT(14), + [ts_sym_array] = SHIFT(35), + [ts_sym_assignment] = SHIFT(486), + [ts_sym_expression] = SHIFT(38), + [ts_sym_false] = SHIFT(35), + [ts_sym_function_call] = SHIFT(268), + [ts_sym_function_expression] = SHIFT(268), + [ts_sym_identifier] = SHIFT(488), + [ts_sym_literal] = SHIFT(268), + [ts_sym_null] = SHIFT(35), + [ts_sym_number] = SHIFT(35), + [ts_sym_object] = SHIFT(35), + [ts_sym_property_access] = SHIFT(270), + [ts_sym_string] = SHIFT(35), + [ts_sym_true] = SHIFT(35), + [ts_aux_sym_token1] = SHIFT(271), + [ts_aux_sym_token9] = SHIFT(281), }, - [388] = { - [ts_sym__terminator] = SHIFT(389), + [486] = { + [ts_sym__terminator] = SHIFT(487), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, - [389] = { + [487] = { [ts_sym__break] = REDUCE(ts_sym_var_declaration, 3), [ts_sym__else] = REDUCE(ts_sym_var_declaration, 3), [ts_sym__for] = REDUCE(ts_sym_var_declaration, 3), @@ -6190,11 +7365,14 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), }, - [390] = { - [ts_sym__terminator] = SHIFT(389), - [ts_aux_sym_token6] = SHIFT(17), + [488] = { + [ts_sym__terminator] = SHIFT(487), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, - [391] = { + [489] = { [ts_sym__break] = REDUCE(ts_sym_statement, 1), [ts_sym__else] = REDUCE(ts_sym_statement, 1), [ts_sym__for] = REDUCE(ts_sym_statement, 1), @@ -6213,12 +7391,13 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), }, - [392] = { - [ts_sym__terminator] = SHIFT(393), - [ts_aux_sym_token3] = SHIFT(21), - [ts_aux_sym_token8] = SHIFT(69), + [490] = { + [ts_sym__terminator] = SHIFT(491), + [ts_aux_sym_token3] = SHIFT(64), + [ts_aux_sym_token8] = SHIFT(81), + [ts_aux_sym_token9] = SHIFT(83), }, - [393] = { + [491] = { [ts_sym__break] = REDUCE(ts_sym_expression_statement, 2), [ts_sym__else] = REDUCE(ts_sym_expression_statement, 2), [ts_sym__for] = REDUCE(ts_sym_expression_statement, 2), @@ -6237,9 +7416,9 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_expression_statement, 2), [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), }, - [394] = { + [492] = { [ts_sym__break] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__else] = SHIFT(395), + [ts_sym__else] = SHIFT(493), [ts_sym__for] = REDUCE(ts_sym_if_statement, 5), [ts_sym__function] = REDUCE(ts_sym_if_statement, 5), [ts_sym__if] = REDUCE(ts_sym_if_statement, 5), @@ -6256,40 +7435,40 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 5), [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), }, - [395] = { - [ts_sym__break] = SHIFT(367), - [ts_sym__for] = SHIFT(369), + [493] = { + [ts_sym__break] = SHIFT(465), + [ts_sym__for] = SHIFT(467), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(375), - [ts_sym__switch] = SHIFT(379), - [ts_sym__var] = SHIFT(387), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(391), - [ts_sym_expression] = SHIFT(392), - [ts_sym_expression_statement] = SHIFT(391), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(391), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(391), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(396), - [ts_sym_statement_block] = SHIFT(391), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(391), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(391), - [ts_aux_sym_token1] = SHIFT(397), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(401), + [ts_sym__if] = SHIFT(473), + [ts_sym__switch] = SHIFT(477), + [ts_sym__var] = SHIFT(485), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(489), + [ts_sym_expression] = SHIFT(490), + [ts_sym_expression_statement] = SHIFT(489), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(489), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(489), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(494), + [ts_sym_statement_block] = SHIFT(489), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(489), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(489), + [ts_aux_sym_token1] = SHIFT(495), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(499), }, - [396] = { + [494] = { [ts_sym__break] = REDUCE(ts_sym_if_statement, 7), [ts_sym__else] = REDUCE(ts_sym_if_statement, 7), [ts_sym__for] = REDUCE(ts_sym_if_statement, 7), @@ -6308,45 +7487,45 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), }, - [397] = { + [495] = { [ts_sym__break] = SHIFT(9), [ts_sym__for] = SHIFT(11), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(96), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(398), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = SHIFT(99), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(400), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(101), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(203), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(496), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = SHIFT(206), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(498), }, - [398] = { - [ts_aux_sym_token2] = SHIFT(399), + [496] = { + [ts_aux_sym_token2] = SHIFT(497), }, - [399] = { + [497] = { [ts_sym__break] = REDUCE(ts_sym_statement_block, 3), [ts_sym__else] = REDUCE(ts_sym_statement_block, 3), [ts_sym__for] = REDUCE(ts_sym_statement_block, 3), @@ -6365,19 +7544,19 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), }, - [400] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_repeat_helper7] = SHIFT(167), - [ts_aux_sym_token2] = SHIFT(399), - [ts_aux_sym_token7] = SHIFT(125), + [498] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_repeat_helper7] = SHIFT(214), + [ts_aux_sym_token2] = SHIFT(497), + [ts_aux_sym_token7] = SHIFT(113), }, - [401] = { - [ts_sym__terminator] = SHIFT(393), + [499] = { + [ts_sym__terminator] = SHIFT(491), }, - [402] = { - [ts_aux_sym_token4] = SHIFT(378), + [500] = { + [ts_aux_sym_token4] = SHIFT(476), }, - [403] = { + [501] = { [ts_sym__break] = REDUCE(ts_sym_for_statement, 7), [ts_sym__else] = REDUCE(ts_sym_for_statement, 7), [ts_sym__for] = REDUCE(ts_sym_for_statement, 7), @@ -6396,12 +7575,12 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_for_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), }, - [404] = { - [ts_aux_sym_token4] = SHIFT(374), + [502] = { + [ts_aux_sym_token4] = SHIFT(472), }, - [405] = { + [503] = { [ts_sym__break] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__else] = SHIFT(406), + [ts_sym__else] = SHIFT(504), [ts_sym__for] = REDUCE(ts_sym_if_statement, 5), [ts_sym__function] = REDUCE(ts_sym_if_statement, 5), [ts_sym__if] = REDUCE(ts_sym_if_statement, 5), @@ -6418,40 +7597,40 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 5), [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), }, - [406] = { + [504] = { [ts_sym__break] = SHIFT(9), [ts_sym__for] = SHIFT(11), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(407), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(169), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(505), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(216), }, - [407] = { + [505] = { [ts_sym__break] = REDUCE(ts_sym_if_statement, 7), [ts_sym__for] = REDUCE(ts_sym_if_statement, 7), [ts_sym__function] = REDUCE(ts_sym_if_statement, 7), @@ -6469,136 +7648,140 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), }, - [408] = { - [ts_aux_sym_token4] = SHIFT(366), + [506] = { + [ts_aux_sym_token4] = SHIFT(464), }, - [409] = { - [ts_aux_sym_token2] = SHIFT(410), + [507] = { + [ts_aux_sym_token2] = SHIFT(508), }, - [410] = { + [508] = { [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token4] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token7] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), }, - [411] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_token2] = SHIFT(410), + [509] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_token2] = SHIFT(508), }, - [412] = { - [ts_sym_formal_parameters] = SHIFT(413), - [ts_aux_sym_token3] = SHIFT(176), + [510] = { + [ts_sym_formal_parameters] = SHIFT(511), + [ts_aux_sym_token3] = SHIFT(223), }, - [413] = { - [ts_sym_statement_block] = SHIFT(414), - [ts_aux_sym_token1] = SHIFT(25), + [511] = { + [ts_sym_statement_block] = SHIFT(512), + [ts_aux_sym_token1] = SHIFT(17), }, - [414] = { + [512] = { [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 4), - [ts_aux_sym_token4] = REDUCE(ts_sym_function_expression, 4), - [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 4), }, - [415] = { - [ts_aux_sym_repeat_helper5] = SHIFT(416), - [ts_aux_sym_token3] = SHIFT(43), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token7] = SHIFT(47), - [ts_aux_sym_token8] = SHIFT(50), + [513] = { + [ts_sym__terminator] = SHIFT(514), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, - [416] = { - [ts_aux_sym_token4] = SHIFT(417), + [514] = { + [ts_sym__function] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_false] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_identifier] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_null] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_number] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_string] = REDUCE(ts_sym_var_declaration, 3), + [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), + [ts_aux_sym_token1] = REDUCE(ts_sym_var_declaration, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), + [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), }, - [417] = { - [ts_sym__terminator] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 5), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 5), + [515] = { + [ts_sym__terminator] = SHIFT(514), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, - [418] = { - [ts_sym__terminator] = REDUCE(ts_sym_function_call, 3), - [ts_aux_sym_token3] = REDUCE(ts_sym_function_call, 3), - [ts_aux_sym_token8] = REDUCE(ts_sym_function_call, 3), - }, - [419] = { + [516] = { [ts_sym__function] = SHIFT(5), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(420), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(517), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, - [420] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(421), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(424), + [517] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(518), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(521), }, - [421] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(422), - [ts_aux_sym_token8] = SHIFT(269), + [518] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(519), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [422] = { + [519] = { [ts_sym__break] = SHIFT(9), [ts_sym__for] = SHIFT(11), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(423), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(169), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(520), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(216), }, - [423] = { + [520] = { [ts_sym__break] = REDUCE(ts_sym_for_statement, 7), [ts_sym__for] = REDUCE(ts_sym_for_statement, 7), [ts_sym__function] = REDUCE(ts_sym_for_statement, 7), @@ -6616,178 +7799,182 @@ PARSE_TABLE = { [ts_aux_sym_token9] = REDUCE(ts_sym_for_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), }, - [424] = { - [ts_aux_sym_token4] = SHIFT(422), + [521] = { + [ts_aux_sym_token4] = SHIFT(519), }, - [425] = { - [ts_aux_sym_token2] = SHIFT(426), + [522] = { + [ts_aux_sym_token2] = SHIFT(523), }, - [426] = { + [523] = { [ts_sym__terminator] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token8] = REDUCE(ts_sym_statement_block, 3), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), }, - [427] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_token2] = SHIFT(426), + [524] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_token2] = SHIFT(523), }, - [428] = { - [ts_sym_formal_parameters] = SHIFT(429), - [ts_aux_sym_token3] = SHIFT(176), + [525] = { + [ts_sym_formal_parameters] = SHIFT(526), + [ts_aux_sym_token3] = SHIFT(223), }, - [429] = { - [ts_sym_statement_block] = SHIFT(430), + [526] = { + [ts_sym_statement_block] = SHIFT(527), [ts_aux_sym_token1] = SHIFT(8), }, - [430] = { + [527] = { [ts_sym__terminator] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token3] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token8] = REDUCE(ts_sym_function_expression, 4), + [ts_aux_sym_token9] = REDUCE(ts_sym_function_expression, 4), }, - [431] = { + [528] = { [ts_sym__function] = SHIFT(5), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(432), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(529), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, - [432] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(433), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(502), + [529] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(530), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(599), }, - [433] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(434), - [ts_aux_sym_token8] = SHIFT(269), + [530] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(531), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [434] = { + [531] = { [ts_sym__break] = SHIFT(1), [ts_sym__for] = SHIFT(3), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(435), - [ts_sym__switch] = SHIFT(479), - [ts_sym__var] = SHIFT(487), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(491), - [ts_sym_expression] = SHIFT(492), - [ts_sym_expression_statement] = SHIFT(491), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(491), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(491), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(501), - [ts_sym_statement_block] = SHIFT(491), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(491), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(491), - [ts_aux_sym_token1] = SHIFT(495), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(499), + [ts_sym__if] = SHIFT(532), + [ts_sym__switch] = SHIFT(576), + [ts_sym__var] = SHIFT(584), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(588), + [ts_sym_expression] = SHIFT(589), + [ts_sym_expression_statement] = SHIFT(588), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(588), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(588), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(598), + [ts_sym_statement_block] = SHIFT(588), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(588), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(588), + [ts_aux_sym_token1] = SHIFT(592), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(596), }, - [435] = { - [ts_aux_sym_token3] = SHIFT(436), + [532] = { + [ts_aux_sym_token3] = SHIFT(533), }, - [436] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(437), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(500), + [533] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(534), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(597), }, - [437] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(438), - [ts_aux_sym_token8] = SHIFT(269), + [534] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(535), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [438] = { - [ts_sym__break] = SHIFT(439), - [ts_sym__for] = SHIFT(441), + [535] = { + [ts_sym__break] = SHIFT(536), + [ts_sym__for] = SHIFT(538), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(447), - [ts_sym__switch] = SHIFT(451), - [ts_sym__var] = SHIFT(459), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(463), - [ts_sym_expression] = SHIFT(464), - [ts_sym_expression_statement] = SHIFT(463), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(463), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(463), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(477), - [ts_sym_statement_block] = SHIFT(463), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(463), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(463), - [ts_aux_sym_token1] = SHIFT(469), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(473), + [ts_sym__if] = SHIFT(544), + [ts_sym__switch] = SHIFT(548), + [ts_sym__var] = SHIFT(556), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(560), + [ts_sym_expression] = SHIFT(561), + [ts_sym_expression_statement] = SHIFT(560), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(560), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(560), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(574), + [ts_sym_statement_block] = SHIFT(560), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(560), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(560), + [ts_aux_sym_token1] = SHIFT(566), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(570), }, - [439] = { - [ts_sym__terminator] = SHIFT(440), + [536] = { + [ts_sym__terminator] = SHIFT(537), }, - [440] = { + [537] = { [ts_sym__break] = REDUCE(ts_sym_break_statement, 2), [ts_sym__else] = REDUCE(ts_sym_break_statement, 2), [ts_sym__for] = REDUCE(ts_sym_break_statement, 2), @@ -6806,214 +7993,217 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_break_statement, 2), [ts_builtin_sym_error] = REDUCE(ts_sym_break_statement, 2), }, - [441] = { - [ts_aux_sym_token3] = SHIFT(442), + [538] = { + [ts_aux_sym_token3] = SHIFT(539), }, - [442] = { + [539] = { [ts_sym__function] = SHIFT(5), [ts_sym__var] = SHIFT(13), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(443), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(443), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(540), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(540), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, - [443] = { + [540] = { [ts_sym__function] = SHIFT(5), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_expression] = SHIFT(231), - [ts_sym_expression_statement] = SHIFT(444), - [ts_sym_false] = SHIFT(18), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_string] = SHIFT(18), - [ts_sym_true] = SHIFT(18), - [ts_aux_sym_token1] = SHIFT(74), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(327), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_expression] = SHIFT(323), + [ts_sym_expression_statement] = SHIFT(541), + [ts_sym_false] = SHIFT(59), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_string] = SHIFT(59), + [ts_sym_true] = SHIFT(59), + [ts_aux_sym_token1] = SHIFT(236), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(422), }, - [444] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(445), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(476), + [541] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(542), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(573), }, - [445] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(446), - [ts_aux_sym_token8] = SHIFT(269), + [542] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(543), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [446] = { - [ts_sym__break] = SHIFT(439), - [ts_sym__for] = SHIFT(441), + [543] = { + [ts_sym__break] = SHIFT(536), + [ts_sym__for] = SHIFT(538), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(447), - [ts_sym__switch] = SHIFT(451), - [ts_sym__var] = SHIFT(459), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(463), - [ts_sym_expression] = SHIFT(464), - [ts_sym_expression_statement] = SHIFT(463), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(463), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(463), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(475), - [ts_sym_statement_block] = SHIFT(463), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(463), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(463), - [ts_aux_sym_token1] = SHIFT(469), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(473), + [ts_sym__if] = SHIFT(544), + [ts_sym__switch] = SHIFT(548), + [ts_sym__var] = SHIFT(556), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(560), + [ts_sym_expression] = SHIFT(561), + [ts_sym_expression_statement] = SHIFT(560), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(560), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(560), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(572), + [ts_sym_statement_block] = SHIFT(560), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(560), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(560), + [ts_aux_sym_token1] = SHIFT(566), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(570), }, - [447] = { - [ts_aux_sym_token3] = SHIFT(448), + [544] = { + [ts_aux_sym_token3] = SHIFT(545), }, - [448] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(449), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(474), + [545] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(546), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(571), }, - [449] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(450), - [ts_aux_sym_token8] = SHIFT(269), + [546] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(547), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [450] = { - [ts_sym__break] = SHIFT(439), - [ts_sym__for] = SHIFT(441), + [547] = { + [ts_sym__break] = SHIFT(536), + [ts_sym__for] = SHIFT(538), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(447), - [ts_sym__switch] = SHIFT(451), - [ts_sym__var] = SHIFT(459), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(463), - [ts_sym_expression] = SHIFT(464), - [ts_sym_expression_statement] = SHIFT(463), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(463), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(463), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(466), - [ts_sym_statement_block] = SHIFT(463), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(463), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(463), - [ts_aux_sym_token1] = SHIFT(469), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(473), + [ts_sym__if] = SHIFT(544), + [ts_sym__switch] = SHIFT(548), + [ts_sym__var] = SHIFT(556), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(560), + [ts_sym_expression] = SHIFT(561), + [ts_sym_expression_statement] = SHIFT(560), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(560), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(560), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(563), + [ts_sym_statement_block] = SHIFT(560), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(560), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(560), + [ts_aux_sym_token1] = SHIFT(566), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(570), }, - [451] = { - [ts_aux_sym_token3] = SHIFT(452), + [548] = { + [ts_aux_sym_token3] = SHIFT(549), }, - [452] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(453), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(458), + [549] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(550), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(555), }, - [453] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(454), - [ts_aux_sym_token8] = SHIFT(269), + [550] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(551), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [454] = { - [ts_aux_sym_token1] = SHIFT(455), + [551] = { + [ts_aux_sym_token1] = SHIFT(552), }, - [455] = { - [ts_sym__case] = SHIFT(207), - [ts_sym__default] = SHIFT(258), - [ts_sym_switch_case] = SHIFT(265), - [ts_aux_sym_repeat_helper3] = SHIFT(456), + [552] = { + [ts_sym__case] = SHIFT(299), + [ts_sym__default] = SHIFT(350), + [ts_sym_switch_case] = SHIFT(357), + [ts_aux_sym_repeat_helper3] = SHIFT(553), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), }, - [456] = { - [ts_aux_sym_token2] = SHIFT(457), + [553] = { + [ts_aux_sym_token2] = SHIFT(554), }, - [457] = { + [554] = { [ts_sym__break] = REDUCE(ts_sym_switch_statement, 7), [ts_sym__else] = REDUCE(ts_sym_switch_statement, 7), [ts_sym__for] = REDUCE(ts_sym_switch_statement, 7), @@ -7032,17 +8222,35 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_switch_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_switch_statement, 7), }, - [458] = { - [ts_aux_sym_token4] = SHIFT(454), + [555] = { + [ts_aux_sym_token4] = SHIFT(551), }, - [459] = { - [ts_sym_assignment] = SHIFT(460), - [ts_sym_identifier] = SHIFT(462), + [556] = { + [ts_sym__function] = SHIFT(14), + [ts_sym_array] = SHIFT(35), + [ts_sym_assignment] = SHIFT(557), + [ts_sym_expression] = SHIFT(38), + [ts_sym_false] = SHIFT(35), + [ts_sym_function_call] = SHIFT(268), + [ts_sym_function_expression] = SHIFT(268), + [ts_sym_identifier] = SHIFT(559), + [ts_sym_literal] = SHIFT(268), + [ts_sym_null] = SHIFT(35), + [ts_sym_number] = SHIFT(35), + [ts_sym_object] = SHIFT(35), + [ts_sym_property_access] = SHIFT(270), + [ts_sym_string] = SHIFT(35), + [ts_sym_true] = SHIFT(35), + [ts_aux_sym_token1] = SHIFT(271), + [ts_aux_sym_token9] = SHIFT(281), }, - [460] = { - [ts_sym__terminator] = SHIFT(461), + [557] = { + [ts_sym__terminator] = SHIFT(558), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, - [461] = { + [558] = { [ts_sym__break] = REDUCE(ts_sym_var_declaration, 3), [ts_sym__else] = REDUCE(ts_sym_var_declaration, 3), [ts_sym__for] = REDUCE(ts_sym_var_declaration, 3), @@ -7061,11 +8269,14 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_var_declaration, 3), [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), }, - [462] = { - [ts_sym__terminator] = SHIFT(461), - [ts_aux_sym_token6] = SHIFT(17), + [559] = { + [ts_sym__terminator] = SHIFT(558), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, - [463] = { + [560] = { [ts_sym__break] = REDUCE(ts_sym_statement, 1), [ts_sym__else] = REDUCE(ts_sym_statement, 1), [ts_sym__for] = REDUCE(ts_sym_statement, 1), @@ -7084,12 +8295,13 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_statement, 1), [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), }, - [464] = { - [ts_sym__terminator] = SHIFT(465), - [ts_aux_sym_token3] = SHIFT(21), - [ts_aux_sym_token8] = SHIFT(69), + [561] = { + [ts_sym__terminator] = SHIFT(562), + [ts_aux_sym_token3] = SHIFT(64), + [ts_aux_sym_token8] = SHIFT(81), + [ts_aux_sym_token9] = SHIFT(83), }, - [465] = { + [562] = { [ts_sym__break] = REDUCE(ts_sym_expression_statement, 2), [ts_sym__else] = REDUCE(ts_sym_expression_statement, 2), [ts_sym__for] = REDUCE(ts_sym_expression_statement, 2), @@ -7108,9 +8320,9 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_expression_statement, 2), [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), }, - [466] = { + [563] = { [ts_sym__break] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__else] = SHIFT(467), + [ts_sym__else] = SHIFT(564), [ts_sym__for] = REDUCE(ts_sym_if_statement, 5), [ts_sym__function] = REDUCE(ts_sym_if_statement, 5), [ts_sym__if] = REDUCE(ts_sym_if_statement, 5), @@ -7127,40 +8339,40 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 5), [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), }, - [467] = { - [ts_sym__break] = SHIFT(439), - [ts_sym__for] = SHIFT(441), + [564] = { + [ts_sym__break] = SHIFT(536), + [ts_sym__for] = SHIFT(538), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(447), - [ts_sym__switch] = SHIFT(451), - [ts_sym__var] = SHIFT(459), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(463), - [ts_sym_expression] = SHIFT(464), - [ts_sym_expression_statement] = SHIFT(463), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(463), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(463), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(468), - [ts_sym_statement_block] = SHIFT(463), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(463), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(463), - [ts_aux_sym_token1] = SHIFT(469), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(473), + [ts_sym__if] = SHIFT(544), + [ts_sym__switch] = SHIFT(548), + [ts_sym__var] = SHIFT(556), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(560), + [ts_sym_expression] = SHIFT(561), + [ts_sym_expression_statement] = SHIFT(560), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(560), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(560), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(565), + [ts_sym_statement_block] = SHIFT(560), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(560), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(560), + [ts_aux_sym_token1] = SHIFT(566), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(570), }, - [468] = { + [565] = { [ts_sym__break] = REDUCE(ts_sym_if_statement, 7), [ts_sym__else] = REDUCE(ts_sym_if_statement, 7), [ts_sym__for] = REDUCE(ts_sym_if_statement, 7), @@ -7179,45 +8391,45 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), }, - [469] = { + [566] = { [ts_sym__break] = SHIFT(9), [ts_sym__for] = SHIFT(11), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(96), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(470), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = SHIFT(99), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(472), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(101), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(203), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(567), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = SHIFT(206), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(569), }, - [470] = { - [ts_aux_sym_token2] = SHIFT(471), + [567] = { + [ts_aux_sym_token2] = SHIFT(568), }, - [471] = { + [568] = { [ts_sym__break] = REDUCE(ts_sym_statement_block, 3), [ts_sym__else] = REDUCE(ts_sym_statement_block, 3), [ts_sym__for] = REDUCE(ts_sym_statement_block, 3), @@ -7236,19 +8448,19 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_statement_block, 3), [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), }, - [472] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_repeat_helper7] = SHIFT(167), - [ts_aux_sym_token2] = SHIFT(471), - [ts_aux_sym_token7] = SHIFT(125), + [569] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_repeat_helper7] = SHIFT(214), + [ts_aux_sym_token2] = SHIFT(568), + [ts_aux_sym_token7] = SHIFT(113), }, - [473] = { - [ts_sym__terminator] = SHIFT(465), + [570] = { + [ts_sym__terminator] = SHIFT(562), }, - [474] = { - [ts_aux_sym_token4] = SHIFT(450), + [571] = { + [ts_aux_sym_token4] = SHIFT(547), }, - [475] = { + [572] = { [ts_sym__break] = REDUCE(ts_sym_for_statement, 7), [ts_sym__else] = REDUCE(ts_sym_for_statement, 7), [ts_sym__for] = REDUCE(ts_sym_for_statement, 7), @@ -7267,12 +8479,12 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_for_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), }, - [476] = { - [ts_aux_sym_token4] = SHIFT(446), + [573] = { + [ts_aux_sym_token4] = SHIFT(543), }, - [477] = { + [574] = { [ts_sym__break] = REDUCE(ts_sym_if_statement, 5), - [ts_sym__else] = SHIFT(478), + [ts_sym__else] = SHIFT(575), [ts_sym__for] = REDUCE(ts_sym_if_statement, 5), [ts_sym__function] = REDUCE(ts_sym_if_statement, 5), [ts_sym__if] = REDUCE(ts_sym_if_statement, 5), @@ -7289,81 +8501,82 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 5), [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), }, - [478] = { + [575] = { [ts_sym__break] = SHIFT(1), [ts_sym__for] = SHIFT(3), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(435), - [ts_sym__switch] = SHIFT(479), - [ts_sym__var] = SHIFT(487), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(491), - [ts_sym_expression] = SHIFT(492), - [ts_sym_expression_statement] = SHIFT(491), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(491), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(491), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(494), - [ts_sym_statement_block] = SHIFT(491), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(491), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(491), - [ts_aux_sym_token1] = SHIFT(495), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(499), + [ts_sym__if] = SHIFT(532), + [ts_sym__switch] = SHIFT(576), + [ts_sym__var] = SHIFT(584), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(588), + [ts_sym_expression] = SHIFT(589), + [ts_sym_expression_statement] = SHIFT(588), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(588), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(588), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(591), + [ts_sym_statement_block] = SHIFT(588), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(588), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(588), + [ts_aux_sym_token1] = SHIFT(592), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(596), }, - [479] = { - [ts_aux_sym_token3] = SHIFT(480), + [576] = { + [ts_aux_sym_token3] = SHIFT(577), }, - [480] = { - [ts_sym__function] = SHIFT(28), - [ts_sym_array] = SHIFT(34), - [ts_sym_assignment] = SHIFT(35), - [ts_sym_expression] = SHIFT(481), - [ts_sym_false] = SHIFT(34), - [ts_sym_function_call] = SHIFT(35), - [ts_sym_function_expression] = SHIFT(35), - [ts_sym_identifier] = SHIFT(271), - [ts_sym_literal] = SHIFT(35), - [ts_sym_null] = SHIFT(34), - [ts_sym_number] = SHIFT(34), - [ts_sym_object] = SHIFT(34), - [ts_sym_property_access] = SHIFT(35), - [ts_sym_string] = SHIFT(34), - [ts_sym_true] = SHIFT(34), - [ts_aux_sym_token1] = SHIFT(274), - [ts_aux_sym_token9] = SHIFT(284), - [ts_builtin_sym_error] = SHIFT(486), + [577] = { + [ts_sym__function] = SHIFT(20), + [ts_sym_array] = SHIFT(26), + [ts_sym_assignment] = SHIFT(27), + [ts_sym_expression] = SHIFT(578), + [ts_sym_false] = SHIFT(26), + [ts_sym_function_call] = SHIFT(27), + [ts_sym_function_expression] = SHIFT(27), + [ts_sym_identifier] = SHIFT(366), + [ts_sym_literal] = SHIFT(27), + [ts_sym_null] = SHIFT(26), + [ts_sym_number] = SHIFT(26), + [ts_sym_object] = SHIFT(26), + [ts_sym_property_access] = SHIFT(366), + [ts_sym_string] = SHIFT(26), + [ts_sym_true] = SHIFT(26), + [ts_aux_sym_token1] = SHIFT(369), + [ts_aux_sym_token9] = SHIFT(379), + [ts_builtin_sym_error] = SHIFT(583), }, - [481] = { - [ts_aux_sym_token3] = SHIFT(37), - [ts_aux_sym_token4] = SHIFT(482), - [ts_aux_sym_token8] = SHIFT(269), + [578] = { + [ts_aux_sym_token3] = SHIFT(29), + [ts_aux_sym_token4] = SHIFT(579), + [ts_aux_sym_token8] = SHIFT(361), + [ts_aux_sym_token9] = SHIFT(363), }, - [482] = { - [ts_aux_sym_token1] = SHIFT(483), + [579] = { + [ts_aux_sym_token1] = SHIFT(580), }, - [483] = { - [ts_sym__case] = SHIFT(207), - [ts_sym__default] = SHIFT(258), - [ts_sym_switch_case] = SHIFT(265), - [ts_aux_sym_repeat_helper3] = SHIFT(484), + [580] = { + [ts_sym__case] = SHIFT(299), + [ts_sym__default] = SHIFT(350), + [ts_sym_switch_case] = SHIFT(357), + [ts_aux_sym_repeat_helper3] = SHIFT(581), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), }, - [484] = { - [ts_aux_sym_token2] = SHIFT(485), + [581] = { + [ts_aux_sym_token2] = SHIFT(582), }, - [485] = { + [582] = { [ts_sym__break] = REDUCE(ts_sym_switch_statement, 7), [ts_sym__for] = REDUCE(ts_sym_switch_statement, 7), [ts_sym__function] = REDUCE(ts_sym_switch_statement, 7), @@ -7381,17 +8594,35 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_switch_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_switch_statement, 7), }, - [486] = { - [ts_aux_sym_token4] = SHIFT(482), + [583] = { + [ts_aux_sym_token4] = SHIFT(579), }, - [487] = { - [ts_sym_assignment] = SHIFT(488), - [ts_sym_identifier] = SHIFT(490), + [584] = { + [ts_sym__function] = SHIFT(14), + [ts_sym_array] = SHIFT(35), + [ts_sym_assignment] = SHIFT(585), + [ts_sym_expression] = SHIFT(38), + [ts_sym_false] = SHIFT(35), + [ts_sym_function_call] = SHIFT(268), + [ts_sym_function_expression] = SHIFT(268), + [ts_sym_identifier] = SHIFT(587), + [ts_sym_literal] = SHIFT(268), + [ts_sym_null] = SHIFT(35), + [ts_sym_number] = SHIFT(35), + [ts_sym_object] = SHIFT(35), + [ts_sym_property_access] = SHIFT(270), + [ts_sym_string] = SHIFT(35), + [ts_sym_true] = SHIFT(35), + [ts_aux_sym_token1] = SHIFT(271), + [ts_aux_sym_token9] = SHIFT(281), }, - [488] = { - [ts_sym__terminator] = SHIFT(489), + [585] = { + [ts_sym__terminator] = SHIFT(586), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, - [489] = { + [586] = { [ts_sym__break] = REDUCE(ts_sym_var_declaration, 3), [ts_sym__for] = REDUCE(ts_sym_var_declaration, 3), [ts_sym__function] = REDUCE(ts_sym_var_declaration, 3), @@ -7409,11 +8640,14 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_var_declaration, 3), [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), }, - [490] = { - [ts_sym__terminator] = SHIFT(489), - [ts_aux_sym_token6] = SHIFT(17), + [587] = { + [ts_sym__terminator] = SHIFT(586), + [ts_aux_sym_token3] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token6] = SHIFT(79), + [ts_aux_sym_token8] = REDUCE(ts_sym_expression, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_expression, 1), }, - [491] = { + [588] = { [ts_sym__break] = REDUCE(ts_sym_statement, 1), [ts_sym__for] = REDUCE(ts_sym_statement, 1), [ts_sym__function] = REDUCE(ts_sym_statement, 1), @@ -7431,12 +8665,13 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_statement, 1), [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), }, - [492] = { - [ts_sym__terminator] = SHIFT(493), - [ts_aux_sym_token3] = SHIFT(21), - [ts_aux_sym_token8] = SHIFT(69), + [589] = { + [ts_sym__terminator] = SHIFT(590), + [ts_aux_sym_token3] = SHIFT(64), + [ts_aux_sym_token8] = SHIFT(81), + [ts_aux_sym_token9] = SHIFT(83), }, - [493] = { + [590] = { [ts_sym__break] = REDUCE(ts_sym_expression_statement, 2), [ts_sym__for] = REDUCE(ts_sym_expression_statement, 2), [ts_sym__function] = REDUCE(ts_sym_expression_statement, 2), @@ -7454,7 +8689,7 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_expression_statement, 2), [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), }, - [494] = { + [591] = { [ts_sym__break] = REDUCE(ts_sym_if_statement, 7), [ts_sym__for] = REDUCE(ts_sym_if_statement, 7), [ts_sym__function] = REDUCE(ts_sym_if_statement, 7), @@ -7472,45 +8707,45 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), }, - [495] = { + [592] = { [ts_sym__break] = SHIFT(9), [ts_sym__for] = SHIFT(11), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(26), - [ts_sym__switch] = SHIFT(32), - [ts_sym__var] = SHIFT(62), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(66), - [ts_sym_expression] = SHIFT(67), - [ts_sym_expression_statement] = SHIFT(66), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(66), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_if_statement] = SHIFT(66), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(92), - [ts_sym_statement_block] = SHIFT(66), - [ts_sym_string] = SHIFT(96), - [ts_sym_switch_statement] = SHIFT(66), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(66), - [ts_aux_sym_repeat_helper2] = SHIFT(496), - [ts_aux_sym_token1] = SHIFT(94), - [ts_aux_sym_token2] = SHIFT(99), - [ts_aux_sym_token9] = SHIFT(100), - [ts_builtin_sym_error] = SHIFT(498), + [ts_sym__if] = SHIFT(18), + [ts_sym__switch] = SHIFT(24), + [ts_sym__var] = SHIFT(34), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(61), + [ts_sym_expression] = SHIFT(62), + [ts_sym_expression_statement] = SHIFT(61), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(61), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(101), + [ts_sym_if_statement] = SHIFT(61), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(98), + [ts_sym_statement_block] = SHIFT(61), + [ts_sym_string] = SHIFT(203), + [ts_sym_switch_statement] = SHIFT(61), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(61), + [ts_aux_sym_repeat_helper2] = SHIFT(593), + [ts_aux_sym_token1] = SHIFT(100), + [ts_aux_sym_token2] = SHIFT(206), + [ts_aux_sym_token9] = SHIFT(207), + [ts_builtin_sym_error] = SHIFT(595), }, - [496] = { - [ts_aux_sym_token2] = SHIFT(497), + [593] = { + [ts_aux_sym_token2] = SHIFT(594), }, - [497] = { + [594] = { [ts_sym__break] = REDUCE(ts_sym_statement_block, 3), [ts_sym__for] = REDUCE(ts_sym_statement_block, 3), [ts_sym__function] = REDUCE(ts_sym_statement_block, 3), @@ -7528,19 +8763,19 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_statement_block, 3), [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), }, - [498] = { - [ts_sym__terminator] = SHIFT(68), - [ts_aux_sym_repeat_helper7] = SHIFT(167), - [ts_aux_sym_token2] = SHIFT(497), - [ts_aux_sym_token7] = SHIFT(125), + [595] = { + [ts_sym__terminator] = SHIFT(63), + [ts_aux_sym_repeat_helper7] = SHIFT(214), + [ts_aux_sym_token2] = SHIFT(594), + [ts_aux_sym_token7] = SHIFT(113), }, - [499] = { - [ts_sym__terminator] = SHIFT(493), + [596] = { + [ts_sym__terminator] = SHIFT(590), }, - [500] = { - [ts_aux_sym_token4] = SHIFT(438), + [597] = { + [ts_aux_sym_token4] = SHIFT(535), }, - [501] = { + [598] = { [ts_sym__break] = REDUCE(ts_sym_for_statement, 7), [ts_sym__for] = REDUCE(ts_sym_for_statement, 7), [ts_sym__function] = REDUCE(ts_sym_for_statement, 7), @@ -7558,51 +8793,51 @@ PARSE_TABLE = { [ts_builtin_sym_end] = REDUCE(ts_sym_for_statement, 7), [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), }, - [502] = { - [ts_aux_sym_token4] = SHIFT(434), + [599] = { + [ts_aux_sym_token4] = SHIFT(531), }, - [503] = { + [600] = { [ts_builtin_sym_end] = ACCEPT_INPUT(), }, - [504] = { + [601] = { [ts_sym__break] = SHIFT(1), [ts_sym__for] = SHIFT(3), [ts_sym__function] = SHIFT(5), - [ts_sym__if] = SHIFT(435), - [ts_sym__switch] = SHIFT(479), - [ts_sym__var] = SHIFT(487), - [ts_sym_array] = SHIFT(18), - [ts_sym_assignment] = SHIFT(19), - [ts_sym_break_statement] = SHIFT(491), - [ts_sym_expression] = SHIFT(492), - [ts_sym_expression_statement] = SHIFT(491), - [ts_sym_false] = SHIFT(18), - [ts_sym_for_statement] = SHIFT(491), - [ts_sym_function_call] = SHIFT(19), - [ts_sym_function_expression] = SHIFT(19), - [ts_sym_identifier] = SHIFT(71), - [ts_sym_if_statement] = SHIFT(491), - [ts_sym_literal] = SHIFT(19), - [ts_sym_null] = SHIFT(18), - [ts_sym_number] = SHIFT(18), - [ts_sym_object] = SHIFT(18), - [ts_sym_property_access] = SHIFT(19), - [ts_sym_statement] = SHIFT(504), - [ts_sym_statement_block] = SHIFT(491), - [ts_sym_string] = SHIFT(18), - [ts_sym_switch_statement] = SHIFT(491), - [ts_sym_true] = SHIFT(18), - [ts_sym_var_declaration] = SHIFT(491), - [ts_aux_sym_repeat_helper1] = SHIFT(505), - [ts_aux_sym_token1] = SHIFT(495), - [ts_aux_sym_token9] = SHIFT(100), + [ts_sym__if] = SHIFT(532), + [ts_sym__switch] = SHIFT(576), + [ts_sym__var] = SHIFT(584), + [ts_sym_array] = SHIFT(59), + [ts_sym_assignment] = SHIFT(60), + [ts_sym_break_statement] = SHIFT(588), + [ts_sym_expression] = SHIFT(589), + [ts_sym_expression_statement] = SHIFT(588), + [ts_sym_false] = SHIFT(59), + [ts_sym_for_statement] = SHIFT(588), + [ts_sym_function_call] = SHIFT(60), + [ts_sym_function_expression] = SHIFT(60), + [ts_sym_identifier] = SHIFT(78), + [ts_sym_if_statement] = SHIFT(588), + [ts_sym_literal] = SHIFT(60), + [ts_sym_null] = SHIFT(59), + [ts_sym_number] = SHIFT(59), + [ts_sym_object] = SHIFT(59), + [ts_sym_property_access] = SHIFT(78), + [ts_sym_statement] = SHIFT(601), + [ts_sym_statement_block] = SHIFT(588), + [ts_sym_string] = SHIFT(59), + [ts_sym_switch_statement] = SHIFT(588), + [ts_sym_true] = SHIFT(59), + [ts_sym_var_declaration] = SHIFT(588), + [ts_aux_sym_repeat_helper1] = SHIFT(602), + [ts_aux_sym_token1] = SHIFT(592), + [ts_aux_sym_token9] = SHIFT(207), [ts_builtin_sym_end] = REDUCE(ts_aux_sym_repeat_helper1, 0), - [ts_builtin_sym_error] = SHIFT(499), + [ts_builtin_sym_error] = SHIFT(596), }, - [505] = { + [602] = { [ts_builtin_sym_end] = REDUCE(ts_aux_sym_repeat_helper1, 2), }, - [506] = { + [603] = { [ts_builtin_sym_end] = REDUCE(ts_sym_program, 1), }, }; diff --git a/spec/runtime/languages/javascript/control_flow.txt b/spec/runtime/languages/javascript/control_flow.txt new file mode 100644 index 00000000..462cd257 --- /dev/null +++ b/spec/runtime/languages/javascript/control_flow.txt @@ -0,0 +1,82 @@ +========================================== +parses if statements +========================================== +if (isReady()) { + console.log(theData) +} +--- +(program + (if_statement (function_call (identifier)) + (statement_block (expression_statement (function_call (property_access (identifier) (identifier)) (identifier)))))) + +========================================== +parses if-else statements +========================================== +if (theCondition) { + firstFunction(); +} else { + secondFunction(); +} +--- +(program (if_statement + (identifier) + (statement_block (expression_statement (function_call (identifier)))) + (statement_block (expression_statement (function_call (identifier)))))) + +================================================== +parses if-else statements with multiple conditions +================================================== +if (firstValue) { + firstFunction(); +} else if (secondValue) + secondFunction(); +else { + thirdFunction(); +} +--- +(program + (if_statement (identifier) + (statement_block (expression_statement (function_call (identifier)))) + (if_statement (identifier) + (expression_statement (function_call (identifier))) + (statement_block (expression_statement (function_call (identifier))))))) + +========================================== +parses for loops +========================================== +for (var i = 1; someCondition(i); i = next()) { + doSomething(); +} +--- +(program (for_statement + (var_declaration (assignment (identifier) (number))) + (expression_statement (function_call (identifier) (identifier))) + (assignment (identifier) (function_call (identifier))) + (statement_block (expression_statement (function_call (identifier)))))) + +=========================================== +parses switch statements +=========================================== +switch(x) { + case "hello": + print("one"); + break; + case z(): + print("two"); + break; + default: + print("three"); +} +--- +(program + (switch_statement (identifier) + (switch_case + (string) + (expression_statement (function_call (identifier) (string))) + (break_statement)) + (switch_case + (function_call (identifier)) + (expression_statement (function_call (identifier) (string))) + (break_statement)) + (switch_case + (expression_statement (function_call (identifier) (string)))))) diff --git a/spec/runtime/languages/javascript/main.txt b/spec/runtime/languages/javascript/main.txt index 525c505e..d7276014 100644 --- a/spec/runtime/languages/javascript/main.txt +++ b/spec/runtime/languages/javascript/main.txt @@ -10,62 +10,6 @@ secondFunction(x); (expression_statement (function_call (identifier) (identifier))) (expression_statement (function_call (identifier) (identifier)))) -========================================== -parses if statements -========================================== -if (isReady()) { - console.log(theData) -} ---- -(program - (if_statement (function_call (identifier)) - (statement_block (expression_statement (function_call (property_access (identifier) (identifier)) (identifier)))))) - -========================================== -parses if-else statements -========================================== -if (theCondition) { - firstFunction(); -} else { - secondFunction(); -} ---- -(program (if_statement - (identifier) - (statement_block (expression_statement (function_call (identifier)))) - (statement_block (expression_statement (function_call (identifier)))))) - -================================================== -parses if-else statements with multiple conditions -================================================== -if (firstValue) { - firstFunction(); -} else if (secondValue) - secondFunction(); -else { - thirdFunction(); -} ---- -(program - (if_statement (identifier) - (statement_block (expression_statement (function_call (identifier)))) - (if_statement (identifier) - (expression_statement (function_call (identifier))) - (statement_block (expression_statement (function_call (identifier))))))) - -========================================== -parses for loops -========================================== -for (var i = 1; someCondition(i); i = next()) { - doSomething(); -} ---- -(program (for_statement - (var_declaration (assignment (identifier) (number))) - (expression_statement (function_call (identifier) (identifier))) - (assignment (identifier) (function_call (identifier))) - (statement_block (expression_statement (function_call (identifier)))))) - ========================================== parses function expressions and calls ========================================== @@ -87,35 +31,32 @@ x.theMethod(5, 6); (property_access (identifier) (identifier)) (number) (number)))) -=========================================== -parses switch statements -=========================================== -switch(x) { - case "hello": - print("one"); - break; - case z(): - print("two"); - break; - default: - print("three"); -} +========================================== +parses property access with dot notation +========================================== +object.property = "the-value"; +print(object.property); --- (program - (switch_statement (identifier) - (switch_case - (string) - (expression_statement (function_call (identifier) (string))) - (break_statement)) - (switch_case - (function_call (identifier)) - (expression_statement (function_call (identifier) (string))) - (break_statement)) - (switch_case - (expression_statement (function_call (identifier) (string)))))) - - - - + (expression_statement (assignment + (property_access (identifier) (identifier)) + (string))) + (expression_statement (function_call + (identifier) + (property_access (identifier) (identifier))))) + +=========================================== +parses dynamic property access +========================================== +object[propertName()] = propertyValue(); +print(object[propertyName()]); +--- +(program + (expression_statement (assignment + (property_access (identifier) (function_call (identifier))) + (function_call (identifier)))) + (expression_statement (function_call + (identifier) + (property_access (identifier) (function_call (identifier))))))