diff --git a/examples/grammars/javascript.cc b/examples/grammars/javascript.cc index fdb06779..9a980450 100644 --- a/examples/grammars/javascript.cc +++ b/examples/grammars/javascript.cc @@ -28,7 +28,7 @@ namespace tree_sitter { sym("var_declaration"), sym("expression_statement") }) }, { "expression_statement", seq({ - sym("expression"), + err(sym("expression")), sym("_terminator") }) }, { "for_statement", seq({ sym("_for"), @@ -38,7 +38,7 @@ namespace tree_sitter { sym("expression_statement"), }), sym("expression_statement"), - sym("expression"), + err(sym("expression")), str(")"), sym("statement") }) }, { "if_statement", seq({ diff --git a/examples/parsers/javascript.c b/examples/parsers/javascript.c index 0bca9388..a3575bf8 100644 --- a/examples/parsers/javascript.c +++ b/examples/parsers/javascript.c @@ -1,6 +1,6 @@ #include "tree_sitter/parser.h" -STATE_COUNT = 333; +STATE_COUNT = 347; SYMBOL_COUNT = 48; enum { @@ -153,7 +153,7 @@ LEX_FN() { ACCEPT_TOKEN(ts_aux_sym_token11); case 5: if (lookahead == '\"') - ADVANCE(14); + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -161,334 +161,341 @@ LEX_FN() { ('g' <= lookahead && lookahead <= 'm') || ('o' <= lookahead && lookahead <= 's') || ('u' <= lookahead && lookahead <= 'z')) - ADVANCE(24); + ADVANCE(21); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(26); + ADVANCE(23); if (lookahead == '[') - ADVANCE(31); + ADVANCE(28); if (lookahead == 'f') - ADVANCE(32); + ADVANCE(29); if ('g' <= lookahead && lookahead <= 'f') ADVANCE(48); if (lookahead == 'n') ADVANCE(49); - if ('o' <= lookahead && lookahead <= 'n') - ADVANCE(56); if (lookahead == 't') - ADVANCE(57); - if ('u' <= lookahead && lookahead <= 't') - ADVANCE(64); + ADVANCE(56); if (lookahead == '{') - ADVANCE(65); + ADVANCE(63); LEX_ERROR(); case 6: - if (lookahead == 'u') + if (lookahead == 'a') ADVANCE(7); LEX_ERROR(); case 7: - if (lookahead == 'n') + if (lookahead == 'l') ADVANCE(8); LEX_ERROR(); case 8: - if (lookahead == 'c') + if (lookahead == 's') ADVANCE(9); LEX_ERROR(); case 9: - if (lookahead == 't') + if (lookahead == 'e') ADVANCE(10); LEX_ERROR(); case 10: - if (lookahead == 'i') - ADVANCE(11); - LEX_ERROR(); + ACCEPT_TOKEN(ts_sym_false); case 11: - if (lookahead == 'o') + if (!((lookahead == '\"') || + (lookahead == '\\'))) ADVANCE(12); - LEX_ERROR(); - case 12: - if (lookahead == 'n') - ADVANCE(13); - LEX_ERROR(); - case 13: - ACCEPT_TOKEN(ts_sym__function); - case 14: - if (!((lookahead == '\"') || - (lookahead == '\\'))) - ADVANCE(15); - if (lookahead == '\\') - ADVANCE(21); - if (']' <= lookahead && lookahead <= '\\') - ADVANCE(23); - LEX_ERROR(); - case 15: - if (!((lookahead == '\"') || - (lookahead == '\\'))) - ADVANCE(16); - if (lookahead == '\"') - ADVANCE(17); if (lookahead == '\\') ADVANCE(18); if (']' <= lookahead && lookahead <= '\\') ADVANCE(20); LEX_ERROR(); + case 12: + if (!((lookahead == '\"') || + (lookahead == '\\'))) + ADVANCE(13); + if (lookahead == '\"') + ADVANCE(14); + if (lookahead == '\\') + ADVANCE(15); + if (']' <= lookahead && lookahead <= '\\') + ADVANCE(17); + LEX_ERROR(); + case 13: + if (!((lookahead == '\"') || + (lookahead == '\\'))) + ADVANCE(13); + if (lookahead == '\"') + ADVANCE(14); + if (lookahead == '\\') + ADVANCE(15); + if (']' <= lookahead && lookahead <= '\\') + ADVANCE(17); + LEX_ERROR(); + case 14: + ACCEPT_TOKEN(ts_sym_string); + case 15: + if (!((lookahead == '\"') || + (lookahead == '\\'))) + ADVANCE(13); + if (lookahead == '\"') + ADVANCE(16); + if ('#' <= lookahead && lookahead <= '\"') + ADVANCE(13); + if (lookahead == '\\') + ADVANCE(15); + if (']' <= lookahead && lookahead <= '\\') + ADVANCE(17); + LEX_ERROR(); case 16: if (!((lookahead == '\"') || (lookahead == '\\'))) - ADVANCE(16); + ADVANCE(13); if (lookahead == '\"') - ADVANCE(17); + ADVANCE(14); if (lookahead == '\\') - ADVANCE(18); + ADVANCE(15); if (']' <= lookahead && lookahead <= '\\') - ADVANCE(20); - LEX_ERROR(); - case 17: + ADVANCE(17); ACCEPT_TOKEN(ts_sym_string); + case 17: + if (lookahead == '\"') + ADVANCE(13); + LEX_ERROR(); case 18: if (!((lookahead == '\"') || (lookahead == '\\'))) - ADVANCE(16); + ADVANCE(13); if (lookahead == '\"') ADVANCE(19); if ('#' <= lookahead && lookahead <= '\"') - ADVANCE(16); + ADVANCE(12); if (lookahead == '\\') - ADVANCE(18); + ADVANCE(15); if (']' <= lookahead && lookahead <= '\\') - ADVANCE(20); + ADVANCE(17); LEX_ERROR(); case 19: if (!((lookahead == '\"') || (lookahead == '\\'))) - ADVANCE(16); + ADVANCE(13); if (lookahead == '\"') - ADVANCE(17); + ADVANCE(14); if (lookahead == '\\') - ADVANCE(18); + ADVANCE(15); if (']' <= lookahead && lookahead <= '\\') - ADVANCE(20); + ADVANCE(17); ACCEPT_TOKEN(ts_sym_string); case 20: if (lookahead == '\"') - ADVANCE(16); + ADVANCE(12); LEX_ERROR(); case 21: - if (!((lookahead == '\"') || - (lookahead == '\\'))) - ADVANCE(16); - if (lookahead == '\"') + if ((lookahead == '$') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(22); - if ('#' <= lookahead && lookahead <= '\"') - ADVANCE(15); - if (lookahead == '\\') - ADVANCE(18); - if (']' <= lookahead && lookahead <= '\\') - ADVANCE(20); - LEX_ERROR(); + ACCEPT_TOKEN(ts_sym_identifier); case 22: - if (!((lookahead == '\"') || - (lookahead == '\\'))) - ADVANCE(16); - if (lookahead == '\"') - ADVANCE(17); - if (lookahead == '\\') - ADVANCE(18); - if (']' <= lookahead && lookahead <= '\\') - ADVANCE(20); - ACCEPT_TOKEN(ts_sym_string); + if ((lookahead == '$') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(22); + ACCEPT_TOKEN(ts_sym_identifier); case 23: - if (lookahead == '\"') - ADVANCE(15); - LEX_ERROR(); - case 24: - if ((lookahead == '$') || - ('A' <= lookahead && lookahead <= 'Z') || - (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); - ACCEPT_TOKEN(ts_sym_identifier); - case 25: - if ((lookahead == '$') || - ('A' <= lookahead && lookahead <= 'Z') || - (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); - ACCEPT_TOKEN(ts_sym_identifier); - case 26: if (lookahead == '.') - ADVANCE(27); + ADVANCE(24); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(30); + ADVANCE(27); + ACCEPT_TOKEN(ts_sym_number); + case 24: + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(25); + LEX_ERROR(); + case 25: + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(26); + ACCEPT_TOKEN(ts_sym_number); + case 26: + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(26); ACCEPT_TOKEN(ts_sym_number); case 27: - if ('0' <= lookahead && lookahead <= '9') - ADVANCE(28); - LEX_ERROR(); - case 28: - if ('0' <= lookahead && lookahead <= '9') - ADVANCE(29); - ACCEPT_TOKEN(ts_sym_number); - case 29: - if ('0' <= lookahead && lookahead <= '9') - ADVANCE(29); - ACCEPT_TOKEN(ts_sym_number); - case 30: if (lookahead == '.') - ADVANCE(27); + ADVANCE(24); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(30); + ADVANCE(27); ACCEPT_TOKEN(ts_sym_number); - case 31: + case 28: ACCEPT_TOKEN(ts_aux_sym_token9); - case 32: + case 29: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('b' <= lookahead && lookahead <= 't') || ('v' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'a') - ADVANCE(33); - if ('b' <= lookahead && lookahead <= 'a') - ADVANCE(40); + ADVANCE(30); if (lookahead == 'u') - ADVANCE(41); + ADVANCE(34); if ('v' <= lookahead && lookahead <= 'u') - ADVANCE(7); + ADVANCE(47); ACCEPT_TOKEN(ts_sym_identifier); - case 33: + case 30: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'k') || ('m' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'l') - ADVANCE(34); + ADVANCE(31); if ('m' <= lookahead && lookahead <= 'l') - ADVANCE(39); + ADVANCE(8); ACCEPT_TOKEN(ts_sym_identifier); - case 34: + case 31: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'r') || ('t' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 's') - ADVANCE(35); + ADVANCE(32); if ('t' <= lookahead && lookahead <= 's') - ADVANCE(38); + ADVANCE(9); ACCEPT_TOKEN(ts_sym_identifier); - case 35: + case 32: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'd') || ('f' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'e') - ADVANCE(36); + ADVANCE(33); if ('f' <= lookahead && lookahead <= 'e') - ADVANCE(37); + ADVANCE(10); ACCEPT_TOKEN(ts_sym_identifier); - case 36: + case 33: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); ACCEPT_TOKEN(ts_sym_false); - case 37: - ACCEPT_TOKEN(ts_sym_false); - case 38: - if (lookahead == 'e') - ADVANCE(37); - LEX_ERROR(); - case 39: - if (lookahead == 's') - ADVANCE(38); - LEX_ERROR(); - case 40: - if (lookahead == 'l') - ADVANCE(39); - LEX_ERROR(); - case 41: + case 34: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'm') || ('o' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'n') - ADVANCE(42); + ADVANCE(35); + if ('o' <= lookahead && lookahead <= 'n') + ADVANCE(46); ACCEPT_TOKEN(ts_sym_identifier); - case 42: + case 35: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'b') || ('d' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'c') - ADVANCE(43); + ADVANCE(36); + if ('d' <= lookahead && lookahead <= 'c') + ADVANCE(45); ACCEPT_TOKEN(ts_sym_identifier); - case 43: + case 36: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 's') || ('u' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 't') + ADVANCE(37); + if ('u' <= lookahead && lookahead <= 't') ADVANCE(44); ACCEPT_TOKEN(ts_sym_identifier); - case 44: + case 37: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'h') || ('j' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'i') - ADVANCE(45); + ADVANCE(38); + if ('j' <= lookahead && lookahead <= 'i') + ADVANCE(43); ACCEPT_TOKEN(ts_sym_identifier); - case 45: + case 38: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'n') || ('p' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'o') - ADVANCE(46); + ADVANCE(39); + if ('p' <= lookahead && lookahead <= 'o') + ADVANCE(42); ACCEPT_TOKEN(ts_sym_identifier); - case 46: + case 39: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'm') || ('o' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'n') - ADVANCE(47); + ADVANCE(40); + if ('o' <= lookahead && lookahead <= 'n') + ADVANCE(41); ACCEPT_TOKEN(ts_sym_identifier); - case 47: + case 40: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); ACCEPT_TOKEN(ts_sym__function); + case 41: + ACCEPT_TOKEN(ts_sym__function); + case 42: + if (lookahead == 'n') + ADVANCE(41); + LEX_ERROR(); + case 43: + if (lookahead == 'o') + ADVANCE(42); + LEX_ERROR(); + case 44: + if (lookahead == 'i') + ADVANCE(43); + LEX_ERROR(); + case 45: + if (lookahead == 't') + ADVANCE(44); + LEX_ERROR(); + case 46: + if (lookahead == 'c') + ADVANCE(45); + LEX_ERROR(); + case 47: + if (lookahead == 'n') + ADVANCE(46); + LEX_ERROR(); case 48: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || - ('a' <= lookahead && lookahead <= 't') || - ('v' <= lookahead && lookahead <= 'z')) - ADVANCE(25); - if (lookahead == 'u') - ADVANCE(41); + ('b' <= lookahead && lookahead <= 'z')) + ADVANCE(22); + if (lookahead == 'a') + ADVANCE(30); + if ('b' <= lookahead && lookahead <= 'a') + ADVANCE(7); ACCEPT_TOKEN(ts_sym_identifier); case 49: if ((lookahead == '$') || @@ -496,7 +503,7 @@ LEX_FN() { (lookahead == '_') || ('a' <= lookahead && lookahead <= 't') || ('v' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'u') ADVANCE(53); ACCEPT_TOKEN(ts_sym_identifier); @@ -516,7 +523,7 @@ LEX_FN() { (lookahead == '_') || ('a' <= lookahead && lookahead <= 'k') || ('m' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'l') ADVANCE(54); ACCEPT_TOKEN(ts_sym_identifier); @@ -526,7 +533,7 @@ LEX_FN() { (lookahead == '_') || ('a' <= lookahead && lookahead <= 'k') || ('m' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'l') ADVANCE(55); ACCEPT_TOKEN(ts_sym_identifier); @@ -535,102 +542,88 @@ LEX_FN() { ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); ACCEPT_TOKEN(ts_sym_null); case 56: - if (lookahead == 'u') - ADVANCE(50); - LEX_ERROR(); - case 57: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'q') || ('s' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'r') - ADVANCE(58); - if ('s' <= lookahead && lookahead <= 'r') - ADVANCE(63); + ADVANCE(60); ACCEPT_TOKEN(ts_sym_identifier); + case 57: + if (lookahead == 'u') + ADVANCE(58); + LEX_ERROR(); case 58: + if (lookahead == 'e') + ADVANCE(59); + LEX_ERROR(); + case 59: + ACCEPT_TOKEN(ts_sym_true); + case 60: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 't') || ('v' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'u') - ADVANCE(59); - if ('v' <= lookahead && lookahead <= 'u') - ADVANCE(62); + ADVANCE(61); ACCEPT_TOKEN(ts_sym_identifier); - case 59: + case 61: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'd') || ('f' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'e') - ADVANCE(60); - if ('f' <= lookahead && lookahead <= 'e') - ADVANCE(61); + ADVANCE(62); ACCEPT_TOKEN(ts_sym_identifier); - case 60: + case 62: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); ACCEPT_TOKEN(ts_sym_true); - case 61: - ACCEPT_TOKEN(ts_sym_true); - case 62: - if (lookahead == 'e') - ADVANCE(61); - LEX_ERROR(); case 63: - if (lookahead == 'u') - ADVANCE(62); - LEX_ERROR(); - case 64: - if (lookahead == 'r') - ADVANCE(63); - LEX_ERROR(); - case 65: ACCEPT_TOKEN(ts_aux_sym_token3); - case 66: + case 64: if (lookahead == '\n') ADVANCE(1); if (lookahead == ';') ADVANCE(4); LEX_ERROR(); - case 67: + case 65: if (lookahead == '(') ADVANCE(2); if (lookahead == ')') - ADVANCE(68); + ADVANCE(66); if (lookahead == ',') - ADVANCE(69); + ADVANCE(67); if (lookahead == '.') ADVANCE(3); LEX_ERROR(); - case 68: + case 66: ACCEPT_TOKEN(ts_aux_sym_token2); - case 69: + case 67: ACCEPT_TOKEN(ts_aux_sym_token6); - case 70: + case 68: if (lookahead == '(') ADVANCE(2); if (lookahead == ')') - ADVANCE(68); + ADVANCE(66); if (lookahead == '.') ADVANCE(3); LEX_ERROR(); - case 71: + case 69: if (lookahead == '\"') - ADVANCE(14); + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -640,180 +633,163 @@ LEX_FN() { ('o' <= lookahead && lookahead <= 's') || (lookahead == 'u') || ('w' <= lookahead && lookahead <= 'z')) - ADVANCE(24); + ADVANCE(21); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(26); + ADVANCE(23); if (lookahead == '[') - ADVANCE(31); + ADVANCE(28); if (lookahead == 'f') - ADVANCE(73); + ADVANCE(71); if ('g' <= lookahead && lookahead <= 'f') - ADVANCE(78); + ADVANCE(75); if (lookahead == 'i') - ADVANCE(79); - if ('j' <= lookahead && lookahead <= 'i') - ADVANCE(82); + ADVANCE(76); if (lookahead == 'n') ADVANCE(49); if (lookahead == 't') - ADVANCE(57); + ADVANCE(56); if (lookahead == 'v') - ADVANCE(83); + ADVANCE(79); if (lookahead == '{') - ADVANCE(65); + ADVANCE(63); if (lookahead == '}') - ADVANCE(88); + ADVANCE(84); LEX_ERROR(); - case 72: + case 70: if (lookahead == 'a') - ADVANCE(40); + ADVANCE(7); + if (lookahead == 'u') + ADVANCE(47); LEX_ERROR(); - case 73: + case 71: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('b' <= lookahead && lookahead <= 'n') || ('p' <= lookahead && lookahead <= 't') || ('v' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'a') - ADVANCE(33); - if ('b' <= lookahead && lookahead <= 'a') - ADVANCE(40); + ADVANCE(30); if (lookahead == 'o') - ADVANCE(74); - if ('p' <= lookahead && lookahead <= 'o') - ADVANCE(77); + ADVANCE(72); if (lookahead == 'u') - ADVANCE(41); - if ('v' <= lookahead && lookahead <= 'u') - ADVANCE(7); + ADVANCE(34); ACCEPT_TOKEN(ts_sym_identifier); - case 74: + case 72: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'q') || ('s' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'r') - ADVANCE(76); + ADVANCE(74); ACCEPT_TOKEN(ts_sym_identifier); - case 75: + case 73: ACCEPT_TOKEN(ts_sym__for); - case 76: + case 74: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); ACCEPT_TOKEN(ts_sym__for); - case 77: - if (lookahead == 'r') - ADVANCE(75); - LEX_ERROR(); - case 78: + case 75: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || - ('b' <= lookahead && lookahead <= 'z')) - ADVANCE(25); - if (lookahead == 'a') - ADVANCE(33); + ('a' <= lookahead && lookahead <= 't') || + ('v' <= lookahead && lookahead <= 'z')) + ADVANCE(22); + if (lookahead == 'u') + ADVANCE(34); ACCEPT_TOKEN(ts_sym_identifier); - case 79: + case 76: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'e') || ('g' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'f') - ADVANCE(81); + ADVANCE(78); ACCEPT_TOKEN(ts_sym_identifier); - case 80: + case 77: ACCEPT_TOKEN(ts_sym__if); - case 81: + case 78: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); ACCEPT_TOKEN(ts_sym__if); - case 82: - if (lookahead == 'f') - ADVANCE(80); - LEX_ERROR(); - case 83: + case 79: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('b' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'a') - ADVANCE(84); - if ('b' <= lookahead && lookahead <= 'a') - ADVANCE(87); + ADVANCE(82); ACCEPT_TOKEN(ts_sym_identifier); - case 84: + case 80: + if (lookahead == 'r') + ADVANCE(81); + LEX_ERROR(); + case 81: + ACCEPT_TOKEN(ts_sym__var); + case 82: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'q') || ('s' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'r') - ADVANCE(85); - if ('s' <= lookahead && lookahead <= 'r') - ADVANCE(86); + ADVANCE(83); ACCEPT_TOKEN(ts_sym_identifier); - case 85: + case 83: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); ACCEPT_TOKEN(ts_sym__var); - case 86: - ACCEPT_TOKEN(ts_sym__var); - case 87: - if (lookahead == 'r') + case 84: + ACCEPT_TOKEN(ts_aux_sym_token4); + case 85: + if (lookahead == '\n') + ADVANCE(1); + if (lookahead == ';') + ADVANCE(4); + if (lookahead == '=') ADVANCE(86); LEX_ERROR(); + case 86: + ACCEPT_TOKEN(ts_aux_sym_token5); + case 87: + if ((lookahead == '$') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(21); + LEX_ERROR(); case 88: - ACCEPT_TOKEN(ts_aux_sym_token4); + if (lookahead == '(') + ADVANCE(2); + if (lookahead == ',') + ADVANCE(67); + if (lookahead == '.') + ADVANCE(3); + if (lookahead == '}') + ADVANCE(84); + LEX_ERROR(); case 89: - if (lookahead == '\n') - ADVANCE(1); - if (lookahead == ';') - ADVANCE(4); - if (lookahead == '=') - ADVANCE(90); + if (lookahead == '}') + ADVANCE(84); LEX_ERROR(); case 90: - ACCEPT_TOKEN(ts_aux_sym_token5); - case 91: - if ((lookahead == '$') || - ('A' <= lookahead && lookahead <= 'Z') || - (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(24); - LEX_ERROR(); - case 92: - if (lookahead == '(') - ADVANCE(2); - if (lookahead == ',') - ADVANCE(69); - if (lookahead == '.') - ADVANCE(3); - if (lookahead == '}') - ADVANCE(88); - LEX_ERROR(); - case 93: - if (lookahead == '}') - ADVANCE(88); - LEX_ERROR(); - case 94: if (lookahead == '\n') ADVANCE(1); if (lookahead == '(') @@ -821,15 +797,15 @@ LEX_FN() { if (lookahead == '.') ADVANCE(3); if (lookahead == ':') - ADVANCE(95); + ADVANCE(91); if (lookahead == ';') ADVANCE(4); if (lookahead == '=') - ADVANCE(90); + ADVANCE(86); LEX_ERROR(); - case 95: + case 91: ACCEPT_TOKEN(ts_aux_sym_token8); - case 96: + case 92: if (lookahead == '\n') ADVANCE(1); if (lookahead == '(') @@ -837,157 +813,161 @@ LEX_FN() { if (lookahead == '.') ADVANCE(3); if (lookahead == ':') - ADVANCE(95); + ADVANCE(91); if (lookahead == ';') ADVANCE(4); LEX_ERROR(); - case 97: + case 93: if (lookahead == '(') ADVANCE(2); if (lookahead == ',') - ADVANCE(69); + ADVANCE(67); if (lookahead == '.') ADVANCE(3); if (lookahead == ']') - ADVANCE(98); + ADVANCE(94); + LEX_ERROR(); + case 94: + ACCEPT_TOKEN(ts_aux_sym_token10); + case 95: + if (lookahead == '\n') + ADVANCE(1); + if (lookahead == ';') + ADVANCE(4); + if (lookahead == '}') + ADVANCE(84); + LEX_ERROR(); + case 96: + if (lookahead == '{') + ADVANCE(63); + LEX_ERROR(); + case 97: + if (lookahead == ')') + ADVANCE(66); LEX_ERROR(); case 98: - ACCEPT_TOKEN(ts_aux_sym_token10); + if (lookahead == ')') + ADVANCE(66); + if (lookahead == ',') + ADVANCE(67); + LEX_ERROR(); case 99: - if (lookahead == '{') - ADVANCE(65); + if ((lookahead == '$') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(21); + if (lookahead == ')') + ADVANCE(66); LEX_ERROR(); case 100: - if (lookahead == ')') - ADVANCE(68); + if (lookahead == '(') + ADVANCE(2); LEX_ERROR(); case 101: - if (lookahead == ')') - ADVANCE(68); - if (lookahead == ',') - ADVANCE(69); + if ((lookahead == '$') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(21); + if (lookahead == '(') + ADVANCE(2); LEX_ERROR(); case 102: - if ((lookahead == '$') || - ('A' <= lookahead && lookahead <= 'Z') || - (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(24); - if (lookahead == ')') - ADVANCE(68); + if (lookahead == ']') + ADVANCE(94); LEX_ERROR(); case 103: - if (lookahead == '(') - ADVANCE(2); + if (lookahead == ',') + ADVANCE(67); + if (lookahead == ']') + ADVANCE(94); LEX_ERROR(); case 104: + if (lookahead == '\"') + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(24); - if (lookahead == '(') - ADVANCE(2); + ('a' <= lookahead && lookahead <= 'e') || + ('g' <= lookahead && lookahead <= 'm') || + ('o' <= lookahead && lookahead <= 's') || + ('u' <= lookahead && lookahead <= 'z')) + ADVANCE(21); + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(23); + if (lookahead == '[') + ADVANCE(28); + if (lookahead == ']') + ADVANCE(94); + if (lookahead == 'f') + ADVANCE(29); + if ('g' <= lookahead && lookahead <= 'f') + ADVANCE(48); + if (lookahead == 'n') + ADVANCE(49); + if (lookahead == 't') + ADVANCE(56); + if (lookahead == '{') + ADVANCE(63); LEX_ERROR(); case 105: - if (lookahead == ']') - ADVANCE(98); + if (lookahead == ':') + ADVANCE(91); LEX_ERROR(); case 106: if (lookahead == ',') - ADVANCE(69); - if (lookahead == ']') - ADVANCE(98); + ADVANCE(67); + if (lookahead == '}') + ADVANCE(84); LEX_ERROR(); case 107: if (lookahead == '\"') - ADVANCE(14); + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'e') || - ('g' <= lookahead && lookahead <= 'm') || - ('o' <= lookahead && lookahead <= 's') || - ('u' <= lookahead && lookahead <= 'z')) - ADVANCE(24); - if ('0' <= lookahead && lookahead <= '9') - ADVANCE(26); - if (lookahead == '[') - ADVANCE(31); - if (lookahead == ']') - ADVANCE(98); - if (lookahead == 'f') - ADVANCE(32); - if ('g' <= lookahead && lookahead <= 'f') - ADVANCE(48); - if (lookahead == 'n') - ADVANCE(49); - if ('o' <= lookahead && lookahead <= 'n') - ADVANCE(56); - if (lookahead == 't') - ADVANCE(57); - if ('u' <= lookahead && lookahead <= 't') - ADVANCE(64); - if (lookahead == '{') - ADVANCE(65); + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(21); + if (lookahead == '}') + ADVANCE(84); LEX_ERROR(); case 108: - if (lookahead == ':') - ADVANCE(95); + if (lookahead == '(') + ADVANCE(2); + if (lookahead == ',') + ADVANCE(67); + if (lookahead == '.') + ADVANCE(3); + if (lookahead == '=') + ADVANCE(86); + if (lookahead == '}') + ADVANCE(84); LEX_ERROR(); case 109: - if (lookahead == ',') - ADVANCE(69); - if (lookahead == '}') - ADVANCE(88); + if (lookahead == '\"') + ADVANCE(11); + if ((lookahead == '$') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(21); LEX_ERROR(); case 110: - if (lookahead == '\"') - ADVANCE(14); - if ((lookahead == '$') || - ('A' <= lookahead && lookahead <= 'Z') || - (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(24); - if (lookahead == '}') - ADVANCE(88); + if (lookahead == '(') + ADVANCE(2); + if (lookahead == ',') + ADVANCE(67); + if (lookahead == '.') + ADVANCE(3); + if (lookahead == '=') + ADVANCE(86); + if (lookahead == ']') + ADVANCE(94); LEX_ERROR(); case 111: - if (lookahead == '(') - ADVANCE(2); - if (lookahead == ',') - ADVANCE(69); - if (lookahead == '.') - ADVANCE(3); - if (lookahead == '=') - ADVANCE(90); - if (lookahead == '}') - ADVANCE(88); - LEX_ERROR(); - case 112: if (lookahead == '\"') - ADVANCE(14); - if ((lookahead == '$') || - ('A' <= lookahead && lookahead <= 'Z') || - (lookahead == '_') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(24); - LEX_ERROR(); - case 113: - if (lookahead == '(') - ADVANCE(2); - if (lookahead == ',') - ADVANCE(69); - if (lookahead == '.') - ADVANCE(3); - if (lookahead == '=') - ADVANCE(90); - if (lookahead == ']') - ADVANCE(98); - LEX_ERROR(); - case 114: - if (lookahead == '\"') - ADVANCE(14); + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -995,41 +975,47 @@ LEX_FN() { ('g' <= lookahead && lookahead <= 'm') || ('o' <= lookahead && lookahead <= 's') || ('u' <= lookahead && lookahead <= 'z')) - ADVANCE(24); + ADVANCE(21); if (lookahead == ')') - ADVANCE(68); + ADVANCE(66); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(26); + ADVANCE(23); if (lookahead == '[') - ADVANCE(31); + ADVANCE(28); if (lookahead == 'f') - ADVANCE(32); + ADVANCE(29); if ('g' <= lookahead && lookahead <= 'f') ADVANCE(48); if (lookahead == 'n') ADVANCE(49); - if ('o' <= lookahead && lookahead <= 'n') - ADVANCE(56); if (lookahead == 't') - ADVANCE(57); - if ('u' <= lookahead && lookahead <= 't') - ADVANCE(64); + ADVANCE(56); if (lookahead == '{') - ADVANCE(65); + ADVANCE(63); LEX_ERROR(); - case 115: + case 112: if (lookahead == '(') ADVANCE(2); if (lookahead == ')') - ADVANCE(68); + ADVANCE(66); if (lookahead == ',') - ADVANCE(69); + ADVANCE(67); if (lookahead == '.') ADVANCE(3); if (lookahead == '=') - ADVANCE(90); + ADVANCE(86); LEX_ERROR(); - case 116: + case 113: + if (lookahead == '\n') + ADVANCE(1); + if (lookahead == ',') + ADVANCE(67); + if (lookahead == ';') + ADVANCE(4); + if (lookahead == '}') + ADVANCE(84); + LEX_ERROR(); + case 114: if (lookahead == '\n') ADVANCE(1); if (lookahead == '(') @@ -1039,11 +1025,11 @@ LEX_FN() { if (lookahead == ';') ADVANCE(4); if (lookahead == '=') - ADVANCE(90); + ADVANCE(86); LEX_ERROR(); - case 117: + case 115: if (lookahead == '\"') - ADVANCE(14); + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -1053,100 +1039,92 @@ LEX_FN() { ('o' <= lookahead && lookahead <= 's') || (lookahead == 'u') || ('w' <= lookahead && lookahead <= 'z')) - ADVANCE(24); + ADVANCE(21); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(26); + ADVANCE(23); if (lookahead == '[') - ADVANCE(31); + ADVANCE(28); if (lookahead == 'e') - ADVANCE(118); + ADVANCE(116); if ('f' <= lookahead && lookahead <= 'e') - ADVANCE(125); + ADVANCE(123); if (lookahead == 'f') - ADVANCE(73); + ADVANCE(71); if ('g' <= lookahead && lookahead <= 'f') - ADVANCE(78); + ADVANCE(48); if (lookahead == 'i') - ADVANCE(79); - if ('j' <= lookahead && lookahead <= 'i') - ADVANCE(82); + ADVANCE(76); if (lookahead == 'n') ADVANCE(49); if (lookahead == 't') - ADVANCE(57); + ADVANCE(56); if (lookahead == 'v') - ADVANCE(83); - if ('w' <= lookahead && lookahead <= 'v') - ADVANCE(126); + ADVANCE(79); if (lookahead == '{') - ADVANCE(65); + ADVANCE(63); if (lookahead == '}') - ADVANCE(88); + ADVANCE(84); LEX_ERROR(); - case 118: + case 116: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'k') || ('m' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'l') - ADVANCE(119); + ADVANCE(117); if ('m' <= lookahead && lookahead <= 'l') - ADVANCE(124); + ADVANCE(122); ACCEPT_TOKEN(ts_sym_identifier); - case 119: + case 117: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'r') || ('t' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 's') - ADVANCE(120); + ADVANCE(118); if ('t' <= lookahead && lookahead <= 's') - ADVANCE(123); + ADVANCE(121); ACCEPT_TOKEN(ts_sym_identifier); - case 120: + case 118: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'd') || ('f' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); if (lookahead == 'e') - ADVANCE(121); + ADVANCE(119); if ('f' <= lookahead && lookahead <= 'e') - ADVANCE(122); + ADVANCE(120); ACCEPT_TOKEN(ts_sym_identifier); - case 121: + case 119: if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(25); + ADVANCE(22); ACCEPT_TOKEN(ts_sym__else); - case 122: + case 120: ACCEPT_TOKEN(ts_sym__else); - case 123: + case 121: if (lookahead == 'e') + ADVANCE(120); + LEX_ERROR(); + case 122: + if (lookahead == 's') + ADVANCE(121); + LEX_ERROR(); + case 123: + if (lookahead == 'l') ADVANCE(122); LEX_ERROR(); case 124: - if (lookahead == 's') - ADVANCE(123); - LEX_ERROR(); - case 125: - if (lookahead == 'l') - ADVANCE(124); - LEX_ERROR(); - case 126: - if (lookahead == 'a') - ADVANCE(87); - LEX_ERROR(); - case 127: if (lookahead == '\"') - ADVANCE(14); + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -1156,41 +1134,39 @@ LEX_FN() { ('o' <= lookahead && lookahead <= 's') || (lookahead == 'u') || ('w' <= lookahead && lookahead <= 'z')) - ADVANCE(24); + ADVANCE(21); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(26); + ADVANCE(23); if (lookahead == '[') - ADVANCE(31); + ADVANCE(28); if (lookahead == 'f') - ADVANCE(73); + ADVANCE(71); if ('g' <= lookahead && lookahead <= 'f') - ADVANCE(78); + ADVANCE(75); if (lookahead == 'i') - ADVANCE(79); - if ('j' <= lookahead && lookahead <= 'i') - ADVANCE(82); + ADVANCE(76); if (lookahead == 'n') ADVANCE(49); if (lookahead == 't') - ADVANCE(57); + ADVANCE(56); if (lookahead == 'v') - ADVANCE(83); + ADVANCE(79); if (lookahead == '{') - ADVANCE(65); + ADVANCE(63); LEX_ERROR(); - case 128: + case 125: if (lookahead == '(') ADVANCE(2); if (lookahead == ')') - ADVANCE(68); + ADVANCE(66); if (lookahead == '.') ADVANCE(3); if (lookahead == '=') - ADVANCE(90); + ADVANCE(86); LEX_ERROR(); - case 129: + case 126: if (lookahead == '\"') - ADVANCE(14); + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -1199,33 +1175,27 @@ LEX_FN() { ('o' <= lookahead && lookahead <= 's') || (lookahead == 'u') || ('w' <= lookahead && lookahead <= 'z')) - ADVANCE(24); + ADVANCE(21); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(26); + ADVANCE(23); if (lookahead == '[') - ADVANCE(31); + ADVANCE(28); if (lookahead == 'f') - ADVANCE(32); + ADVANCE(29); if ('g' <= lookahead && lookahead <= 'f') ADVANCE(48); if (lookahead == 'n') ADVANCE(49); - if ('o' <= lookahead && lookahead <= 'n') - ADVANCE(56); if (lookahead == 't') - ADVANCE(57); - if ('u' <= lookahead && lookahead <= 't') - ADVANCE(64); + ADVANCE(56); if (lookahead == 'v') - ADVANCE(83); - if ('w' <= lookahead && lookahead <= 'v') - ADVANCE(126); + ADVANCE(79); if (lookahead == '{') - ADVANCE(65); + ADVANCE(63); LEX_ERROR(); - case 130: + case 127: if (lookahead == '\"') - ADVANCE(14); + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -1235,47 +1205,41 @@ LEX_FN() { ('o' <= lookahead && lookahead <= 's') || (lookahead == 'u') || ('w' <= lookahead && lookahead <= 'z')) - ADVANCE(24); + ADVANCE(21); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(26); + ADVANCE(23); if (lookahead == '[') - ADVANCE(31); + ADVANCE(28); if (lookahead == 'e') - ADVANCE(118); + ADVANCE(116); if ('f' <= lookahead && lookahead <= 'e') - ADVANCE(125); + ADVANCE(123); if (lookahead == 'f') - ADVANCE(73); + ADVANCE(71); if ('g' <= lookahead && lookahead <= 'f') - ADVANCE(78); + ADVANCE(48); if (lookahead == 'i') - ADVANCE(79); - if ('j' <= lookahead && lookahead <= 'i') - ADVANCE(82); + ADVANCE(76); if (lookahead == 'n') ADVANCE(49); if (lookahead == 't') - ADVANCE(57); + ADVANCE(56); if (lookahead == 'v') - ADVANCE(83); - if ('w' <= lookahead && lookahead <= 'v') - ADVANCE(126); + ADVANCE(79); if (lookahead == '{') - ADVANCE(65); + ADVANCE(63); LEX_ERROR(); - case 131: + case 128: LEX_ERROR(); - case 132: - if (lookahead == 'l') - ADVANCE(124); - if (lookahead == 'u') - ADVANCE(7); + case 129: + if (lookahead == 'a') + ADVANCE(80); LEX_ERROR(); case ts_lex_state_error: if (lookahead == '\n') ADVANCE(1); if (lookahead == '\"') - ADVANCE(14); + ADVANCE(11); if ((lookahead == '$') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -1285,51 +1249,47 @@ LEX_FN() { ('o' <= lookahead && lookahead <= 's') || (lookahead == 'u') || ('w' <= lookahead && lookahead <= 'z')) - ADVANCE(24); + ADVANCE(21); if (lookahead == '(') ADVANCE(2); if (lookahead == ')') - ADVANCE(68); + ADVANCE(66); if (lookahead == ',') - ADVANCE(69); + ADVANCE(67); if (lookahead == '.') ADVANCE(3); if ('0' <= lookahead && lookahead <= '9') - ADVANCE(26); + ADVANCE(23); if (lookahead == ':') - ADVANCE(95); + ADVANCE(91); if (lookahead == ';') ADVANCE(4); if (lookahead == '=') - ADVANCE(90); + ADVANCE(86); if (lookahead == '[') - ADVANCE(31); + ADVANCE(28); if (lookahead == ']') - ADVANCE(98); + ADVANCE(94); if (lookahead == 'e') - ADVANCE(118); - if ('f' <= lookahead && lookahead <= 'e') - ADVANCE(132); + ADVANCE(116); if (lookahead == 'f') - ADVANCE(73); + ADVANCE(71); if ('g' <= lookahead && lookahead <= 'f') - ADVANCE(78); + ADVANCE(48); if (lookahead == 'i') - ADVANCE(79); - if ('j' <= lookahead && lookahead <= 'i') - ADVANCE(82); + ADVANCE(76); if (lookahead == 'n') ADVANCE(49); if (lookahead == 't') - ADVANCE(57); + ADVANCE(56); if (lookahead == 'v') - ADVANCE(83); + ADVANCE(79); if ('w' <= lookahead && lookahead <= 'v') - ADVANCE(126); + ADVANCE(129); if (lookahead == '{') - ADVANCE(65); + ADVANCE(63); if (lookahead == '}') - ADVANCE(88); + ADVANCE(84); LEX_ERROR(); default: LEX_PANIC(); @@ -1337,372 +1297,387 @@ LEX_FN() { } LEX_STATES = { - [0] = 127, - [1] = 103, - [2] = 129, - [3] = 104, - [4] = 99, + [0] = 124, + [1] = 100, + [2] = 126, + [3] = 101, + [4] = 96, [5] = 0, - [6] = 71, - [7] = 103, - [8] = 129, - [9] = 91, - [10] = 66, + [6] = 69, + [7] = 100, + [8] = 126, + [9] = 87, + [10] = 64, [11] = 5, [12] = 5, - [13] = 89, + [13] = 85, [14] = 5, [15] = 0, [16] = 0, [17] = 0, - [18] = 114, - [19] = 104, - [20] = 99, - [21] = 67, - [22] = 71, - [23] = 103, + [18] = 111, + [19] = 101, + [20] = 96, + [21] = 65, + [22] = 69, + [23] = 100, [24] = 5, - [25] = 104, - [26] = 99, - [27] = 70, - [28] = 71, - [29] = 91, - [30] = 66, - [31] = 71, - [32] = 71, - [33] = 89, + [25] = 101, + [26] = 96, + [27] = 68, + [28] = 69, + [29] = 87, + [30] = 64, + [31] = 69, + [32] = 69, + [33] = 85, [34] = 0, - [35] = 71, - [36] = 91, + [35] = 69, + [36] = 87, [37] = 0, - [38] = 71, - [39] = 116, + [38] = 69, + [39] = 114, [40] = 5, [41] = 0, - [42] = 110, - [43] = 108, + [42] = 107, + [43] = 105, [44] = 5, - [45] = 104, - [46] = 99, - [47] = 92, - [48] = 71, - [49] = 71, - [50] = 93, - [51] = 71, - [52] = 94, - [53] = 96, - [54] = 93, - [55] = 71, + [45] = 101, + [46] = 96, + [47] = 88, + [48] = 69, + [49] = 69, + [50] = 89, + [51] = 69, + [52] = 90, + [53] = 92, + [54] = 89, + [55] = 69, [56] = 0, - [57] = 107, - [58] = 104, - [59] = 99, - [60] = 97, - [61] = 71, - [62] = 93, - [63] = 97, - [64] = 103, - [65] = 99, - [66] = 97, - [67] = 102, - [68] = 101, - [69] = 100, - [70] = 99, - [71] = 91, - [72] = 101, - [73] = 100, - [74] = 99, - [75] = 97, - [76] = 97, - [77] = 97, - [78] = 105, - [79] = 0, - [80] = 114, - [81] = 67, - [82] = 67, - [83] = 67, - [84] = 100, + [57] = 104, + [58] = 101, + [59] = 96, + [60] = 93, + [61] = 69, + [62] = 89, + [63] = 93, + [64] = 95, + [65] = 100, + [66] = 96, + [67] = 93, + [68] = 99, + [69] = 98, + [70] = 97, + [71] = 96, + [72] = 87, + [73] = 98, + [74] = 97, + [75] = 96, + [76] = 93, + [77] = 93, + [78] = 93, + [79] = 102, + [80] = 0, + [81] = 111, + [82] = 65, + [83] = 65, + [84] = 65, [85] = 97, - [86] = 114, - [87] = 67, - [88] = 100, - [89] = 67, - [90] = 5, - [91] = 67, - [92] = 100, - [93] = 91, - [94] = 67, - [95] = 115, - [96] = 5, - [97] = 67, - [98] = 110, - [99] = 108, - [100] = 5, - [101] = 92, - [102] = 92, - [103] = 92, - [104] = 93, - [105] = 67, - [106] = 114, - [107] = 67, - [108] = 100, - [109] = 92, - [110] = 92, - [111] = 107, - [112] = 97, - [113] = 105, - [114] = 67, - [115] = 5, - [116] = 97, - [117] = 105, - [118] = 91, - [119] = 97, - [120] = 113, - [121] = 5, - [122] = 97, - [123] = 110, - [124] = 108, - [125] = 5, - [126] = 92, - [127] = 93, - [128] = 97, - [129] = 112, - [130] = 108, - [131] = 5, - [132] = 92, - [133] = 93, - [134] = 91, - [135] = 92, - [136] = 111, - [137] = 5, - [138] = 92, - [139] = 110, - [140] = 108, - [141] = 5, - [142] = 92, - [143] = 93, - [144] = 92, - [145] = 107, - [146] = 97, - [147] = 105, - [148] = 92, - [149] = 92, - [150] = 107, - [151] = 97, - [152] = 105, - [153] = 97, - [154] = 97, - [155] = 106, - [156] = 106, - [157] = 92, - [158] = 109, - [159] = 93, - [160] = 92, - [161] = 109, - [162] = 93, - [163] = 97, - [164] = 109, - [165] = 93, - [166] = 97, - [167] = 106, - [168] = 67, - [169] = 106, - [170] = 67, - [171] = 109, - [172] = 93, - [173] = 67, - [174] = 67, - [175] = 97, - [176] = 0, - [177] = 106, - [178] = 109, - [179] = 93, - [180] = 0, - [181] = 93, - [182] = 92, - [183] = 103, - [184] = 99, - [185] = 92, - [186] = 92, - [187] = 93, - [188] = 0, - [189] = 109, - [190] = 93, - [191] = 70, - [192] = 103, - [193] = 99, - [194] = 70, - [195] = 70, - [196] = 70, - [197] = 70, - [198] = 114, - [199] = 67, - [200] = 100, - [201] = 70, - [202] = 70, - [203] = 127, - [204] = 103, - [205] = 129, - [206] = 0, - [207] = 5, - [208] = 5, - [209] = 5, - [210] = 70, - [211] = 127, - [212] = 103, + [86] = 93, + [87] = 111, + [88] = 65, + [89] = 97, + [90] = 65, + [91] = 5, + [92] = 65, + [93] = 97, + [94] = 87, + [95] = 65, + [96] = 112, + [97] = 5, + [98] = 65, + [99] = 107, + [100] = 105, + [101] = 5, + [102] = 88, + [103] = 88, + [104] = 88, + [105] = 89, + [106] = 65, + [107] = 111, + [108] = 65, + [109] = 97, + [110] = 88, + [111] = 88, + [112] = 104, + [113] = 93, + [114] = 102, + [115] = 65, + [116] = 5, + [117] = 93, + [118] = 102, + [119] = 87, + [120] = 93, + [121] = 110, + [122] = 5, + [123] = 93, + [124] = 107, + [125] = 105, + [126] = 5, + [127] = 88, + [128] = 89, + [129] = 93, + [130] = 109, + [131] = 105, + [132] = 5, + [133] = 88, + [134] = 89, + [135] = 87, + [136] = 88, + [137] = 108, + [138] = 5, + [139] = 88, + [140] = 107, + [141] = 105, + [142] = 5, + [143] = 88, + [144] = 89, + [145] = 88, + [146] = 104, + [147] = 93, + [148] = 102, + [149] = 88, + [150] = 88, + [151] = 104, + [152] = 93, + [153] = 102, + [154] = 93, + [155] = 93, + [156] = 103, + [157] = 103, + [158] = 88, + [159] = 106, + [160] = 89, + [161] = 88, + [162] = 106, + [163] = 89, + [164] = 93, + [165] = 106, + [166] = 89, + [167] = 93, + [168] = 103, + [169] = 65, + [170] = 103, + [171] = 65, + [172] = 106, + [173] = 89, + [174] = 65, + [175] = 65, + [176] = 93, + [177] = 0, + [178] = 103, + [179] = 113, + [180] = 89, + [181] = 0, + [182] = 64, + [183] = 89, + [184] = 88, + [185] = 95, + [186] = 100, + [187] = 96, + [188] = 88, + [189] = 88, + [190] = 89, + [191] = 0, + [192] = 106, + [193] = 89, + [194] = 68, + [195] = 95, + [196] = 100, + [197] = 96, + [198] = 68, + [199] = 68, + [200] = 68, + [201] = 68, + [202] = 111, + [203] = 65, + [204] = 97, + [205] = 68, + [206] = 68, + [207] = 124, + [208] = 100, + [209] = 126, + [210] = 0, + [211] = 5, + [212] = 5, [213] = 5, - [214] = 70, - [215] = 127, - [216] = 91, - [217] = 66, - [218] = 117, - [219] = 117, - [220] = 89, - [221] = 0, - [222] = 117, - [223] = 117, - [224] = 117, - [225] = 127, - [226] = 117, - [227] = 71, - [228] = 93, - [229] = 117, - [230] = 109, - [231] = 91, - [232] = 70, - [233] = 128, - [234] = 5, - [235] = 70, - [236] = 110, - [237] = 108, - [238] = 5, - [239] = 92, - [240] = 93, - [241] = 70, - [242] = 70, - [243] = 109, - [244] = 93, - [245] = 70, - [246] = 107, - [247] = 97, - [248] = 105, - [249] = 70, - [250] = 70, - [251] = 106, - [252] = 100, - [253] = 117, - [254] = 117, - [255] = 127, - [256] = 71, - [257] = 100, - [258] = 93, - [259] = 67, - [260] = 103, - [261] = 99, - [262] = 67, - [263] = 67, - [264] = 100, - [265] = 0, - [266] = 0, - [267] = 5, - [268] = 5, - [269] = 70, - [270] = 127, - [271] = 71, - [272] = 93, + [214] = 68, + [215] = 124, + [216] = 100, + [217] = 5, + [218] = 68, + [219] = 124, + [220] = 87, + [221] = 64, + [222] = 115, + [223] = 115, + [224] = 85, + [225] = 0, + [226] = 115, + [227] = 115, + [228] = 115, + [229] = 124, + [230] = 115, + [231] = 69, + [232] = 89, + [233] = 115, + [234] = 113, + [235] = 64, + [236] = 87, + [237] = 68, + [238] = 125, + [239] = 5, + [240] = 68, + [241] = 107, + [242] = 105, + [243] = 5, + [244] = 88, + [245] = 89, + [246] = 68, + [247] = 68, + [248] = 106, + [249] = 89, + [250] = 68, + [251] = 104, + [252] = 93, + [253] = 102, + [254] = 68, + [255] = 68, + [256] = 103, + [257] = 97, + [258] = 115, + [259] = 97, + [260] = 64, + [261] = 115, + [262] = 124, + [263] = 69, + [264] = 97, + [265] = 89, + [266] = 65, + [267] = 95, + [268] = 100, + [269] = 96, + [270] = 65, + [271] = 65, + [272] = 97, [273] = 0, - [274] = 103, - [275] = 99, - [276] = 0, - [277] = 5, - [278] = 5, - [279] = 70, - [280] = 127, - [281] = 103, - [282] = 5, - [283] = 70, - [284] = 127, - [285] = 103, - [286] = 129, + [274] = 0, + [275] = 5, + [276] = 5, + [277] = 68, + [278] = 124, + [279] = 69, + [280] = 97, + [281] = 89, + [282] = 0, + [283] = 95, + [284] = 100, + [285] = 96, + [286] = 0, [287] = 5, [288] = 5, - [289] = 70, - [290] = 127, - [291] = 103, + [289] = 68, + [290] = 124, + [291] = 100, [292] = 5, - [293] = 70, - [294] = 127, - [295] = 91, - [296] = 66, - [297] = 130, - [298] = 130, - [299] = 89, - [300] = 0, - [301] = 130, - [302] = 130, - [303] = 130, - [304] = 127, - [305] = 130, - [306] = 71, - [307] = 93, - [308] = 130, - [309] = 109, - [310] = 100, - [311] = 130, - [312] = 130, + [293] = 68, + [294] = 124, + [295] = 100, + [296] = 126, + [297] = 5, + [298] = 5, + [299] = 68, + [300] = 124, + [301] = 100, + [302] = 5, + [303] = 68, + [304] = 124, + [305] = 87, + [306] = 64, + [307] = 127, + [308] = 127, + [309] = 85, + [310] = 0, + [311] = 127, + [312] = 127, [313] = 127, - [314] = 91, - [315] = 66, - [316] = 127, - [317] = 127, - [318] = 89, - [319] = 0, - [320] = 127, - [321] = 127, + [314] = 124, + [315] = 127, + [316] = 69, + [317] = 89, + [318] = 127, + [319] = 113, + [320] = 64, + [321] = 97, [322] = 127, - [323] = 71, - [324] = 93, - [325] = 127, - [326] = 109, - [327] = 100, - [328] = 127, - [329] = 131, - [330] = 127, - [331] = 131, - [332] = 131, + [323] = 97, + [324] = 127, + [325] = 124, + [326] = 87, + [327] = 64, + [328] = 124, + [329] = 124, + [330] = 85, + [331] = 0, + [332] = 124, + [333] = 124, + [334] = 124, + [335] = 69, + [336] = 89, + [337] = 124, + [338] = 113, + [339] = 64, + [340] = 97, + [341] = 124, + [342] = 97, + [343] = 128, + [344] = 124, + [345] = 128, + [346] = 128, }; PARSE_TABLE = { [0] = { [ts_sym__for] = SHIFT(1), [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(281), - [ts_sym__var] = SHIFT(314), + [ts_sym__if] = SHIFT(291), + [ts_sym__var] = SHIFT(326), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(319), - [ts_sym_expression_statement] = SHIFT(321), + [ts_sym_expression] = SHIFT(331), + [ts_sym_expression_statement] = SHIFT(333), [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(321), + [ts_sym_for_statement] = SHIFT(333), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(321), + [ts_sym_if_statement] = SHIFT(333), [ts_sym_literal] = SHIFT(16), [ts_sym_null] = SHIFT(15), [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), - [ts_sym_program] = SHIFT(329), + [ts_sym_program] = SHIFT(343), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(330), - [ts_sym_statement_block] = SHIFT(321), + [ts_sym_statement] = SHIFT(344), + [ts_sym_statement_block] = SHIFT(333), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(321), - [ts_aux_sym_repeat_helper1] = SHIFT(332), - [ts_aux_sym_token3] = SHIFT(323), + [ts_sym_var_declaration] = SHIFT(333), + [ts_aux_sym_repeat_helper1] = SHIFT(346), + [ts_aux_sym_token3] = SHIFT(335), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_end] = REDUCE(ts_aux_sym_repeat_helper1, 0), + [ts_builtin_sym_end] = REDUCE(ts_aux_sym_repeat_helper1, 0), + [ts_builtin_sym_error] = SHIFT(339), }, [1] = { @@ -1714,8 +1689,8 @@ PARSE_TABLE = { [ts_sym__var] = SHIFT(9), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(206), - [ts_sym_expression_statement] = SHIFT(277), + [ts_sym_expression] = SHIFT(210), + [ts_sym_expression_statement] = SHIFT(287), [ts_sym_false] = SHIFT(15), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), @@ -1727,15 +1702,16 @@ PARSE_TABLE = { [ts_sym_property_access] = SHIFT(16), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(277), + [ts_sym_var_declaration] = SHIFT(287), [ts_aux_sym_token3] = SHIFT(42), - [ts_aux_sym_token9] = SHIFT(57), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(260), }, [3] = { [ts_sym_formal_parameters] = SHIFT(4), - [ts_sym_identifier] = SHIFT(274), - [ts_aux_sym_token1] = SHIFT(67), + [ts_sym_identifier] = SHIFT(284), + [ts_aux_sym_token1] = SHIFT(68), }, [4] = { @@ -1775,11 +1751,11 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), [ts_sym_var_declaration] = SHIFT(38), - [ts_aux_sym_repeat_helper2] = SHIFT(272), + [ts_aux_sym_repeat_helper2] = SHIFT(281), [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper2, 0), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_error] = SHIFT(272), + [ts_builtin_sym_error] = SHIFT(283), }, [7] = { @@ -1791,8 +1767,8 @@ PARSE_TABLE = { [ts_sym__var] = SHIFT(9), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(206), - [ts_sym_expression_statement] = SHIFT(267), + [ts_sym_expression] = SHIFT(210), + [ts_sym_expression_statement] = SHIFT(275), [ts_sym_false] = SHIFT(15), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), @@ -1804,9 +1780,10 @@ PARSE_TABLE = { [ts_sym_property_access] = SHIFT(16), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(267), + [ts_sym_var_declaration] = SHIFT(275), [ts_aux_sym_token3] = SHIFT(42), - [ts_aux_sym_token9] = SHIFT(57), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(260), }, [9] = { @@ -1829,7 +1806,8 @@ PARSE_TABLE = { [ts_sym_string] = REDUCE(ts_sym_var_declaration, 3), [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token9] = 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), }, [12] = { @@ -1841,7 +1819,8 @@ PARSE_TABLE = { [ts_sym_string] = REDUCE(ts_sym__terminator, 1), [ts_sym_true] = REDUCE(ts_sym__terminator, 1), [ts_aux_sym_token3] = REDUCE(ts_sym__terminator, 1), - [ts_aux_sym_token9] = REDUCE(ts_sym__terminator, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym__terminator, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym__terminator, 1), }, [13] = { @@ -1894,29 +1873,29 @@ PARSE_TABLE = { [18] = { [ts_sym__function] = SHIFT(19), - [ts_sym_array] = SHIFT(81), - [ts_sym_assignment] = SHIFT(82), - [ts_sym_expression] = SHIFT(263), - [ts_sym_false] = SHIFT(81), - [ts_sym_function_call] = SHIFT(82), - [ts_sym_function_expression] = SHIFT(82), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_literal] = SHIFT(82), - [ts_sym_null] = SHIFT(81), - [ts_sym_number] = SHIFT(81), - [ts_sym_object] = SHIFT(81), - [ts_sym_property_access] = SHIFT(82), - [ts_sym_string] = SHIFT(81), - [ts_sym_true] = SHIFT(81), - [ts_aux_sym_token2] = SHIFT(266), - [ts_aux_sym_token3] = SHIFT(98), - [ts_aux_sym_token9] = SHIFT(111), + [ts_sym_array] = SHIFT(82), + [ts_sym_assignment] = SHIFT(83), + [ts_sym_expression] = SHIFT(271), + [ts_sym_false] = SHIFT(82), + [ts_sym_function_call] = SHIFT(83), + [ts_sym_function_expression] = SHIFT(83), + [ts_sym_identifier] = SHIFT(96), + [ts_sym_literal] = SHIFT(83), + [ts_sym_null] = SHIFT(82), + [ts_sym_number] = SHIFT(82), + [ts_sym_object] = SHIFT(82), + [ts_sym_property_access] = SHIFT(83), + [ts_sym_string] = SHIFT(82), + [ts_sym_true] = SHIFT(82), + [ts_aux_sym_token2] = SHIFT(274), + [ts_aux_sym_token3] = SHIFT(99), + [ts_aux_sym_token9] = SHIFT(112), }, [19] = { [ts_sym_formal_parameters] = SHIFT(20), - [ts_sym_identifier] = SHIFT(260), - [ts_aux_sym_token1] = SHIFT(67), + [ts_sym_identifier] = SHIFT(268), + [ts_aux_sym_token1] = SHIFT(68), }, [20] = { @@ -1956,11 +1935,11 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), [ts_sym_var_declaration] = SHIFT(38), - [ts_aux_sym_repeat_helper2] = SHIFT(258), + [ts_aux_sym_repeat_helper2] = SHIFT(265), [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper2, 0), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_error] = SHIFT(258), + [ts_builtin_sym_error] = SHIFT(267), }, [23] = { @@ -1969,29 +1948,29 @@ PARSE_TABLE = { [24] = { [ts_sym__function] = SHIFT(25), - [ts_sym_array] = SHIFT(195), - [ts_sym_assignment] = SHIFT(196), - [ts_sym_expression] = SHIFT(197), - [ts_sym_false] = SHIFT(195), - [ts_sym_function_call] = SHIFT(196), - [ts_sym_function_expression] = SHIFT(196), - [ts_sym_identifier] = SHIFT(233), - [ts_sym_literal] = SHIFT(196), - [ts_sym_null] = SHIFT(195), - [ts_sym_number] = SHIFT(195), - [ts_sym_object] = SHIFT(195), - [ts_sym_property_access] = SHIFT(196), - [ts_sym_string] = SHIFT(195), - [ts_sym_true] = SHIFT(195), - [ts_aux_sym_token3] = SHIFT(236), - [ts_aux_sym_token9] = SHIFT(246), - [ts_builtin_sym_error] = SHIFT(257), + [ts_sym_array] = SHIFT(199), + [ts_sym_assignment] = SHIFT(200), + [ts_sym_expression] = SHIFT(201), + [ts_sym_false] = SHIFT(199), + [ts_sym_function_call] = SHIFT(200), + [ts_sym_function_expression] = SHIFT(200), + [ts_sym_identifier] = SHIFT(238), + [ts_sym_literal] = SHIFT(200), + [ts_sym_null] = SHIFT(199), + [ts_sym_number] = SHIFT(199), + [ts_sym_object] = SHIFT(199), + [ts_sym_property_access] = SHIFT(200), + [ts_sym_string] = SHIFT(199), + [ts_sym_true] = SHIFT(199), + [ts_aux_sym_token3] = SHIFT(241), + [ts_aux_sym_token9] = SHIFT(251), + [ts_builtin_sym_error] = SHIFT(264), }, [25] = { [ts_sym_formal_parameters] = SHIFT(26), - [ts_sym_identifier] = SHIFT(192), - [ts_aux_sym_token1] = SHIFT(67), + [ts_sym_identifier] = SHIFT(196), + [ts_aux_sym_token1] = SHIFT(68), }, [26] = { @@ -2030,11 +2009,11 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), [ts_sym_var_declaration] = SHIFT(38), - [ts_aux_sym_repeat_helper2] = SHIFT(190), + [ts_aux_sym_repeat_helper2] = SHIFT(193), [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper2, 0), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_error] = SHIFT(190), + [ts_builtin_sym_error] = SHIFT(195), }, [29] = { @@ -2061,7 +2040,8 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_var_declaration, 3), [ts_aux_sym_token4] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token9] = 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), }, [32] = { @@ -2077,7 +2057,8 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym__terminator, 1), [ts_aux_sym_token3] = REDUCE(ts_sym__terminator, 1), [ts_aux_sym_token4] = REDUCE(ts_sym__terminator, 1), - [ts_aux_sym_token9] = REDUCE(ts_sym__terminator, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym__terminator, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym__terminator, 1), }, [33] = { @@ -2108,7 +2089,8 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_expression_statement, 2), [ts_aux_sym_token3] = REDUCE(ts_sym_expression_statement, 2), [ts_aux_sym_token4] = REDUCE(ts_sym_expression_statement, 2), - [ts_aux_sym_token9] = 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), }, [36] = { @@ -2135,7 +2117,8 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_statement, 1), [ts_aux_sym_token3] = REDUCE(ts_sym_statement, 1), [ts_aux_sym_token4] = REDUCE(ts_sym_statement, 1), - [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), }, [39] = { @@ -2177,7 +2160,7 @@ PARSE_TABLE = { [ts_sym_identifier] = SHIFT(43), [ts_sym_string] = SHIFT(43), [ts_aux_sym_token4] = SHIFT(56), - [ts_builtin_sym_error] = SHIFT(189), + [ts_builtin_sym_error] = SHIFT(192), }, [43] = { @@ -2186,28 +2169,28 @@ PARSE_TABLE = { [44] = { [ts_sym__function] = SHIFT(45), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(186), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(136), - [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_token3] = SHIFT(139), - [ts_aux_sym_token9] = SHIFT(145), + [ts_sym_array] = SHIFT(102), + [ts_sym_assignment] = SHIFT(103), + [ts_sym_expression] = SHIFT(189), + [ts_sym_false] = SHIFT(102), + [ts_sym_function_call] = SHIFT(103), + [ts_sym_function_expression] = SHIFT(103), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(103), + [ts_sym_null] = SHIFT(102), + [ts_sym_number] = SHIFT(102), + [ts_sym_object] = SHIFT(102), + [ts_sym_property_access] = SHIFT(103), + [ts_sym_string] = SHIFT(102), + [ts_sym_true] = SHIFT(102), + [ts_aux_sym_token3] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), }, [45] = { [ts_sym_formal_parameters] = SHIFT(46), - [ts_sym_identifier] = SHIFT(183), - [ts_aux_sym_token1] = SHIFT(67), + [ts_sym_identifier] = SHIFT(186), + [ts_aux_sym_token1] = SHIFT(68), }, [46] = { @@ -2247,11 +2230,11 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), [ts_sym_var_declaration] = SHIFT(38), - [ts_aux_sym_repeat_helper2] = SHIFT(181), + [ts_aux_sym_repeat_helper2] = SHIFT(183), [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper2, 0), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_error] = SHIFT(181), + [ts_builtin_sym_error] = SHIFT(185), }, [49] = { @@ -2282,7 +2265,8 @@ PARSE_TABLE = { [ts_aux_sym_repeat_helper2] = SHIFT(50), [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper2, 0), - [ts_aux_sym_token9] = SHIFT(57), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(182), }, [50] = { @@ -2318,7 +2302,7 @@ PARSE_TABLE = { [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = SHIFT(56), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_error] = SHIFT(178), + [ts_builtin_sym_error] = SHIFT(179), }, [52] = { @@ -2355,7 +2339,8 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token4] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token9] = 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), }, [56] = { @@ -2367,30 +2352,30 @@ PARSE_TABLE = { [57] = { [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(75), - [ts_sym_assignment] = SHIFT(76), - [ts_sym_expression] = SHIFT(77), - [ts_sym_false] = SHIFT(75), - [ts_sym_function_call] = SHIFT(76), - [ts_sym_function_expression] = SHIFT(76), - [ts_sym_identifier] = SHIFT(120), - [ts_sym_literal] = SHIFT(76), - [ts_sym_null] = SHIFT(75), - [ts_sym_number] = SHIFT(75), - [ts_sym_object] = SHIFT(75), - [ts_sym_property_access] = SHIFT(76), - [ts_sym_string] = SHIFT(75), - [ts_sym_true] = SHIFT(75), - [ts_aux_sym_token10] = SHIFT(176), - [ts_aux_sym_token3] = SHIFT(123), - [ts_aux_sym_token9] = SHIFT(150), - [ts_builtin_sym_error] = SHIFT(177), + [ts_sym_array] = SHIFT(76), + [ts_sym_assignment] = SHIFT(77), + [ts_sym_expression] = SHIFT(78), + [ts_sym_false] = SHIFT(76), + [ts_sym_function_call] = SHIFT(77), + [ts_sym_function_expression] = SHIFT(77), + [ts_sym_identifier] = SHIFT(121), + [ts_sym_literal] = SHIFT(77), + [ts_sym_null] = SHIFT(76), + [ts_sym_number] = SHIFT(76), + [ts_sym_object] = SHIFT(76), + [ts_sym_property_access] = SHIFT(77), + [ts_sym_string] = SHIFT(76), + [ts_sym_true] = SHIFT(76), + [ts_aux_sym_token10] = SHIFT(177), + [ts_aux_sym_token3] = SHIFT(124), + [ts_aux_sym_token9] = SHIFT(151), + [ts_builtin_sym_error] = SHIFT(178), }, [58] = { [ts_sym_formal_parameters] = SHIFT(59), - [ts_sym_identifier] = SHIFT(64), - [ts_aux_sym_token1] = SHIFT(67), + [ts_sym_identifier] = SHIFT(65), + [ts_aux_sym_token1] = SHIFT(68), }, [59] = { @@ -2434,7 +2419,7 @@ PARSE_TABLE = { [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper2, 0), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_error] = SHIFT(62), + [ts_builtin_sym_error] = SHIFT(64), }, [62] = { @@ -2449,987 +2434,993 @@ PARSE_TABLE = { }, [64] = { - [ts_sym_formal_parameters] = SHIFT(65), - [ts_aux_sym_token1] = SHIFT(67), + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), + [ts_aux_sym_token4] = SHIFT(63), }, [65] = { - [ts_sym_statement_block] = SHIFT(66), - [ts_aux_sym_token3] = SHIFT(61), + [ts_sym_formal_parameters] = SHIFT(66), + [ts_aux_sym_token1] = SHIFT(68), }, [66] = { + [ts_sym_statement_block] = SHIFT(67), + [ts_aux_sym_token3] = SHIFT(61), + }, + + [67] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token10] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token6] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 4), }, - [67] = { - [ts_sym_identifier] = SHIFT(68), - [ts_aux_sym_token2] = SHIFT(74), - }, - [68] = { - [ts_aux_sym_repeat_helper4] = SHIFT(69), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_aux_sym_token6] = SHIFT(71), + [ts_sym_identifier] = SHIFT(69), + [ts_aux_sym_token2] = SHIFT(75), }, [69] = { - [ts_aux_sym_token2] = SHIFT(70), + [ts_aux_sym_repeat_helper4] = SHIFT(70), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 0), + [ts_aux_sym_token6] = SHIFT(72), }, [70] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_formal_parameters, 4), + [ts_aux_sym_token2] = SHIFT(71), }, [71] = { - [ts_sym_identifier] = SHIFT(72), + [ts_aux_sym_token3] = REDUCE(ts_sym_formal_parameters, 4), }, [72] = { - [ts_aux_sym_repeat_helper4] = SHIFT(73), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 0), - [ts_aux_sym_token6] = SHIFT(71), + [ts_sym_identifier] = SHIFT(73), }, [73] = { - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 3), + [ts_aux_sym_repeat_helper4] = SHIFT(74), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 0), + [ts_aux_sym_token6] = SHIFT(72), }, [74] = { - [ts_aux_sym_token3] = REDUCE(ts_sym_formal_parameters, 2), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper4, 3), }, [75] = { + [ts_aux_sym_token3] = REDUCE(ts_sym_formal_parameters, 2), + }, + + [76] = { [ts_aux_sym_token1] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token10] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token6] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), }, - [76] = { + [77] = { [ts_aux_sym_token1] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token10] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token6] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), }, - [77] = { - [ts_aux_sym_repeat_helper6] = SHIFT(78), - [ts_aux_sym_token1] = SHIFT(80), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), - [ts_aux_sym_token7] = SHIFT(118), - }, - [78] = { - [ts_aux_sym_token10] = SHIFT(79), + [ts_aux_sym_repeat_helper6] = SHIFT(79), + [ts_aux_sym_token1] = SHIFT(81), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), + [ts_aux_sym_token6] = SHIFT(116), + [ts_aux_sym_token7] = SHIFT(119), }, [79] = { + [ts_aux_sym_token10] = SHIFT(80), + }, + + [80] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token11] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token12] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), }, - [80] = { + [81] = { [ts_sym__function] = SHIFT(19), - [ts_sym_array] = SHIFT(81), - [ts_sym_assignment] = SHIFT(82), - [ts_sym_expression] = SHIFT(83), - [ts_sym_false] = SHIFT(81), - [ts_sym_function_call] = SHIFT(82), - [ts_sym_function_expression] = SHIFT(82), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_literal] = SHIFT(82), - [ts_sym_null] = SHIFT(81), - [ts_sym_number] = SHIFT(81), - [ts_sym_object] = SHIFT(81), - [ts_sym_property_access] = SHIFT(82), - [ts_sym_string] = SHIFT(81), - [ts_sym_true] = SHIFT(81), - [ts_aux_sym_token2] = SHIFT(175), - [ts_aux_sym_token3] = SHIFT(98), - [ts_aux_sym_token9] = SHIFT(111), + [ts_sym_array] = SHIFT(82), + [ts_sym_assignment] = SHIFT(83), + [ts_sym_expression] = SHIFT(84), + [ts_sym_false] = SHIFT(82), + [ts_sym_function_call] = SHIFT(83), + [ts_sym_function_expression] = SHIFT(83), + [ts_sym_identifier] = SHIFT(96), + [ts_sym_literal] = SHIFT(83), + [ts_sym_null] = SHIFT(82), + [ts_sym_number] = SHIFT(82), + [ts_sym_object] = SHIFT(82), + [ts_sym_property_access] = SHIFT(83), + [ts_sym_string] = SHIFT(82), + [ts_sym_true] = SHIFT(82), + [ts_aux_sym_token2] = SHIFT(176), + [ts_aux_sym_token3] = SHIFT(99), + [ts_aux_sym_token9] = SHIFT(112), }, - [81] = { + [82] = { [ts_aux_sym_token1] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token2] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token6] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), }, - [82] = { + [83] = { [ts_aux_sym_token1] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token2] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token6] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), }, - [83] = { - [ts_aux_sym_repeat_helper3] = SHIFT(84), - [ts_aux_sym_token1] = SHIFT(86), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), - [ts_aux_sym_token6] = SHIFT(90), - [ts_aux_sym_token7] = SHIFT(93), - }, - [84] = { - [ts_aux_sym_token2] = SHIFT(85), + [ts_aux_sym_repeat_helper3] = SHIFT(85), + [ts_aux_sym_token1] = SHIFT(87), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), + [ts_aux_sym_token6] = SHIFT(91), + [ts_aux_sym_token7] = SHIFT(94), }, [85] = { + [ts_aux_sym_token2] = SHIFT(86), + }, + + [86] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token10] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token6] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), }, - [86] = { - [ts_sym__function] = SHIFT(19), - [ts_sym_array] = SHIFT(81), - [ts_sym_assignment] = SHIFT(82), - [ts_sym_expression] = SHIFT(87), - [ts_sym_false] = SHIFT(81), - [ts_sym_function_call] = SHIFT(82), - [ts_sym_function_expression] = SHIFT(82), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_literal] = SHIFT(82), - [ts_sym_null] = SHIFT(81), - [ts_sym_number] = SHIFT(81), - [ts_sym_object] = SHIFT(81), - [ts_sym_property_access] = SHIFT(82), - [ts_sym_string] = SHIFT(81), - [ts_sym_true] = SHIFT(81), - [ts_aux_sym_token2] = SHIFT(174), - [ts_aux_sym_token3] = SHIFT(98), - [ts_aux_sym_token9] = SHIFT(111), - }, - [87] = { - [ts_aux_sym_repeat_helper3] = SHIFT(88), - [ts_aux_sym_token1] = SHIFT(86), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), - [ts_aux_sym_token6] = SHIFT(90), - [ts_aux_sym_token7] = SHIFT(93), + [ts_sym__function] = SHIFT(19), + [ts_sym_array] = SHIFT(82), + [ts_sym_assignment] = SHIFT(83), + [ts_sym_expression] = SHIFT(88), + [ts_sym_false] = SHIFT(82), + [ts_sym_function_call] = SHIFT(83), + [ts_sym_function_expression] = SHIFT(83), + [ts_sym_identifier] = SHIFT(96), + [ts_sym_literal] = SHIFT(83), + [ts_sym_null] = SHIFT(82), + [ts_sym_number] = SHIFT(82), + [ts_sym_object] = SHIFT(82), + [ts_sym_property_access] = SHIFT(83), + [ts_sym_string] = SHIFT(82), + [ts_sym_true] = SHIFT(82), + [ts_aux_sym_token2] = SHIFT(175), + [ts_aux_sym_token3] = SHIFT(99), + [ts_aux_sym_token9] = SHIFT(112), }, [88] = { - [ts_aux_sym_token2] = SHIFT(89), + [ts_aux_sym_repeat_helper3] = SHIFT(89), + [ts_aux_sym_token1] = SHIFT(87), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), + [ts_aux_sym_token6] = SHIFT(91), + [ts_aux_sym_token7] = SHIFT(94), }, [89] = { + [ts_aux_sym_token2] = SHIFT(90), + }, + + [90] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token2] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token6] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), }, - [90] = { - [ts_sym__function] = SHIFT(19), - [ts_sym_array] = SHIFT(81), - [ts_sym_assignment] = SHIFT(82), - [ts_sym_expression] = SHIFT(91), - [ts_sym_false] = SHIFT(81), - [ts_sym_function_call] = SHIFT(82), - [ts_sym_function_expression] = SHIFT(82), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_literal] = SHIFT(82), - [ts_sym_null] = SHIFT(81), - [ts_sym_number] = SHIFT(81), - [ts_sym_object] = SHIFT(81), - [ts_sym_property_access] = SHIFT(82), - [ts_sym_string] = SHIFT(81), - [ts_sym_true] = SHIFT(81), - [ts_aux_sym_token3] = SHIFT(98), - [ts_aux_sym_token9] = SHIFT(111), - }, - [91] = { - [ts_aux_sym_repeat_helper3] = SHIFT(92), - [ts_aux_sym_token1] = SHIFT(86), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), - [ts_aux_sym_token6] = SHIFT(90), - [ts_aux_sym_token7] = SHIFT(93), + [ts_sym__function] = SHIFT(19), + [ts_sym_array] = SHIFT(82), + [ts_sym_assignment] = SHIFT(83), + [ts_sym_expression] = SHIFT(92), + [ts_sym_false] = SHIFT(82), + [ts_sym_function_call] = SHIFT(83), + [ts_sym_function_expression] = SHIFT(83), + [ts_sym_identifier] = SHIFT(96), + [ts_sym_literal] = SHIFT(83), + [ts_sym_null] = SHIFT(82), + [ts_sym_number] = SHIFT(82), + [ts_sym_object] = SHIFT(82), + [ts_sym_property_access] = SHIFT(83), + [ts_sym_string] = SHIFT(82), + [ts_sym_true] = SHIFT(82), + [ts_aux_sym_token3] = SHIFT(99), + [ts_aux_sym_token9] = SHIFT(112), }, [92] = { - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 3), + [ts_aux_sym_repeat_helper3] = SHIFT(93), + [ts_aux_sym_token1] = SHIFT(87), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), + [ts_aux_sym_token6] = SHIFT(91), + [ts_aux_sym_token7] = SHIFT(94), }, [93] = { - [ts_sym_identifier] = SHIFT(94), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 3), }, [94] = { + [ts_sym_identifier] = SHIFT(95), + }, + + [95] = { [ts_aux_sym_token1] = REDUCE(ts_sym_property_access, 3), [ts_aux_sym_token2] = 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), }, - [95] = { + [96] = { [ts_aux_sym_token1] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token2] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token5] = SHIFT(96), + [ts_aux_sym_token5] = SHIFT(97), [ts_aux_sym_token6] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), }, - [96] = { - [ts_sym__function] = SHIFT(19), - [ts_sym_array] = SHIFT(81), - [ts_sym_assignment] = SHIFT(82), - [ts_sym_expression] = SHIFT(97), - [ts_sym_false] = SHIFT(81), - [ts_sym_function_call] = SHIFT(82), - [ts_sym_function_expression] = SHIFT(82), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_literal] = SHIFT(82), - [ts_sym_null] = SHIFT(81), - [ts_sym_number] = SHIFT(81), - [ts_sym_object] = SHIFT(81), - [ts_sym_property_access] = SHIFT(82), - [ts_sym_string] = SHIFT(81), - [ts_sym_true] = SHIFT(81), - [ts_aux_sym_token3] = SHIFT(98), - [ts_aux_sym_token9] = SHIFT(111), - }, - [97] = { - [ts_aux_sym_token1] = SHIFT(86), - [ts_aux_sym_token2] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token6] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token7] = SHIFT(93), + [ts_sym__function] = SHIFT(19), + [ts_sym_array] = SHIFT(82), + [ts_sym_assignment] = SHIFT(83), + [ts_sym_expression] = SHIFT(98), + [ts_sym_false] = SHIFT(82), + [ts_sym_function_call] = SHIFT(83), + [ts_sym_function_expression] = SHIFT(83), + [ts_sym_identifier] = SHIFT(96), + [ts_sym_literal] = SHIFT(83), + [ts_sym_null] = SHIFT(82), + [ts_sym_number] = SHIFT(82), + [ts_sym_object] = SHIFT(82), + [ts_sym_property_access] = SHIFT(83), + [ts_sym_string] = SHIFT(82), + [ts_sym_true] = SHIFT(82), + [ts_aux_sym_token3] = SHIFT(99), + [ts_aux_sym_token9] = SHIFT(112), }, [98] = { - [ts_sym_identifier] = SHIFT(99), - [ts_sym_string] = SHIFT(99), - [ts_aux_sym_token4] = SHIFT(170), - [ts_builtin_sym_error] = SHIFT(171), + [ts_aux_sym_token1] = SHIFT(87), + [ts_aux_sym_token2] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token7] = SHIFT(94), }, [99] = { - [ts_aux_sym_token8] = SHIFT(100), + [ts_sym_identifier] = SHIFT(100), + [ts_sym_string] = SHIFT(100), + [ts_aux_sym_token4] = SHIFT(171), + [ts_builtin_sym_error] = SHIFT(172), }, [100] = { - [ts_sym__function] = SHIFT(45), - [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(136), - [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_token3] = SHIFT(139), - [ts_aux_sym_token9] = SHIFT(145), + [ts_aux_sym_token8] = SHIFT(101), }, [101] = { + [ts_sym__function] = SHIFT(45), + [ts_sym_array] = SHIFT(102), + [ts_sym_assignment] = SHIFT(103), + [ts_sym_expression] = SHIFT(104), + [ts_sym_false] = SHIFT(102), + [ts_sym_function_call] = SHIFT(103), + [ts_sym_function_expression] = SHIFT(103), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(103), + [ts_sym_null] = SHIFT(102), + [ts_sym_number] = SHIFT(102), + [ts_sym_object] = SHIFT(102), + [ts_sym_property_access] = SHIFT(103), + [ts_sym_string] = SHIFT(102), + [ts_sym_true] = SHIFT(102), + [ts_aux_sym_token3] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + + [102] = { [ts_aux_sym_token1] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token4] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token6] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), }, - [102] = { + [103] = { [ts_aux_sym_token1] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token6] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), }, - [103] = { - [ts_aux_sym_repeat_helper5] = SHIFT(104), - [ts_aux_sym_token1] = SHIFT(106), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - [ts_aux_sym_token7] = SHIFT(134), - }, - [104] = { - [ts_aux_sym_token4] = SHIFT(105), + [ts_aux_sym_repeat_helper5] = SHIFT(105), + [ts_aux_sym_token1] = SHIFT(107), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), + [ts_aux_sym_token7] = SHIFT(135), }, [105] = { + [ts_aux_sym_token4] = SHIFT(106), + }, + + [106] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token2] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token6] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), }, - [106] = { - [ts_sym__function] = SHIFT(19), - [ts_sym_array] = SHIFT(81), - [ts_sym_assignment] = SHIFT(82), - [ts_sym_expression] = SHIFT(107), - [ts_sym_false] = SHIFT(81), - [ts_sym_function_call] = SHIFT(82), - [ts_sym_function_expression] = SHIFT(82), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_literal] = SHIFT(82), - [ts_sym_null] = SHIFT(81), - [ts_sym_number] = SHIFT(81), - [ts_sym_object] = SHIFT(81), - [ts_sym_property_access] = SHIFT(82), - [ts_sym_string] = SHIFT(81), - [ts_sym_true] = SHIFT(81), - [ts_aux_sym_token2] = SHIFT(110), - [ts_aux_sym_token3] = SHIFT(98), - [ts_aux_sym_token9] = SHIFT(111), - }, - [107] = { - [ts_aux_sym_repeat_helper3] = SHIFT(108), - [ts_aux_sym_token1] = SHIFT(86), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), - [ts_aux_sym_token6] = SHIFT(90), - [ts_aux_sym_token7] = SHIFT(93), + [ts_sym__function] = SHIFT(19), + [ts_sym_array] = SHIFT(82), + [ts_sym_assignment] = SHIFT(83), + [ts_sym_expression] = SHIFT(108), + [ts_sym_false] = SHIFT(82), + [ts_sym_function_call] = SHIFT(83), + [ts_sym_function_expression] = SHIFT(83), + [ts_sym_identifier] = SHIFT(96), + [ts_sym_literal] = SHIFT(83), + [ts_sym_null] = SHIFT(82), + [ts_sym_number] = SHIFT(82), + [ts_sym_object] = SHIFT(82), + [ts_sym_property_access] = SHIFT(83), + [ts_sym_string] = SHIFT(82), + [ts_sym_true] = SHIFT(82), + [ts_aux_sym_token2] = SHIFT(111), + [ts_aux_sym_token3] = SHIFT(99), + [ts_aux_sym_token9] = SHIFT(112), }, [108] = { - [ts_aux_sym_token2] = SHIFT(109), + [ts_aux_sym_repeat_helper3] = SHIFT(109), + [ts_aux_sym_token1] = SHIFT(87), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), + [ts_aux_sym_token6] = SHIFT(91), + [ts_aux_sym_token7] = SHIFT(94), }, [109] = { + [ts_aux_sym_token2] = SHIFT(110), + }, + + [110] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token4] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token6] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), }, - [110] = { + [111] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token4] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token6] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), }, - [111] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(75), - [ts_sym_assignment] = SHIFT(76), - [ts_sym_expression] = SHIFT(112), - [ts_sym_false] = SHIFT(75), - [ts_sym_function_call] = SHIFT(76), - [ts_sym_function_expression] = SHIFT(76), - [ts_sym_identifier] = SHIFT(120), - [ts_sym_literal] = SHIFT(76), - [ts_sym_null] = SHIFT(75), - [ts_sym_number] = SHIFT(75), - [ts_sym_object] = SHIFT(75), - [ts_sym_property_access] = SHIFT(76), - [ts_sym_string] = SHIFT(75), - [ts_sym_true] = SHIFT(75), - [ts_aux_sym_token10] = SHIFT(168), - [ts_aux_sym_token3] = SHIFT(123), - [ts_aux_sym_token9] = SHIFT(150), - [ts_builtin_sym_error] = SHIFT(169), - }, - [112] = { - [ts_aux_sym_repeat_helper6] = SHIFT(113), - [ts_aux_sym_token1] = SHIFT(80), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), - [ts_aux_sym_token7] = SHIFT(118), + [ts_sym__function] = SHIFT(58), + [ts_sym_array] = SHIFT(76), + [ts_sym_assignment] = SHIFT(77), + [ts_sym_expression] = SHIFT(113), + [ts_sym_false] = SHIFT(76), + [ts_sym_function_call] = SHIFT(77), + [ts_sym_function_expression] = SHIFT(77), + [ts_sym_identifier] = SHIFT(121), + [ts_sym_literal] = SHIFT(77), + [ts_sym_null] = SHIFT(76), + [ts_sym_number] = SHIFT(76), + [ts_sym_object] = SHIFT(76), + [ts_sym_property_access] = SHIFT(77), + [ts_sym_string] = SHIFT(76), + [ts_sym_true] = SHIFT(76), + [ts_aux_sym_token10] = SHIFT(169), + [ts_aux_sym_token3] = SHIFT(124), + [ts_aux_sym_token9] = SHIFT(151), + [ts_builtin_sym_error] = SHIFT(170), }, [113] = { - [ts_aux_sym_token10] = SHIFT(114), + [ts_aux_sym_repeat_helper6] = SHIFT(114), + [ts_aux_sym_token1] = SHIFT(81), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), + [ts_aux_sym_token6] = SHIFT(116), + [ts_aux_sym_token7] = SHIFT(119), }, [114] = { + [ts_aux_sym_token10] = SHIFT(115), + }, + + [115] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token2] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token6] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), }, - [115] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(75), - [ts_sym_assignment] = SHIFT(76), - [ts_sym_expression] = SHIFT(116), - [ts_sym_false] = SHIFT(75), - [ts_sym_function_call] = SHIFT(76), - [ts_sym_function_expression] = SHIFT(76), - [ts_sym_identifier] = SHIFT(120), - [ts_sym_literal] = SHIFT(76), - [ts_sym_null] = SHIFT(75), - [ts_sym_number] = SHIFT(75), - [ts_sym_object] = SHIFT(75), - [ts_sym_property_access] = SHIFT(76), - [ts_sym_string] = SHIFT(75), - [ts_sym_true] = SHIFT(75), - [ts_aux_sym_token3] = SHIFT(123), - [ts_aux_sym_token9] = SHIFT(150), - [ts_builtin_sym_error] = SHIFT(167), - }, - [116] = { - [ts_aux_sym_repeat_helper6] = SHIFT(117), - [ts_aux_sym_token1] = SHIFT(80), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), - [ts_aux_sym_token7] = SHIFT(118), + [ts_sym__function] = SHIFT(58), + [ts_sym_array] = SHIFT(76), + [ts_sym_assignment] = SHIFT(77), + [ts_sym_expression] = SHIFT(117), + [ts_sym_false] = SHIFT(76), + [ts_sym_function_call] = SHIFT(77), + [ts_sym_function_expression] = SHIFT(77), + [ts_sym_identifier] = SHIFT(121), + [ts_sym_literal] = SHIFT(77), + [ts_sym_null] = SHIFT(76), + [ts_sym_number] = SHIFT(76), + [ts_sym_object] = SHIFT(76), + [ts_sym_property_access] = SHIFT(77), + [ts_sym_string] = SHIFT(76), + [ts_sym_true] = SHIFT(76), + [ts_aux_sym_token3] = SHIFT(124), + [ts_aux_sym_token9] = SHIFT(151), + [ts_builtin_sym_error] = SHIFT(168), }, [117] = { - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 3), + [ts_aux_sym_repeat_helper6] = SHIFT(118), + [ts_aux_sym_token1] = SHIFT(81), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), + [ts_aux_sym_token6] = SHIFT(116), + [ts_aux_sym_token7] = SHIFT(119), }, [118] = { - [ts_sym_identifier] = SHIFT(119), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 3), }, [119] = { + [ts_sym_identifier] = SHIFT(120), + }, + + [120] = { [ts_aux_sym_token1] = REDUCE(ts_sym_property_access, 3), [ts_aux_sym_token10] = 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), }, - [120] = { + [121] = { [ts_aux_sym_token1] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token10] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token5] = SHIFT(121), + [ts_aux_sym_token5] = SHIFT(122), [ts_aux_sym_token6] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), }, - [121] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(75), - [ts_sym_assignment] = SHIFT(76), - [ts_sym_expression] = SHIFT(122), - [ts_sym_false] = SHIFT(75), - [ts_sym_function_call] = SHIFT(76), - [ts_sym_function_expression] = SHIFT(76), - [ts_sym_identifier] = SHIFT(120), - [ts_sym_literal] = SHIFT(76), - [ts_sym_null] = SHIFT(75), - [ts_sym_number] = SHIFT(75), - [ts_sym_object] = SHIFT(75), - [ts_sym_property_access] = SHIFT(76), - [ts_sym_string] = SHIFT(75), - [ts_sym_true] = SHIFT(75), - [ts_aux_sym_token3] = SHIFT(123), - [ts_aux_sym_token9] = SHIFT(150), - }, - [122] = { - [ts_aux_sym_token1] = SHIFT(80), - [ts_aux_sym_token10] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token6] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token7] = SHIFT(118), + [ts_sym__function] = SHIFT(58), + [ts_sym_array] = SHIFT(76), + [ts_sym_assignment] = SHIFT(77), + [ts_sym_expression] = SHIFT(123), + [ts_sym_false] = SHIFT(76), + [ts_sym_function_call] = SHIFT(77), + [ts_sym_function_expression] = SHIFT(77), + [ts_sym_identifier] = SHIFT(121), + [ts_sym_literal] = SHIFT(77), + [ts_sym_null] = SHIFT(76), + [ts_sym_number] = SHIFT(76), + [ts_sym_object] = SHIFT(76), + [ts_sym_property_access] = SHIFT(77), + [ts_sym_string] = SHIFT(76), + [ts_sym_true] = SHIFT(76), + [ts_aux_sym_token3] = SHIFT(124), + [ts_aux_sym_token9] = SHIFT(151), }, [123] = { - [ts_sym_identifier] = SHIFT(124), - [ts_sym_string] = SHIFT(124), - [ts_aux_sym_token4] = SHIFT(163), - [ts_builtin_sym_error] = SHIFT(164), + [ts_aux_sym_token1] = SHIFT(81), + [ts_aux_sym_token10] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token7] = SHIFT(119), }, [124] = { - [ts_aux_sym_token8] = SHIFT(125), + [ts_sym_identifier] = SHIFT(125), + [ts_sym_string] = SHIFT(125), + [ts_aux_sym_token4] = SHIFT(164), + [ts_builtin_sym_error] = SHIFT(165), }, [125] = { - [ts_sym__function] = SHIFT(45), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(126), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(136), - [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_token3] = SHIFT(139), - [ts_aux_sym_token9] = SHIFT(145), + [ts_aux_sym_token8] = SHIFT(126), }, [126] = { - [ts_aux_sym_repeat_helper5] = SHIFT(127), - [ts_aux_sym_token1] = SHIFT(106), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - [ts_aux_sym_token7] = SHIFT(134), + [ts_sym__function] = SHIFT(45), + [ts_sym_array] = SHIFT(102), + [ts_sym_assignment] = SHIFT(103), + [ts_sym_expression] = SHIFT(127), + [ts_sym_false] = SHIFT(102), + [ts_sym_function_call] = SHIFT(103), + [ts_sym_function_expression] = SHIFT(103), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(103), + [ts_sym_null] = SHIFT(102), + [ts_sym_number] = SHIFT(102), + [ts_sym_object] = SHIFT(102), + [ts_sym_property_access] = SHIFT(103), + [ts_sym_string] = SHIFT(102), + [ts_sym_true] = SHIFT(102), + [ts_aux_sym_token3] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), }, [127] = { - [ts_aux_sym_token4] = SHIFT(128), + [ts_aux_sym_repeat_helper5] = SHIFT(128), + [ts_aux_sym_token1] = SHIFT(107), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), + [ts_aux_sym_token7] = SHIFT(135), }, [128] = { + [ts_aux_sym_token4] = SHIFT(129), + }, + + [129] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token10] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token6] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), }, - [129] = { - [ts_sym_identifier] = SHIFT(130), - [ts_sym_string] = SHIFT(130), - [ts_builtin_sym_error] = SHIFT(161), - }, - [130] = { - [ts_aux_sym_token8] = SHIFT(131), + [ts_sym_identifier] = SHIFT(131), + [ts_sym_string] = SHIFT(131), + [ts_builtin_sym_error] = SHIFT(162), }, [131] = { - [ts_sym__function] = SHIFT(45), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(132), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(136), - [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_token3] = SHIFT(139), - [ts_aux_sym_token9] = SHIFT(145), + [ts_aux_sym_token8] = SHIFT(132), }, [132] = { - [ts_aux_sym_repeat_helper5] = SHIFT(133), - [ts_aux_sym_token1] = SHIFT(106), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - [ts_aux_sym_token7] = SHIFT(134), + [ts_sym__function] = SHIFT(45), + [ts_sym_array] = SHIFT(102), + [ts_sym_assignment] = SHIFT(103), + [ts_sym_expression] = SHIFT(133), + [ts_sym_false] = SHIFT(102), + [ts_sym_function_call] = SHIFT(103), + [ts_sym_function_expression] = SHIFT(103), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(103), + [ts_sym_null] = SHIFT(102), + [ts_sym_number] = SHIFT(102), + [ts_sym_object] = SHIFT(102), + [ts_sym_property_access] = SHIFT(103), + [ts_sym_string] = SHIFT(102), + [ts_sym_true] = SHIFT(102), + [ts_aux_sym_token3] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), }, [133] = { - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 5), + [ts_aux_sym_repeat_helper5] = SHIFT(134), + [ts_aux_sym_token1] = SHIFT(107), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), + [ts_aux_sym_token7] = SHIFT(135), }, [134] = { - [ts_sym_identifier] = SHIFT(135), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 5), }, [135] = { + [ts_sym_identifier] = SHIFT(136), + }, + + [136] = { [ts_aux_sym_token1] = 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), }, - [136] = { + [137] = { [ts_aux_sym_token1] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token4] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token5] = SHIFT(137), + [ts_aux_sym_token5] = SHIFT(138), [ts_aux_sym_token6] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), }, - [137] = { - [ts_sym__function] = SHIFT(45), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(138), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(136), - [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_token3] = SHIFT(139), - [ts_aux_sym_token9] = SHIFT(145), - }, - [138] = { - [ts_aux_sym_token1] = SHIFT(106), - [ts_aux_sym_token4] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token6] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token7] = SHIFT(134), + [ts_sym__function] = SHIFT(45), + [ts_sym_array] = SHIFT(102), + [ts_sym_assignment] = SHIFT(103), + [ts_sym_expression] = SHIFT(139), + [ts_sym_false] = SHIFT(102), + [ts_sym_function_call] = SHIFT(103), + [ts_sym_function_expression] = SHIFT(103), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(103), + [ts_sym_null] = SHIFT(102), + [ts_sym_number] = SHIFT(102), + [ts_sym_object] = SHIFT(102), + [ts_sym_property_access] = SHIFT(103), + [ts_sym_string] = SHIFT(102), + [ts_sym_true] = SHIFT(102), + [ts_aux_sym_token3] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), }, [139] = { - [ts_sym_identifier] = SHIFT(140), - [ts_sym_string] = SHIFT(140), - [ts_aux_sym_token4] = SHIFT(157), - [ts_builtin_sym_error] = SHIFT(158), + [ts_aux_sym_token1] = SHIFT(107), + [ts_aux_sym_token4] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token6] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token7] = SHIFT(135), }, [140] = { - [ts_aux_sym_token8] = SHIFT(141), + [ts_sym_identifier] = SHIFT(141), + [ts_sym_string] = SHIFT(141), + [ts_aux_sym_token4] = SHIFT(158), + [ts_builtin_sym_error] = SHIFT(159), }, [141] = { - [ts_sym__function] = SHIFT(45), - [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(136), - [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_token3] = SHIFT(139), - [ts_aux_sym_token9] = SHIFT(145), + [ts_aux_sym_token8] = SHIFT(142), }, [142] = { - [ts_aux_sym_repeat_helper5] = SHIFT(143), - [ts_aux_sym_token1] = SHIFT(106), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - [ts_aux_sym_token7] = SHIFT(134), + [ts_sym__function] = SHIFT(45), + [ts_sym_array] = SHIFT(102), + [ts_sym_assignment] = SHIFT(103), + [ts_sym_expression] = SHIFT(143), + [ts_sym_false] = SHIFT(102), + [ts_sym_function_call] = SHIFT(103), + [ts_sym_function_expression] = SHIFT(103), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(103), + [ts_sym_null] = SHIFT(102), + [ts_sym_number] = SHIFT(102), + [ts_sym_object] = SHIFT(102), + [ts_sym_property_access] = SHIFT(103), + [ts_sym_string] = SHIFT(102), + [ts_sym_true] = SHIFT(102), + [ts_aux_sym_token3] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), }, [143] = { - [ts_aux_sym_token4] = SHIFT(144), + [ts_aux_sym_repeat_helper5] = SHIFT(144), + [ts_aux_sym_token1] = SHIFT(107), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), + [ts_aux_sym_token7] = SHIFT(135), }, [144] = { + [ts_aux_sym_token4] = SHIFT(145), + }, + + [145] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token4] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token6] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), }, - [145] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(75), - [ts_sym_assignment] = SHIFT(76), - [ts_sym_expression] = SHIFT(146), - [ts_sym_false] = SHIFT(75), - [ts_sym_function_call] = SHIFT(76), - [ts_sym_function_expression] = SHIFT(76), - [ts_sym_identifier] = SHIFT(120), - [ts_sym_literal] = SHIFT(76), - [ts_sym_null] = SHIFT(75), - [ts_sym_number] = SHIFT(75), - [ts_sym_object] = SHIFT(75), - [ts_sym_property_access] = SHIFT(76), - [ts_sym_string] = SHIFT(75), - [ts_sym_true] = SHIFT(75), - [ts_aux_sym_token10] = SHIFT(149), - [ts_aux_sym_token3] = SHIFT(123), - [ts_aux_sym_token9] = SHIFT(150), - [ts_builtin_sym_error] = SHIFT(156), - }, - [146] = { - [ts_aux_sym_repeat_helper6] = SHIFT(147), - [ts_aux_sym_token1] = SHIFT(80), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), - [ts_aux_sym_token7] = SHIFT(118), + [ts_sym__function] = SHIFT(58), + [ts_sym_array] = SHIFT(76), + [ts_sym_assignment] = SHIFT(77), + [ts_sym_expression] = SHIFT(147), + [ts_sym_false] = SHIFT(76), + [ts_sym_function_call] = SHIFT(77), + [ts_sym_function_expression] = SHIFT(77), + [ts_sym_identifier] = SHIFT(121), + [ts_sym_literal] = SHIFT(77), + [ts_sym_null] = SHIFT(76), + [ts_sym_number] = SHIFT(76), + [ts_sym_object] = SHIFT(76), + [ts_sym_property_access] = SHIFT(77), + [ts_sym_string] = SHIFT(76), + [ts_sym_true] = SHIFT(76), + [ts_aux_sym_token10] = SHIFT(150), + [ts_aux_sym_token3] = SHIFT(124), + [ts_aux_sym_token9] = SHIFT(151), + [ts_builtin_sym_error] = SHIFT(157), }, [147] = { - [ts_aux_sym_token10] = SHIFT(148), + [ts_aux_sym_repeat_helper6] = SHIFT(148), + [ts_aux_sym_token1] = SHIFT(81), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), + [ts_aux_sym_token6] = SHIFT(116), + [ts_aux_sym_token7] = SHIFT(119), }, [148] = { + [ts_aux_sym_token10] = SHIFT(149), + }, + + [149] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token4] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token6] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), }, - [149] = { + [150] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token4] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token6] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), }, - [150] = { - [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(75), - [ts_sym_assignment] = SHIFT(76), - [ts_sym_expression] = SHIFT(151), - [ts_sym_false] = SHIFT(75), - [ts_sym_function_call] = SHIFT(76), - [ts_sym_function_expression] = SHIFT(76), - [ts_sym_identifier] = SHIFT(120), - [ts_sym_literal] = SHIFT(76), - [ts_sym_null] = SHIFT(75), - [ts_sym_number] = SHIFT(75), - [ts_sym_object] = SHIFT(75), - [ts_sym_property_access] = SHIFT(76), - [ts_sym_string] = SHIFT(75), - [ts_sym_true] = SHIFT(75), - [ts_aux_sym_token10] = SHIFT(154), - [ts_aux_sym_token3] = SHIFT(123), - [ts_aux_sym_token9] = SHIFT(150), - [ts_builtin_sym_error] = SHIFT(155), - }, - [151] = { - [ts_aux_sym_repeat_helper6] = SHIFT(152), - [ts_aux_sym_token1] = SHIFT(80), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), - [ts_aux_sym_token7] = SHIFT(118), + [ts_sym__function] = SHIFT(58), + [ts_sym_array] = SHIFT(76), + [ts_sym_assignment] = SHIFT(77), + [ts_sym_expression] = SHIFT(152), + [ts_sym_false] = SHIFT(76), + [ts_sym_function_call] = SHIFT(77), + [ts_sym_function_expression] = SHIFT(77), + [ts_sym_identifier] = SHIFT(121), + [ts_sym_literal] = SHIFT(77), + [ts_sym_null] = SHIFT(76), + [ts_sym_number] = SHIFT(76), + [ts_sym_object] = SHIFT(76), + [ts_sym_property_access] = SHIFT(77), + [ts_sym_string] = SHIFT(76), + [ts_sym_true] = SHIFT(76), + [ts_aux_sym_token10] = SHIFT(155), + [ts_aux_sym_token3] = SHIFT(124), + [ts_aux_sym_token9] = SHIFT(151), + [ts_builtin_sym_error] = SHIFT(156), }, [152] = { - [ts_aux_sym_token10] = SHIFT(153), + [ts_aux_sym_repeat_helper6] = SHIFT(153), + [ts_aux_sym_token1] = SHIFT(81), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), + [ts_aux_sym_token6] = SHIFT(116), + [ts_aux_sym_token7] = SHIFT(119), }, [153] = { + [ts_aux_sym_token10] = SHIFT(154), + }, + + [154] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token10] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token6] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), }, - [154] = { + [155] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token10] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token6] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), }, - [155] = { - [ts_aux_sym_repeat_helper6] = SHIFT(152), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), - }, - [156] = { - [ts_aux_sym_repeat_helper6] = SHIFT(147), + [ts_aux_sym_repeat_helper6] = SHIFT(153), [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), + [ts_aux_sym_token6] = SHIFT(116), }, [157] = { + [ts_aux_sym_repeat_helper6] = SHIFT(148), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), + [ts_aux_sym_token6] = SHIFT(116), + }, + + [158] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token4] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token6] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 2), }, - [158] = { - [ts_aux_sym_repeat_helper5] = SHIFT(159), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - }, - [159] = { - [ts_aux_sym_token4] = SHIFT(160), + [ts_aux_sym_repeat_helper5] = SHIFT(160), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), }, [160] = { + [ts_aux_sym_token4] = SHIFT(161), + }, + + [161] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token4] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token6] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), }, - [161] = { - [ts_aux_sym_repeat_helper5] = SHIFT(162), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - }, - [162] = { - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 3), + [ts_aux_sym_repeat_helper5] = SHIFT(163), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), }, [163] = { + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 3), + }, + + [164] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token10] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token6] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 2), }, - [164] = { - [ts_aux_sym_repeat_helper5] = SHIFT(165), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - }, - [165] = { - [ts_aux_sym_token4] = SHIFT(166), + [ts_aux_sym_repeat_helper5] = SHIFT(166), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), }, [166] = { + [ts_aux_sym_token4] = SHIFT(167), + }, + + [167] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token10] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token6] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), }, - [167] = { - [ts_aux_sym_repeat_helper6] = SHIFT(117), + [168] = { + [ts_aux_sym_repeat_helper6] = SHIFT(118), [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), + [ts_aux_sym_token6] = SHIFT(116), }, - [168] = { + [169] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token2] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token6] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), }, - [169] = { - [ts_aux_sym_repeat_helper6] = SHIFT(113), + [170] = { + [ts_aux_sym_repeat_helper6] = SHIFT(114), [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), + [ts_aux_sym_token6] = SHIFT(116), }, - [170] = { + [171] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token2] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token6] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 2), }, - [171] = { - [ts_aux_sym_repeat_helper5] = SHIFT(172), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - }, - [172] = { - [ts_aux_sym_token4] = SHIFT(173), + [ts_aux_sym_repeat_helper5] = SHIFT(173), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), }, [173] = { + [ts_aux_sym_token4] = SHIFT(174), + }, + + [174] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token2] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token6] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), }, - [174] = { + [175] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token2] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token6] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), }, - [175] = { + [176] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token10] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token6] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), }, - [176] = { + [177] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token11] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token12] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), }, - [177] = { - [ts_aux_sym_repeat_helper6] = SHIFT(78), - [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), - }, - [178] = { - [ts_aux_sym_repeat_helper5] = SHIFT(179), - [ts_aux_sym_token4] = SHIFT(55), - [ts_aux_sym_token6] = SHIFT(129), + [ts_aux_sym_repeat_helper6] = SHIFT(79), + [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), + [ts_aux_sym_token6] = SHIFT(116), }, [179] = { - [ts_aux_sym_token4] = SHIFT(180), + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_repeat_helper5] = SHIFT(180), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), + [ts_aux_sym_token4] = SHIFT(55), + [ts_aux_sym_token6] = SHIFT(130), }, [180] = { + [ts_aux_sym_token4] = SHIFT(181), + }, + + [181] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token11] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token12] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), }, - [181] = { - [ts_aux_sym_token4] = SHIFT(182), + [182] = { + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), }, - [182] = { + [183] = { + [ts_aux_sym_token4] = SHIFT(184), + }, + + [184] = { [ts_aux_sym_token1] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token4] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token6] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_statement_block, 3), }, - [183] = { - [ts_sym_formal_parameters] = SHIFT(184), - [ts_aux_sym_token1] = SHIFT(67), + [185] = { + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), + [ts_aux_sym_token4] = SHIFT(184), }, - [184] = { - [ts_sym_statement_block] = SHIFT(185), + [186] = { + [ts_sym_formal_parameters] = SHIFT(187), + [ts_aux_sym_token1] = SHIFT(68), + }, + + [187] = { + [ts_sym_statement_block] = SHIFT(188), [ts_aux_sym_token3] = SHIFT(48), }, - [185] = { + [188] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token4] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token6] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 4), }, - [186] = { - [ts_aux_sym_repeat_helper5] = SHIFT(187), - [ts_aux_sym_token1] = SHIFT(106), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - [ts_aux_sym_token7] = SHIFT(134), - }, - - [187] = { - [ts_aux_sym_token4] = SHIFT(188), - }, - - [188] = { - [ts_aux_sym_token1] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token11] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token12] = REDUCE(ts_sym_object, 6), - [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), - }, - [189] = { - [ts_aux_sym_repeat_helper5] = SHIFT(179), + [ts_aux_sym_repeat_helper5] = SHIFT(190), + [ts_aux_sym_token1] = SHIFT(107), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), + [ts_aux_sym_token6] = SHIFT(130), + [ts_aux_sym_token7] = SHIFT(135), }, [190] = { @@ -3437,130 +3428,155 @@ PARSE_TABLE = { }, [191] = { + [ts_aux_sym_token1] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token11] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token12] = REDUCE(ts_sym_object, 6), + [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), + }, + + [192] = { + [ts_aux_sym_repeat_helper5] = SHIFT(180), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), + }, + + [193] = { + [ts_aux_sym_token4] = SHIFT(194), + }, + + [194] = { [ts_aux_sym_token1] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token2] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_statement_block, 3), }, - [192] = { - [ts_sym_formal_parameters] = SHIFT(193), - [ts_aux_sym_token1] = SHIFT(67), + [195] = { + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), + [ts_aux_sym_token4] = SHIFT(194), }, - [193] = { - [ts_sym_statement_block] = SHIFT(194), + [196] = { + [ts_sym_formal_parameters] = SHIFT(197), + [ts_aux_sym_token1] = SHIFT(68), + }, + + [197] = { + [ts_sym_statement_block] = SHIFT(198), [ts_aux_sym_token3] = SHIFT(28), }, - [194] = { + [198] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token2] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 4), }, - [195] = { + [199] = { [ts_aux_sym_token1] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token2] = REDUCE(ts_sym_literal, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_literal, 1), }, - [196] = { + [200] = { [ts_aux_sym_token1] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token2] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), }, - [197] = { - [ts_aux_sym_token1] = SHIFT(198), - [ts_aux_sym_token2] = SHIFT(203), - [ts_aux_sym_token7] = SHIFT(231), - }, - - [198] = { - [ts_sym__function] = SHIFT(19), - [ts_sym_array] = SHIFT(81), - [ts_sym_assignment] = SHIFT(82), - [ts_sym_expression] = SHIFT(199), - [ts_sym_false] = SHIFT(81), - [ts_sym_function_call] = SHIFT(82), - [ts_sym_function_expression] = SHIFT(82), - [ts_sym_identifier] = SHIFT(95), - [ts_sym_literal] = SHIFT(82), - [ts_sym_null] = SHIFT(81), - [ts_sym_number] = SHIFT(81), - [ts_sym_object] = SHIFT(81), - [ts_sym_property_access] = SHIFT(82), - [ts_sym_string] = SHIFT(81), - [ts_sym_true] = SHIFT(81), - [ts_aux_sym_token2] = SHIFT(202), - [ts_aux_sym_token3] = SHIFT(98), - [ts_aux_sym_token9] = SHIFT(111), - }, - - [199] = { - [ts_aux_sym_repeat_helper3] = SHIFT(200), - [ts_aux_sym_token1] = SHIFT(86), - [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), - [ts_aux_sym_token6] = SHIFT(90), - [ts_aux_sym_token7] = SHIFT(93), - }, - - [200] = { - [ts_aux_sym_token2] = SHIFT(201), - }, - [201] = { + [ts_aux_sym_token1] = SHIFT(202), + [ts_aux_sym_token2] = SHIFT(207), + [ts_aux_sym_token7] = SHIFT(236), + }, + + [202] = { + [ts_sym__function] = SHIFT(19), + [ts_sym_array] = SHIFT(82), + [ts_sym_assignment] = SHIFT(83), + [ts_sym_expression] = SHIFT(203), + [ts_sym_false] = SHIFT(82), + [ts_sym_function_call] = SHIFT(83), + [ts_sym_function_expression] = SHIFT(83), + [ts_sym_identifier] = SHIFT(96), + [ts_sym_literal] = SHIFT(83), + [ts_sym_null] = SHIFT(82), + [ts_sym_number] = SHIFT(82), + [ts_sym_object] = SHIFT(82), + [ts_sym_property_access] = SHIFT(83), + [ts_sym_string] = SHIFT(82), + [ts_sym_true] = SHIFT(82), + [ts_aux_sym_token2] = SHIFT(206), + [ts_aux_sym_token3] = SHIFT(99), + [ts_aux_sym_token9] = SHIFT(112), + }, + + [203] = { + [ts_aux_sym_repeat_helper3] = SHIFT(204), + [ts_aux_sym_token1] = SHIFT(87), + [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), + [ts_aux_sym_token6] = SHIFT(91), + [ts_aux_sym_token7] = SHIFT(94), + }, + + [204] = { + [ts_aux_sym_token2] = SHIFT(205), + }, + + [205] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token2] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), }, - [202] = { + [206] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token2] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), }, - [203] = { - [ts_sym__for] = SHIFT(204), + [207] = { + [ts_sym__for] = SHIFT(208), [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(212), - [ts_sym__var] = SHIFT(216), + [ts_sym__if] = SHIFT(216), + [ts_sym__var] = SHIFT(220), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(221), - [ts_sym_expression_statement] = SHIFT(223), + [ts_sym_expression] = SHIFT(225), + [ts_sym_expression_statement] = SHIFT(227), [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(223), + [ts_sym_for_statement] = SHIFT(227), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(223), + [ts_sym_if_statement] = SHIFT(227), [ts_sym_literal] = SHIFT(16), [ts_sym_null] = SHIFT(15), [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(254), - [ts_sym_statement_block] = SHIFT(223), + [ts_sym_statement] = SHIFT(261), + [ts_sym_statement_block] = SHIFT(227), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(223), - [ts_aux_sym_token3] = SHIFT(227), - [ts_aux_sym_token9] = SHIFT(57), + [ts_sym_var_declaration] = SHIFT(227), + [ts_aux_sym_token3] = SHIFT(231), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(235), }, - [204] = { - [ts_aux_sym_token1] = SHIFT(205), + [208] = { + [ts_aux_sym_token1] = SHIFT(209), }, - [205] = { + [209] = { [ts_sym__function] = SHIFT(3), [ts_sym__var] = SHIFT(9), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(206), - [ts_sym_expression_statement] = SHIFT(208), + [ts_sym_expression] = SHIFT(210), + [ts_sym_expression_statement] = SHIFT(212), [ts_sym_false] = SHIFT(15), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), @@ -3572,20 +3588,21 @@ PARSE_TABLE = { [ts_sym_property_access] = SHIFT(16), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(208), + [ts_sym_var_declaration] = SHIFT(212), [ts_aux_sym_token3] = SHIFT(42), - [ts_aux_sym_token9] = SHIFT(57), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(260), }, - [206] = { - [ts_sym__terminator] = SHIFT(207), + [210] = { + [ts_sym__terminator] = SHIFT(211), [ts_aux_sym_token1] = SHIFT(18), [ts_aux_sym_token11] = SHIFT(12), [ts_aux_sym_token12] = SHIFT(12), [ts_aux_sym_token7] = SHIFT(36), }, - [207] = { + [211] = { [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), @@ -3594,15 +3611,16 @@ PARSE_TABLE = { [ts_sym_string] = REDUCE(ts_sym_expression_statement, 2), [ts_sym_true] = REDUCE(ts_sym_expression_statement, 2), [ts_aux_sym_token3] = REDUCE(ts_sym_expression_statement, 2), - [ts_aux_sym_token9] = 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), }, - [208] = { + [212] = { [ts_sym__function] = SHIFT(3), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(206), - [ts_sym_expression_statement] = SHIFT(209), + [ts_sym_expression] = SHIFT(210), + [ts_sym_expression_statement] = SHIFT(213), [ts_sym_false] = SHIFT(15), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), @@ -3615,136 +3633,140 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), [ts_aux_sym_token3] = SHIFT(42), - [ts_aux_sym_token9] = SHIFT(57), - }, - - [209] = { - [ts_sym__function] = SHIFT(25), - [ts_sym_array] = SHIFT(195), - [ts_sym_assignment] = SHIFT(196), - [ts_sym_expression] = SHIFT(210), - [ts_sym_false] = SHIFT(195), - [ts_sym_function_call] = SHIFT(196), - [ts_sym_function_expression] = SHIFT(196), - [ts_sym_identifier] = SHIFT(233), - [ts_sym_literal] = SHIFT(196), - [ts_sym_null] = SHIFT(195), - [ts_sym_number] = SHIFT(195), - [ts_sym_object] = SHIFT(195), - [ts_sym_property_access] = SHIFT(196), - [ts_sym_string] = SHIFT(195), - [ts_sym_true] = SHIFT(195), - [ts_aux_sym_token3] = SHIFT(236), - [ts_aux_sym_token9] = SHIFT(246), - }, - - [210] = { - [ts_aux_sym_token1] = SHIFT(198), - [ts_aux_sym_token2] = SHIFT(211), - [ts_aux_sym_token7] = SHIFT(231), - }, - - [211] = { - [ts_sym__for] = SHIFT(204), - [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(212), - [ts_sym__var] = SHIFT(216), - [ts_sym_array] = SHIFT(15), - [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(221), - [ts_sym_expression_statement] = SHIFT(223), - [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(223), - [ts_sym_function_call] = SHIFT(16), - [ts_sym_function_expression] = SHIFT(16), - [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(223), - [ts_sym_literal] = SHIFT(16), - [ts_sym_null] = SHIFT(15), - [ts_sym_number] = SHIFT(15), - [ts_sym_object] = SHIFT(15), - [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(253), - [ts_sym_statement_block] = SHIFT(223), - [ts_sym_string] = SHIFT(15), - [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(223), - [ts_aux_sym_token3] = SHIFT(227), - [ts_aux_sym_token9] = SHIFT(57), - }, - - [212] = { - [ts_aux_sym_token1] = SHIFT(213), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(260), }, [213] = { [ts_sym__function] = SHIFT(25), - [ts_sym_array] = SHIFT(195), - [ts_sym_assignment] = SHIFT(196), + [ts_sym_array] = SHIFT(199), + [ts_sym_assignment] = SHIFT(200), [ts_sym_expression] = SHIFT(214), - [ts_sym_false] = SHIFT(195), - [ts_sym_function_call] = SHIFT(196), - [ts_sym_function_expression] = SHIFT(196), - [ts_sym_identifier] = SHIFT(233), - [ts_sym_literal] = SHIFT(196), - [ts_sym_null] = SHIFT(195), - [ts_sym_number] = SHIFT(195), - [ts_sym_object] = SHIFT(195), - [ts_sym_property_access] = SHIFT(196), - [ts_sym_string] = SHIFT(195), - [ts_sym_true] = SHIFT(195), - [ts_aux_sym_token3] = SHIFT(236), - [ts_aux_sym_token9] = SHIFT(246), - [ts_builtin_sym_error] = SHIFT(252), + [ts_sym_false] = SHIFT(199), + [ts_sym_function_call] = SHIFT(200), + [ts_sym_function_expression] = SHIFT(200), + [ts_sym_identifier] = SHIFT(238), + [ts_sym_literal] = SHIFT(200), + [ts_sym_null] = SHIFT(199), + [ts_sym_number] = SHIFT(199), + [ts_sym_object] = SHIFT(199), + [ts_sym_property_access] = SHIFT(200), + [ts_sym_string] = SHIFT(199), + [ts_sym_true] = SHIFT(199), + [ts_aux_sym_token3] = SHIFT(241), + [ts_aux_sym_token9] = SHIFT(251), + [ts_builtin_sym_error] = SHIFT(259), }, [214] = { - [ts_aux_sym_token1] = SHIFT(198), + [ts_aux_sym_token1] = SHIFT(202), [ts_aux_sym_token2] = SHIFT(215), - [ts_aux_sym_token7] = SHIFT(231), + [ts_aux_sym_token7] = SHIFT(236), }, [215] = { - [ts_sym__for] = SHIFT(204), + [ts_sym__for] = SHIFT(208), [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(212), - [ts_sym__var] = SHIFT(216), + [ts_sym__if] = SHIFT(216), + [ts_sym__var] = SHIFT(220), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(221), - [ts_sym_expression_statement] = SHIFT(223), + [ts_sym_expression] = SHIFT(225), + [ts_sym_expression_statement] = SHIFT(227), [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(223), + [ts_sym_for_statement] = SHIFT(227), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(223), + [ts_sym_if_statement] = SHIFT(227), [ts_sym_literal] = SHIFT(16), [ts_sym_null] = SHIFT(15), [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(224), - [ts_sym_statement_block] = SHIFT(223), + [ts_sym_statement] = SHIFT(258), + [ts_sym_statement_block] = SHIFT(227), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(223), - [ts_aux_sym_token3] = SHIFT(227), - [ts_aux_sym_token9] = SHIFT(57), + [ts_sym_var_declaration] = SHIFT(227), + [ts_aux_sym_token3] = SHIFT(231), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(235), }, [216] = { - [ts_sym_assignment] = SHIFT(217), - [ts_sym_identifier] = SHIFT(220), + [ts_aux_sym_token1] = SHIFT(217), }, [217] = { - [ts_sym__terminator] = SHIFT(218), - [ts_aux_sym_token11] = SHIFT(219), - [ts_aux_sym_token12] = SHIFT(219), + [ts_sym__function] = SHIFT(25), + [ts_sym_array] = SHIFT(199), + [ts_sym_assignment] = SHIFT(200), + [ts_sym_expression] = SHIFT(218), + [ts_sym_false] = SHIFT(199), + [ts_sym_function_call] = SHIFT(200), + [ts_sym_function_expression] = SHIFT(200), + [ts_sym_identifier] = SHIFT(238), + [ts_sym_literal] = SHIFT(200), + [ts_sym_null] = SHIFT(199), + [ts_sym_number] = SHIFT(199), + [ts_sym_object] = SHIFT(199), + [ts_sym_property_access] = SHIFT(200), + [ts_sym_string] = SHIFT(199), + [ts_sym_true] = SHIFT(199), + [ts_aux_sym_token3] = SHIFT(241), + [ts_aux_sym_token9] = SHIFT(251), + [ts_builtin_sym_error] = SHIFT(257), }, [218] = { + [ts_aux_sym_token1] = SHIFT(202), + [ts_aux_sym_token2] = SHIFT(219), + [ts_aux_sym_token7] = SHIFT(236), + }, + + [219] = { + [ts_sym__for] = SHIFT(208), + [ts_sym__function] = SHIFT(3), + [ts_sym__if] = SHIFT(216), + [ts_sym__var] = SHIFT(220), + [ts_sym_array] = SHIFT(15), + [ts_sym_assignment] = SHIFT(16), + [ts_sym_expression] = SHIFT(225), + [ts_sym_expression_statement] = SHIFT(227), + [ts_sym_false] = SHIFT(15), + [ts_sym_for_statement] = SHIFT(227), + [ts_sym_function_call] = SHIFT(16), + [ts_sym_function_expression] = SHIFT(16), + [ts_sym_identifier] = SHIFT(39), + [ts_sym_if_statement] = SHIFT(227), + [ts_sym_literal] = SHIFT(16), + [ts_sym_null] = SHIFT(15), + [ts_sym_number] = SHIFT(15), + [ts_sym_object] = SHIFT(15), + [ts_sym_property_access] = SHIFT(16), + [ts_sym_statement] = SHIFT(228), + [ts_sym_statement_block] = SHIFT(227), + [ts_sym_string] = SHIFT(15), + [ts_sym_true] = SHIFT(15), + [ts_sym_var_declaration] = SHIFT(227), + [ts_aux_sym_token3] = SHIFT(231), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(235), + }, + + [220] = { + [ts_sym_assignment] = SHIFT(221), + [ts_sym_identifier] = SHIFT(224), + }, + + [221] = { + [ts_sym__terminator] = SHIFT(222), + [ts_aux_sym_token11] = SHIFT(223), + [ts_aux_sym_token12] = SHIFT(223), + }, + + [222] = { [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), @@ -3758,10 +3780,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_var_declaration, 3), [ts_aux_sym_token4] = REDUCE(ts_sym_var_declaration, 3), - [ts_aux_sym_token9] = 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), }, - [219] = { + [223] = { [ts_sym__else] = REDUCE(ts_sym__terminator, 1), [ts_sym__for] = REDUCE(ts_sym__terminator, 1), [ts_sym__function] = REDUCE(ts_sym__terminator, 1), @@ -3775,25 +3798,26 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym__terminator, 1), [ts_aux_sym_token3] = REDUCE(ts_sym__terminator, 1), [ts_aux_sym_token4] = REDUCE(ts_sym__terminator, 1), - [ts_aux_sym_token9] = REDUCE(ts_sym__terminator, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym__terminator, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym__terminator, 1), }, - [220] = { - [ts_sym__terminator] = SHIFT(218), - [ts_aux_sym_token11] = SHIFT(219), - [ts_aux_sym_token12] = SHIFT(219), + [224] = { + [ts_sym__terminator] = SHIFT(222), + [ts_aux_sym_token11] = SHIFT(223), + [ts_aux_sym_token12] = SHIFT(223), [ts_aux_sym_token5] = SHIFT(14), }, - [221] = { - [ts_sym__terminator] = SHIFT(222), + [225] = { + [ts_sym__terminator] = SHIFT(226), [ts_aux_sym_token1] = SHIFT(18), - [ts_aux_sym_token11] = SHIFT(219), - [ts_aux_sym_token12] = SHIFT(219), + [ts_aux_sym_token11] = SHIFT(223), + [ts_aux_sym_token12] = SHIFT(223), [ts_aux_sym_token7] = SHIFT(36), }, - [222] = { + [226] = { [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), @@ -3807,10 +3831,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_expression_statement, 2), [ts_aux_sym_token3] = REDUCE(ts_sym_expression_statement, 2), [ts_aux_sym_token4] = REDUCE(ts_sym_expression_statement, 2), - [ts_aux_sym_token9] = 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), }, - [223] = { + [227] = { [ts_sym__else] = REDUCE(ts_sym_statement, 1), [ts_sym__for] = REDUCE(ts_sym_statement, 1), [ts_sym__function] = REDUCE(ts_sym_statement, 1), @@ -3824,11 +3849,12 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_statement, 1), [ts_aux_sym_token3] = REDUCE(ts_sym_statement, 1), [ts_aux_sym_token4] = REDUCE(ts_sym_statement, 1), - [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), + [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), }, - [224] = { - [ts_sym__else] = SHIFT(225), + [228] = { + [ts_sym__else] = SHIFT(229), [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), @@ -3841,39 +3867,41 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_if_statement, 5), [ts_aux_sym_token3] = REDUCE(ts_sym_if_statement, 5), [ts_aux_sym_token4] = REDUCE(ts_sym_if_statement, 5), - [ts_aux_sym_token9] = 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), }, - [225] = { - [ts_sym__for] = SHIFT(204), + [229] = { + [ts_sym__for] = SHIFT(208), [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(212), - [ts_sym__var] = SHIFT(216), + [ts_sym__if] = SHIFT(216), + [ts_sym__var] = SHIFT(220), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(221), - [ts_sym_expression_statement] = SHIFT(223), + [ts_sym_expression] = SHIFT(225), + [ts_sym_expression_statement] = SHIFT(227), [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(223), + [ts_sym_for_statement] = SHIFT(227), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(223), + [ts_sym_if_statement] = SHIFT(227), [ts_sym_literal] = SHIFT(16), [ts_sym_null] = SHIFT(15), [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(226), - [ts_sym_statement_block] = SHIFT(223), + [ts_sym_statement] = SHIFT(230), + [ts_sym_statement_block] = SHIFT(227), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(223), - [ts_aux_sym_token3] = SHIFT(227), - [ts_aux_sym_token9] = SHIFT(57), + [ts_sym_var_declaration] = SHIFT(227), + [ts_aux_sym_token3] = SHIFT(231), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(235), }, - [226] = { + [230] = { [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), @@ -3887,10 +3915,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_if_statement, 7), [ts_aux_sym_token3] = REDUCE(ts_sym_if_statement, 7), [ts_aux_sym_token4] = REDUCE(ts_sym_if_statement, 7), - [ts_aux_sym_token9] = 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), }, - [227] = { + [231] = { [ts_sym__for] = SHIFT(7), [ts_sym__function] = SHIFT(3), [ts_sym__if] = SHIFT(23), @@ -3915,18 +3944,18 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(53), [ts_sym_true] = SHIFT(15), [ts_sym_var_declaration] = SHIFT(38), - [ts_aux_sym_repeat_helper2] = SHIFT(228), + [ts_aux_sym_repeat_helper2] = SHIFT(232), [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = SHIFT(56), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_error] = SHIFT(230), + [ts_builtin_sym_error] = SHIFT(234), }, - [228] = { - [ts_aux_sym_token4] = SHIFT(229), + [232] = { + [ts_aux_sym_token4] = SHIFT(233), }, - [229] = { + [233] = { [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), @@ -3940,186 +3969,196 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token4] = REDUCE(ts_sym_statement_block, 3), - [ts_aux_sym_token9] = 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), }, - [230] = { - [ts_aux_sym_repeat_helper5] = SHIFT(179), - [ts_aux_sym_token4] = SHIFT(229), - [ts_aux_sym_token6] = SHIFT(129), + [234] = { + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_repeat_helper5] = SHIFT(180), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), + [ts_aux_sym_token4] = SHIFT(233), + [ts_aux_sym_token6] = SHIFT(130), }, - [231] = { - [ts_sym_identifier] = SHIFT(232), + [235] = { + [ts_sym__terminator] = SHIFT(226), + [ts_aux_sym_token11] = SHIFT(223), + [ts_aux_sym_token12] = SHIFT(223), }, - [232] = { + [236] = { + [ts_sym_identifier] = SHIFT(237), + }, + + [237] = { [ts_aux_sym_token1] = REDUCE(ts_sym_property_access, 3), [ts_aux_sym_token2] = REDUCE(ts_sym_property_access, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_property_access, 3), }, - [233] = { + [238] = { [ts_aux_sym_token1] = REDUCE(ts_sym_expression, 1), [ts_aux_sym_token2] = REDUCE(ts_sym_expression, 1), - [ts_aux_sym_token5] = SHIFT(234), + [ts_aux_sym_token5] = SHIFT(239), [ts_aux_sym_token7] = REDUCE(ts_sym_expression, 1), }, - [234] = { - [ts_sym__function] = SHIFT(25), - [ts_sym_array] = SHIFT(195), - [ts_sym_assignment] = SHIFT(196), - [ts_sym_expression] = SHIFT(235), - [ts_sym_false] = SHIFT(195), - [ts_sym_function_call] = SHIFT(196), - [ts_sym_function_expression] = SHIFT(196), - [ts_sym_identifier] = SHIFT(233), - [ts_sym_literal] = SHIFT(196), - [ts_sym_null] = SHIFT(195), - [ts_sym_number] = SHIFT(195), - [ts_sym_object] = SHIFT(195), - [ts_sym_property_access] = SHIFT(196), - [ts_sym_string] = SHIFT(195), - [ts_sym_true] = SHIFT(195), - [ts_aux_sym_token3] = SHIFT(236), - [ts_aux_sym_token9] = SHIFT(246), - }, - - [235] = { - [ts_aux_sym_token1] = SHIFT(198), - [ts_aux_sym_token2] = REDUCE(ts_sym_assignment, 3), - [ts_aux_sym_token7] = SHIFT(231), - }, - - [236] = { - [ts_sym_identifier] = SHIFT(237), - [ts_sym_string] = SHIFT(237), - [ts_aux_sym_token4] = SHIFT(242), - [ts_builtin_sym_error] = SHIFT(243), - }, - - [237] = { - [ts_aux_sym_token8] = SHIFT(238), - }, - - [238] = { - [ts_sym__function] = SHIFT(45), - [ts_sym_array] = SHIFT(101), - [ts_sym_assignment] = SHIFT(102), - [ts_sym_expression] = SHIFT(239), - [ts_sym_false] = SHIFT(101), - [ts_sym_function_call] = SHIFT(102), - [ts_sym_function_expression] = SHIFT(102), - [ts_sym_identifier] = SHIFT(136), - [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_token3] = SHIFT(139), - [ts_aux_sym_token9] = SHIFT(145), - }, - [239] = { - [ts_aux_sym_repeat_helper5] = SHIFT(240), - [ts_aux_sym_token1] = SHIFT(106), - [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), - [ts_aux_sym_token7] = SHIFT(134), + [ts_sym__function] = SHIFT(25), + [ts_sym_array] = SHIFT(199), + [ts_sym_assignment] = SHIFT(200), + [ts_sym_expression] = SHIFT(240), + [ts_sym_false] = SHIFT(199), + [ts_sym_function_call] = SHIFT(200), + [ts_sym_function_expression] = SHIFT(200), + [ts_sym_identifier] = SHIFT(238), + [ts_sym_literal] = SHIFT(200), + [ts_sym_null] = SHIFT(199), + [ts_sym_number] = SHIFT(199), + [ts_sym_object] = SHIFT(199), + [ts_sym_property_access] = SHIFT(200), + [ts_sym_string] = SHIFT(199), + [ts_sym_true] = SHIFT(199), + [ts_aux_sym_token3] = SHIFT(241), + [ts_aux_sym_token9] = SHIFT(251), }, [240] = { - [ts_aux_sym_token4] = SHIFT(241), + [ts_aux_sym_token1] = SHIFT(202), + [ts_aux_sym_token2] = REDUCE(ts_sym_assignment, 3), + [ts_aux_sym_token7] = SHIFT(236), }, [241] = { + [ts_sym_identifier] = SHIFT(242), + [ts_sym_string] = SHIFT(242), + [ts_aux_sym_token4] = SHIFT(247), + [ts_builtin_sym_error] = SHIFT(248), + }, + + [242] = { + [ts_aux_sym_token8] = SHIFT(243), + }, + + [243] = { + [ts_sym__function] = SHIFT(45), + [ts_sym_array] = SHIFT(102), + [ts_sym_assignment] = SHIFT(103), + [ts_sym_expression] = SHIFT(244), + [ts_sym_false] = SHIFT(102), + [ts_sym_function_call] = SHIFT(103), + [ts_sym_function_expression] = SHIFT(103), + [ts_sym_identifier] = SHIFT(137), + [ts_sym_literal] = SHIFT(103), + [ts_sym_null] = SHIFT(102), + [ts_sym_number] = SHIFT(102), + [ts_sym_object] = SHIFT(102), + [ts_sym_property_access] = SHIFT(103), + [ts_sym_string] = SHIFT(102), + [ts_sym_true] = SHIFT(102), + [ts_aux_sym_token3] = SHIFT(140), + [ts_aux_sym_token9] = SHIFT(146), + }, + + [244] = { + [ts_aux_sym_repeat_helper5] = SHIFT(245), + [ts_aux_sym_token1] = SHIFT(107), + [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), + [ts_aux_sym_token6] = SHIFT(130), + [ts_aux_sym_token7] = SHIFT(135), + }, + + [245] = { + [ts_aux_sym_token4] = SHIFT(246), + }, + + [246] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token2] = REDUCE(ts_sym_object, 6), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 6), }, - [242] = { + [247] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token2] = REDUCE(ts_sym_object, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 2), }, - [243] = { - [ts_aux_sym_repeat_helper5] = SHIFT(244), + [248] = { + [ts_aux_sym_repeat_helper5] = SHIFT(249), [ts_aux_sym_token4] = REDUCE(ts_aux_sym_repeat_helper5, 0), - [ts_aux_sym_token6] = SHIFT(129), + [ts_aux_sym_token6] = SHIFT(130), }, - [244] = { - [ts_aux_sym_token4] = SHIFT(245), + [249] = { + [ts_aux_sym_token4] = SHIFT(250), }, - [245] = { + [250] = { [ts_aux_sym_token1] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token2] = REDUCE(ts_sym_object, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_object, 4), }, - [246] = { + [251] = { [ts_sym__function] = SHIFT(58), - [ts_sym_array] = SHIFT(75), - [ts_sym_assignment] = SHIFT(76), - [ts_sym_expression] = SHIFT(247), - [ts_sym_false] = SHIFT(75), - [ts_sym_function_call] = SHIFT(76), - [ts_sym_function_expression] = SHIFT(76), - [ts_sym_identifier] = SHIFT(120), - [ts_sym_literal] = SHIFT(76), - [ts_sym_null] = SHIFT(75), - [ts_sym_number] = SHIFT(75), - [ts_sym_object] = SHIFT(75), - [ts_sym_property_access] = SHIFT(76), - [ts_sym_string] = SHIFT(75), - [ts_sym_true] = SHIFT(75), - [ts_aux_sym_token10] = SHIFT(250), - [ts_aux_sym_token3] = SHIFT(123), - [ts_aux_sym_token9] = SHIFT(150), - [ts_builtin_sym_error] = SHIFT(251), + [ts_sym_array] = SHIFT(76), + [ts_sym_assignment] = SHIFT(77), + [ts_sym_expression] = SHIFT(252), + [ts_sym_false] = SHIFT(76), + [ts_sym_function_call] = SHIFT(77), + [ts_sym_function_expression] = SHIFT(77), + [ts_sym_identifier] = SHIFT(121), + [ts_sym_literal] = SHIFT(77), + [ts_sym_null] = SHIFT(76), + [ts_sym_number] = SHIFT(76), + [ts_sym_object] = SHIFT(76), + [ts_sym_property_access] = SHIFT(77), + [ts_sym_string] = SHIFT(76), + [ts_sym_true] = SHIFT(76), + [ts_aux_sym_token10] = SHIFT(255), + [ts_aux_sym_token3] = SHIFT(124), + [ts_aux_sym_token9] = SHIFT(151), + [ts_builtin_sym_error] = SHIFT(256), }, - [247] = { - [ts_aux_sym_repeat_helper6] = SHIFT(248), - [ts_aux_sym_token1] = SHIFT(80), + [252] = { + [ts_aux_sym_repeat_helper6] = SHIFT(253), + [ts_aux_sym_token1] = SHIFT(81), [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), - [ts_aux_sym_token7] = SHIFT(118), + [ts_aux_sym_token6] = SHIFT(116), + [ts_aux_sym_token7] = SHIFT(119), }, - [248] = { - [ts_aux_sym_token10] = SHIFT(249), + [253] = { + [ts_aux_sym_token10] = SHIFT(254), }, - [249] = { + [254] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token2] = REDUCE(ts_sym_array, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 4), }, - [250] = { + [255] = { [ts_aux_sym_token1] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token2] = REDUCE(ts_sym_array, 2), [ts_aux_sym_token7] = REDUCE(ts_sym_array, 2), }, - [251] = { - [ts_aux_sym_repeat_helper6] = SHIFT(248), + [256] = { + [ts_aux_sym_repeat_helper6] = SHIFT(253), [ts_aux_sym_token10] = REDUCE(ts_aux_sym_repeat_helper6, 0), - [ts_aux_sym_token6] = SHIFT(115), + [ts_aux_sym_token6] = SHIFT(116), }, - [252] = { - [ts_aux_sym_token2] = SHIFT(215), + [257] = { + [ts_aux_sym_token2] = SHIFT(219), }, - [253] = { + [258] = { [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), @@ -4133,11 +4172,22 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_for_statement, 7), [ts_aux_sym_token3] = REDUCE(ts_sym_for_statement, 7), [ts_aux_sym_token4] = REDUCE(ts_sym_for_statement, 7), - [ts_aux_sym_token9] = 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), }, - [254] = { - [ts_sym__else] = SHIFT(255), + [259] = { + [ts_aux_sym_token2] = SHIFT(215), + }, + + [260] = { + [ts_sym__terminator] = SHIFT(211), + [ts_aux_sym_token11] = SHIFT(12), + [ts_aux_sym_token12] = SHIFT(12), + }, + + [261] = { + [ts_sym__else] = SHIFT(262), [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), @@ -4150,10 +4200,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_if_statement, 5), [ts_aux_sym_token3] = REDUCE(ts_sym_if_statement, 5), [ts_aux_sym_token4] = REDUCE(ts_sym_if_statement, 5), - [ts_aux_sym_token9] = 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), }, - [255] = { + [262] = { [ts_sym__for] = SHIFT(7), [ts_sym__function] = SHIFT(3), [ts_sym__if] = SHIFT(23), @@ -4173,16 +4224,17 @@ PARSE_TABLE = { [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(256), + [ts_sym_statement] = SHIFT(263), [ts_sym_statement_block] = SHIFT(38), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), [ts_sym_var_declaration] = SHIFT(38), [ts_aux_sym_token3] = SHIFT(51), - [ts_aux_sym_token9] = SHIFT(57), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(182), }, - [256] = { + [263] = { [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), @@ -4195,73 +4247,81 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_if_statement, 7), [ts_aux_sym_token3] = REDUCE(ts_sym_if_statement, 7), [ts_aux_sym_token4] = REDUCE(ts_sym_if_statement, 7), - [ts_aux_sym_token9] = 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), }, - [257] = { - [ts_aux_sym_token2] = SHIFT(203), + [264] = { + [ts_aux_sym_token2] = SHIFT(207), }, - [258] = { - [ts_aux_sym_token4] = SHIFT(259), + [265] = { + [ts_aux_sym_token4] = SHIFT(266), }, - [259] = { + [266] = { [ts_aux_sym_token1] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token2] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token6] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_statement_block, 3), }, - [260] = { - [ts_sym_formal_parameters] = SHIFT(261), - [ts_aux_sym_token1] = SHIFT(67), + [267] = { + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), + [ts_aux_sym_token4] = SHIFT(266), }, - [261] = { - [ts_sym_statement_block] = SHIFT(262), + [268] = { + [ts_sym_formal_parameters] = SHIFT(269), + [ts_aux_sym_token1] = SHIFT(68), + }, + + [269] = { + [ts_sym_statement_block] = SHIFT(270), [ts_aux_sym_token3] = SHIFT(22), }, - [262] = { + [270] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token2] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token6] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 4), }, - [263] = { - [ts_aux_sym_repeat_helper3] = SHIFT(264), - [ts_aux_sym_token1] = SHIFT(86), + [271] = { + [ts_aux_sym_repeat_helper3] = SHIFT(272), + [ts_aux_sym_token1] = SHIFT(87), [ts_aux_sym_token2] = REDUCE(ts_aux_sym_repeat_helper3, 0), - [ts_aux_sym_token6] = SHIFT(90), - [ts_aux_sym_token7] = SHIFT(93), + [ts_aux_sym_token6] = SHIFT(91), + [ts_aux_sym_token7] = SHIFT(94), }, - [264] = { - [ts_aux_sym_token2] = SHIFT(265), + [272] = { + [ts_aux_sym_token2] = SHIFT(273), }, - [265] = { + [273] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token11] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token12] = REDUCE(ts_sym_function_call, 5), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 5), }, - [266] = { + [274] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token11] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token12] = REDUCE(ts_sym_function_call, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_function_call, 3), }, - [267] = { + [275] = { [ts_sym__function] = SHIFT(3), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(206), - [ts_sym_expression_statement] = SHIFT(268), + [ts_sym_expression] = SHIFT(210), + [ts_sym_expression_statement] = SHIFT(276), [ts_sym_false] = SHIFT(15), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), @@ -4274,36 +4334,38 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), [ts_aux_sym_token3] = SHIFT(42), - [ts_aux_sym_token9] = SHIFT(57), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(260), }, - [268] = { + [276] = { [ts_sym__function] = SHIFT(25), - [ts_sym_array] = SHIFT(195), - [ts_sym_assignment] = SHIFT(196), - [ts_sym_expression] = SHIFT(269), - [ts_sym_false] = SHIFT(195), - [ts_sym_function_call] = SHIFT(196), - [ts_sym_function_expression] = SHIFT(196), - [ts_sym_identifier] = SHIFT(233), - [ts_sym_literal] = SHIFT(196), - [ts_sym_null] = SHIFT(195), - [ts_sym_number] = SHIFT(195), - [ts_sym_object] = SHIFT(195), - [ts_sym_property_access] = SHIFT(196), - [ts_sym_string] = SHIFT(195), - [ts_sym_true] = SHIFT(195), - [ts_aux_sym_token3] = SHIFT(236), - [ts_aux_sym_token9] = SHIFT(246), + [ts_sym_array] = SHIFT(199), + [ts_sym_assignment] = SHIFT(200), + [ts_sym_expression] = SHIFT(277), + [ts_sym_false] = SHIFT(199), + [ts_sym_function_call] = SHIFT(200), + [ts_sym_function_expression] = SHIFT(200), + [ts_sym_identifier] = SHIFT(238), + [ts_sym_literal] = SHIFT(200), + [ts_sym_null] = SHIFT(199), + [ts_sym_number] = SHIFT(199), + [ts_sym_object] = SHIFT(199), + [ts_sym_property_access] = SHIFT(200), + [ts_sym_string] = SHIFT(199), + [ts_sym_true] = SHIFT(199), + [ts_aux_sym_token3] = SHIFT(241), + [ts_aux_sym_token9] = SHIFT(251), + [ts_builtin_sym_error] = SHIFT(280), }, - [269] = { - [ts_aux_sym_token1] = SHIFT(198), - [ts_aux_sym_token2] = SHIFT(270), - [ts_aux_sym_token7] = SHIFT(231), + [277] = { + [ts_aux_sym_token1] = SHIFT(202), + [ts_aux_sym_token2] = SHIFT(278), + [ts_aux_sym_token7] = SHIFT(236), }, - [270] = { + [278] = { [ts_sym__for] = SHIFT(7), [ts_sym__function] = SHIFT(3), [ts_sym__if] = SHIFT(23), @@ -4323,16 +4385,17 @@ PARSE_TABLE = { [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(271), + [ts_sym_statement] = SHIFT(279), [ts_sym_statement_block] = SHIFT(38), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), [ts_sym_var_declaration] = SHIFT(38), [ts_aux_sym_token3] = SHIFT(51), - [ts_aux_sym_token9] = SHIFT(57), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(182), }, - [271] = { + [279] = { [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), @@ -4345,205 +4408,54 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_for_statement, 7), [ts_aux_sym_token3] = REDUCE(ts_sym_for_statement, 7), [ts_aux_sym_token4] = REDUCE(ts_sym_for_statement, 7), - [ts_aux_sym_token9] = 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), }, - [272] = { - [ts_aux_sym_token4] = SHIFT(273), + [280] = { + [ts_aux_sym_token2] = SHIFT(278), }, - [273] = { + [281] = { + [ts_aux_sym_token4] = SHIFT(282), + }, + + [282] = { [ts_aux_sym_token1] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token11] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token12] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token7] = REDUCE(ts_sym_statement_block, 3), }, - [274] = { - [ts_sym_formal_parameters] = SHIFT(275), - [ts_aux_sym_token1] = SHIFT(67), + [283] = { + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), + [ts_aux_sym_token4] = SHIFT(282), }, - [275] = { - [ts_sym_statement_block] = SHIFT(276), + [284] = { + [ts_sym_formal_parameters] = SHIFT(285), + [ts_aux_sym_token1] = SHIFT(68), + }, + + [285] = { + [ts_sym_statement_block] = SHIFT(286), [ts_aux_sym_token3] = SHIFT(6), }, - [276] = { + [286] = { [ts_aux_sym_token1] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token11] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token12] = REDUCE(ts_sym_function_expression, 4), [ts_aux_sym_token7] = REDUCE(ts_sym_function_expression, 4), }, - [277] = { - [ts_sym__function] = SHIFT(3), - [ts_sym_array] = SHIFT(15), - [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(206), - [ts_sym_expression_statement] = SHIFT(278), - [ts_sym_false] = SHIFT(15), - [ts_sym_function_call] = SHIFT(16), - [ts_sym_function_expression] = SHIFT(16), - [ts_sym_identifier] = SHIFT(39), - [ts_sym_literal] = SHIFT(16), - [ts_sym_null] = SHIFT(15), - [ts_sym_number] = SHIFT(15), - [ts_sym_object] = SHIFT(15), - [ts_sym_property_access] = SHIFT(16), - [ts_sym_string] = SHIFT(15), - [ts_sym_true] = SHIFT(15), - [ts_aux_sym_token3] = SHIFT(42), - [ts_aux_sym_token9] = SHIFT(57), - }, - - [278] = { - [ts_sym__function] = SHIFT(25), - [ts_sym_array] = SHIFT(195), - [ts_sym_assignment] = SHIFT(196), - [ts_sym_expression] = SHIFT(279), - [ts_sym_false] = SHIFT(195), - [ts_sym_function_call] = SHIFT(196), - [ts_sym_function_expression] = SHIFT(196), - [ts_sym_identifier] = SHIFT(233), - [ts_sym_literal] = SHIFT(196), - [ts_sym_null] = SHIFT(195), - [ts_sym_number] = SHIFT(195), - [ts_sym_object] = SHIFT(195), - [ts_sym_property_access] = SHIFT(196), - [ts_sym_string] = SHIFT(195), - [ts_sym_true] = SHIFT(195), - [ts_aux_sym_token3] = SHIFT(236), - [ts_aux_sym_token9] = SHIFT(246), - }, - - [279] = { - [ts_aux_sym_token1] = SHIFT(198), - [ts_aux_sym_token2] = SHIFT(280), - [ts_aux_sym_token7] = SHIFT(231), - }, - - [280] = { - [ts_sym__for] = SHIFT(1), - [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(281), - [ts_sym__var] = SHIFT(314), - [ts_sym_array] = SHIFT(15), - [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(319), - [ts_sym_expression_statement] = SHIFT(321), - [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(321), - [ts_sym_function_call] = SHIFT(16), - [ts_sym_function_expression] = SHIFT(16), - [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(321), - [ts_sym_literal] = SHIFT(16), - [ts_sym_null] = SHIFT(15), - [ts_sym_number] = SHIFT(15), - [ts_sym_object] = SHIFT(15), - [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(328), - [ts_sym_statement_block] = SHIFT(321), - [ts_sym_string] = SHIFT(15), - [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(321), - [ts_aux_sym_token3] = SHIFT(323), - [ts_aux_sym_token9] = SHIFT(57), - }, - - [281] = { - [ts_aux_sym_token1] = SHIFT(282), - }, - - [282] = { - [ts_sym__function] = SHIFT(25), - [ts_sym_array] = SHIFT(195), - [ts_sym_assignment] = SHIFT(196), - [ts_sym_expression] = SHIFT(283), - [ts_sym_false] = SHIFT(195), - [ts_sym_function_call] = SHIFT(196), - [ts_sym_function_expression] = SHIFT(196), - [ts_sym_identifier] = SHIFT(233), - [ts_sym_literal] = SHIFT(196), - [ts_sym_null] = SHIFT(195), - [ts_sym_number] = SHIFT(195), - [ts_sym_object] = SHIFT(195), - [ts_sym_property_access] = SHIFT(196), - [ts_sym_string] = SHIFT(195), - [ts_sym_true] = SHIFT(195), - [ts_aux_sym_token3] = SHIFT(236), - [ts_aux_sym_token9] = SHIFT(246), - [ts_builtin_sym_error] = SHIFT(327), - }, - - [283] = { - [ts_aux_sym_token1] = SHIFT(198), - [ts_aux_sym_token2] = SHIFT(284), - [ts_aux_sym_token7] = SHIFT(231), - }, - - [284] = { - [ts_sym__for] = SHIFT(285), - [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(291), - [ts_sym__var] = SHIFT(295), - [ts_sym_array] = SHIFT(15), - [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(300), - [ts_sym_expression_statement] = SHIFT(302), - [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(302), - [ts_sym_function_call] = SHIFT(16), - [ts_sym_function_expression] = SHIFT(16), - [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(302), - [ts_sym_literal] = SHIFT(16), - [ts_sym_null] = SHIFT(15), - [ts_sym_number] = SHIFT(15), - [ts_sym_object] = SHIFT(15), - [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(312), - [ts_sym_statement_block] = SHIFT(302), - [ts_sym_string] = SHIFT(15), - [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(302), - [ts_aux_sym_token3] = SHIFT(306), - [ts_aux_sym_token9] = SHIFT(57), - }, - - [285] = { - [ts_aux_sym_token1] = SHIFT(286), - }, - - [286] = { - [ts_sym__function] = SHIFT(3), - [ts_sym__var] = SHIFT(9), - [ts_sym_array] = SHIFT(15), - [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(206), - [ts_sym_expression_statement] = SHIFT(287), - [ts_sym_false] = SHIFT(15), - [ts_sym_function_call] = SHIFT(16), - [ts_sym_function_expression] = SHIFT(16), - [ts_sym_identifier] = SHIFT(39), - [ts_sym_literal] = SHIFT(16), - [ts_sym_null] = SHIFT(15), - [ts_sym_number] = SHIFT(15), - [ts_sym_object] = SHIFT(15), - [ts_sym_property_access] = SHIFT(16), - [ts_sym_string] = SHIFT(15), - [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(287), - [ts_aux_sym_token3] = SHIFT(42), - [ts_aux_sym_token9] = SHIFT(57), - }, - [287] = { [ts_sym__function] = SHIFT(3), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(206), + [ts_sym_expression] = SHIFT(210), [ts_sym_expression_statement] = SHIFT(288), [ts_sym_false] = SHIFT(15), [ts_sym_function_call] = SHIFT(16), @@ -4557,62 +4469,65 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), [ts_aux_sym_token3] = SHIFT(42), - [ts_aux_sym_token9] = SHIFT(57), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(260), }, [288] = { [ts_sym__function] = SHIFT(25), - [ts_sym_array] = SHIFT(195), - [ts_sym_assignment] = SHIFT(196), + [ts_sym_array] = SHIFT(199), + [ts_sym_assignment] = SHIFT(200), [ts_sym_expression] = SHIFT(289), - [ts_sym_false] = SHIFT(195), - [ts_sym_function_call] = SHIFT(196), - [ts_sym_function_expression] = SHIFT(196), - [ts_sym_identifier] = SHIFT(233), - [ts_sym_literal] = SHIFT(196), - [ts_sym_null] = SHIFT(195), - [ts_sym_number] = SHIFT(195), - [ts_sym_object] = SHIFT(195), - [ts_sym_property_access] = SHIFT(196), - [ts_sym_string] = SHIFT(195), - [ts_sym_true] = SHIFT(195), - [ts_aux_sym_token3] = SHIFT(236), - [ts_aux_sym_token9] = SHIFT(246), + [ts_sym_false] = SHIFT(199), + [ts_sym_function_call] = SHIFT(200), + [ts_sym_function_expression] = SHIFT(200), + [ts_sym_identifier] = SHIFT(238), + [ts_sym_literal] = SHIFT(200), + [ts_sym_null] = SHIFT(199), + [ts_sym_number] = SHIFT(199), + [ts_sym_object] = SHIFT(199), + [ts_sym_property_access] = SHIFT(200), + [ts_sym_string] = SHIFT(199), + [ts_sym_true] = SHIFT(199), + [ts_aux_sym_token3] = SHIFT(241), + [ts_aux_sym_token9] = SHIFT(251), + [ts_builtin_sym_error] = SHIFT(342), }, [289] = { - [ts_aux_sym_token1] = SHIFT(198), + [ts_aux_sym_token1] = SHIFT(202), [ts_aux_sym_token2] = SHIFT(290), - [ts_aux_sym_token7] = SHIFT(231), + [ts_aux_sym_token7] = SHIFT(236), }, [290] = { - [ts_sym__for] = SHIFT(285), + [ts_sym__for] = SHIFT(1), [ts_sym__function] = SHIFT(3), [ts_sym__if] = SHIFT(291), - [ts_sym__var] = SHIFT(295), + [ts_sym__var] = SHIFT(326), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(300), - [ts_sym_expression_statement] = SHIFT(302), + [ts_sym_expression] = SHIFT(331), + [ts_sym_expression_statement] = SHIFT(333), [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(302), + [ts_sym_for_statement] = SHIFT(333), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(302), + [ts_sym_if_statement] = SHIFT(333), [ts_sym_literal] = SHIFT(16), [ts_sym_null] = SHIFT(15), [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(311), - [ts_sym_statement_block] = SHIFT(302), + [ts_sym_statement] = SHIFT(341), + [ts_sym_statement_block] = SHIFT(333), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(302), - [ts_aux_sym_token3] = SHIFT(306), - [ts_aux_sym_token9] = SHIFT(57), + [ts_sym_var_declaration] = SHIFT(333), + [ts_aux_sym_token3] = SHIFT(335), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(339), }, [291] = { @@ -4621,72 +4536,241 @@ PARSE_TABLE = { [292] = { [ts_sym__function] = SHIFT(25), - [ts_sym_array] = SHIFT(195), - [ts_sym_assignment] = SHIFT(196), + [ts_sym_array] = SHIFT(199), + [ts_sym_assignment] = SHIFT(200), [ts_sym_expression] = SHIFT(293), - [ts_sym_false] = SHIFT(195), - [ts_sym_function_call] = SHIFT(196), - [ts_sym_function_expression] = SHIFT(196), - [ts_sym_identifier] = SHIFT(233), - [ts_sym_literal] = SHIFT(196), - [ts_sym_null] = SHIFT(195), - [ts_sym_number] = SHIFT(195), - [ts_sym_object] = SHIFT(195), - [ts_sym_property_access] = SHIFT(196), - [ts_sym_string] = SHIFT(195), - [ts_sym_true] = SHIFT(195), - [ts_aux_sym_token3] = SHIFT(236), - [ts_aux_sym_token9] = SHIFT(246), - [ts_builtin_sym_error] = SHIFT(310), + [ts_sym_false] = SHIFT(199), + [ts_sym_function_call] = SHIFT(200), + [ts_sym_function_expression] = SHIFT(200), + [ts_sym_identifier] = SHIFT(238), + [ts_sym_literal] = SHIFT(200), + [ts_sym_null] = SHIFT(199), + [ts_sym_number] = SHIFT(199), + [ts_sym_object] = SHIFT(199), + [ts_sym_property_access] = SHIFT(200), + [ts_sym_string] = SHIFT(199), + [ts_sym_true] = SHIFT(199), + [ts_aux_sym_token3] = SHIFT(241), + [ts_aux_sym_token9] = SHIFT(251), + [ts_builtin_sym_error] = SHIFT(340), }, [293] = { - [ts_aux_sym_token1] = SHIFT(198), + [ts_aux_sym_token1] = SHIFT(202), [ts_aux_sym_token2] = SHIFT(294), - [ts_aux_sym_token7] = SHIFT(231), + [ts_aux_sym_token7] = SHIFT(236), }, [294] = { - [ts_sym__for] = SHIFT(285), + [ts_sym__for] = SHIFT(295), [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(291), - [ts_sym__var] = SHIFT(295), + [ts_sym__if] = SHIFT(301), + [ts_sym__var] = SHIFT(305), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(300), - [ts_sym_expression_statement] = SHIFT(302), + [ts_sym_expression] = SHIFT(310), + [ts_sym_expression_statement] = SHIFT(312), [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(302), + [ts_sym_for_statement] = SHIFT(312), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(302), + [ts_sym_if_statement] = SHIFT(312), [ts_sym_literal] = SHIFT(16), [ts_sym_null] = SHIFT(15), [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(303), - [ts_sym_statement_block] = SHIFT(302), + [ts_sym_statement] = SHIFT(324), + [ts_sym_statement_block] = SHIFT(312), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(302), - [ts_aux_sym_token3] = SHIFT(306), - [ts_aux_sym_token9] = SHIFT(57), + [ts_sym_var_declaration] = SHIFT(312), + [ts_aux_sym_token3] = SHIFT(316), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(320), }, [295] = { - [ts_sym_assignment] = SHIFT(296), - [ts_sym_identifier] = SHIFT(299), + [ts_aux_sym_token1] = SHIFT(296), }, [296] = { - [ts_sym__terminator] = SHIFT(297), - [ts_aux_sym_token11] = SHIFT(298), - [ts_aux_sym_token12] = SHIFT(298), + [ts_sym__function] = SHIFT(3), + [ts_sym__var] = SHIFT(9), + [ts_sym_array] = SHIFT(15), + [ts_sym_assignment] = SHIFT(16), + [ts_sym_expression] = SHIFT(210), + [ts_sym_expression_statement] = SHIFT(297), + [ts_sym_false] = SHIFT(15), + [ts_sym_function_call] = SHIFT(16), + [ts_sym_function_expression] = SHIFT(16), + [ts_sym_identifier] = SHIFT(39), + [ts_sym_literal] = SHIFT(16), + [ts_sym_null] = SHIFT(15), + [ts_sym_number] = SHIFT(15), + [ts_sym_object] = SHIFT(15), + [ts_sym_property_access] = SHIFT(16), + [ts_sym_string] = SHIFT(15), + [ts_sym_true] = SHIFT(15), + [ts_sym_var_declaration] = SHIFT(297), + [ts_aux_sym_token3] = SHIFT(42), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(260), }, [297] = { + [ts_sym__function] = SHIFT(3), + [ts_sym_array] = SHIFT(15), + [ts_sym_assignment] = SHIFT(16), + [ts_sym_expression] = SHIFT(210), + [ts_sym_expression_statement] = SHIFT(298), + [ts_sym_false] = SHIFT(15), + [ts_sym_function_call] = SHIFT(16), + [ts_sym_function_expression] = SHIFT(16), + [ts_sym_identifier] = SHIFT(39), + [ts_sym_literal] = SHIFT(16), + [ts_sym_null] = SHIFT(15), + [ts_sym_number] = SHIFT(15), + [ts_sym_object] = SHIFT(15), + [ts_sym_property_access] = SHIFT(16), + [ts_sym_string] = SHIFT(15), + [ts_sym_true] = SHIFT(15), + [ts_aux_sym_token3] = SHIFT(42), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(260), + }, + + [298] = { + [ts_sym__function] = SHIFT(25), + [ts_sym_array] = SHIFT(199), + [ts_sym_assignment] = SHIFT(200), + [ts_sym_expression] = SHIFT(299), + [ts_sym_false] = SHIFT(199), + [ts_sym_function_call] = SHIFT(200), + [ts_sym_function_expression] = SHIFT(200), + [ts_sym_identifier] = SHIFT(238), + [ts_sym_literal] = SHIFT(200), + [ts_sym_null] = SHIFT(199), + [ts_sym_number] = SHIFT(199), + [ts_sym_object] = SHIFT(199), + [ts_sym_property_access] = SHIFT(200), + [ts_sym_string] = SHIFT(199), + [ts_sym_true] = SHIFT(199), + [ts_aux_sym_token3] = SHIFT(241), + [ts_aux_sym_token9] = SHIFT(251), + [ts_builtin_sym_error] = SHIFT(323), + }, + + [299] = { + [ts_aux_sym_token1] = SHIFT(202), + [ts_aux_sym_token2] = SHIFT(300), + [ts_aux_sym_token7] = SHIFT(236), + }, + + [300] = { + [ts_sym__for] = SHIFT(295), + [ts_sym__function] = SHIFT(3), + [ts_sym__if] = SHIFT(301), + [ts_sym__var] = SHIFT(305), + [ts_sym_array] = SHIFT(15), + [ts_sym_assignment] = SHIFT(16), + [ts_sym_expression] = SHIFT(310), + [ts_sym_expression_statement] = SHIFT(312), + [ts_sym_false] = SHIFT(15), + [ts_sym_for_statement] = SHIFT(312), + [ts_sym_function_call] = SHIFT(16), + [ts_sym_function_expression] = SHIFT(16), + [ts_sym_identifier] = SHIFT(39), + [ts_sym_if_statement] = SHIFT(312), + [ts_sym_literal] = SHIFT(16), + [ts_sym_null] = SHIFT(15), + [ts_sym_number] = SHIFT(15), + [ts_sym_object] = SHIFT(15), + [ts_sym_property_access] = SHIFT(16), + [ts_sym_statement] = SHIFT(322), + [ts_sym_statement_block] = SHIFT(312), + [ts_sym_string] = SHIFT(15), + [ts_sym_true] = SHIFT(15), + [ts_sym_var_declaration] = SHIFT(312), + [ts_aux_sym_token3] = SHIFT(316), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(320), + }, + + [301] = { + [ts_aux_sym_token1] = SHIFT(302), + }, + + [302] = { + [ts_sym__function] = SHIFT(25), + [ts_sym_array] = SHIFT(199), + [ts_sym_assignment] = SHIFT(200), + [ts_sym_expression] = SHIFT(303), + [ts_sym_false] = SHIFT(199), + [ts_sym_function_call] = SHIFT(200), + [ts_sym_function_expression] = SHIFT(200), + [ts_sym_identifier] = SHIFT(238), + [ts_sym_literal] = SHIFT(200), + [ts_sym_null] = SHIFT(199), + [ts_sym_number] = SHIFT(199), + [ts_sym_object] = SHIFT(199), + [ts_sym_property_access] = SHIFT(200), + [ts_sym_string] = SHIFT(199), + [ts_sym_true] = SHIFT(199), + [ts_aux_sym_token3] = SHIFT(241), + [ts_aux_sym_token9] = SHIFT(251), + [ts_builtin_sym_error] = SHIFT(321), + }, + + [303] = { + [ts_aux_sym_token1] = SHIFT(202), + [ts_aux_sym_token2] = SHIFT(304), + [ts_aux_sym_token7] = SHIFT(236), + }, + + [304] = { + [ts_sym__for] = SHIFT(295), + [ts_sym__function] = SHIFT(3), + [ts_sym__if] = SHIFT(301), + [ts_sym__var] = SHIFT(305), + [ts_sym_array] = SHIFT(15), + [ts_sym_assignment] = SHIFT(16), + [ts_sym_expression] = SHIFT(310), + [ts_sym_expression_statement] = SHIFT(312), + [ts_sym_false] = SHIFT(15), + [ts_sym_for_statement] = SHIFT(312), + [ts_sym_function_call] = SHIFT(16), + [ts_sym_function_expression] = SHIFT(16), + [ts_sym_identifier] = SHIFT(39), + [ts_sym_if_statement] = SHIFT(312), + [ts_sym_literal] = SHIFT(16), + [ts_sym_null] = SHIFT(15), + [ts_sym_number] = SHIFT(15), + [ts_sym_object] = SHIFT(15), + [ts_sym_property_access] = SHIFT(16), + [ts_sym_statement] = SHIFT(313), + [ts_sym_statement_block] = SHIFT(312), + [ts_sym_string] = SHIFT(15), + [ts_sym_true] = SHIFT(15), + [ts_sym_var_declaration] = SHIFT(312), + [ts_aux_sym_token3] = SHIFT(316), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(320), + }, + + [305] = { + [ts_sym_assignment] = SHIFT(306), + [ts_sym_identifier] = SHIFT(309), + }, + + [306] = { + [ts_sym__terminator] = SHIFT(307), + [ts_aux_sym_token11] = SHIFT(308), + [ts_aux_sym_token12] = SHIFT(308), + }, + + [307] = { [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), @@ -4700,10 +4784,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_var_declaration, 3), [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), - [ts_builtin_sym_end] = REDUCE(ts_sym_var_declaration, 3), + [ts_builtin_sym_end] = REDUCE(ts_sym_var_declaration, 3), + [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), }, - [298] = { + [308] = { [ts_sym__else] = REDUCE(ts_sym__terminator, 1), [ts_sym__for] = REDUCE(ts_sym__terminator, 1), [ts_sym__function] = REDUCE(ts_sym__terminator, 1), @@ -4717,25 +4802,26 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym__terminator, 1), [ts_aux_sym_token3] = REDUCE(ts_sym__terminator, 1), [ts_aux_sym_token9] = REDUCE(ts_sym__terminator, 1), - [ts_builtin_sym_end] = REDUCE(ts_sym__terminator, 1), + [ts_builtin_sym_end] = REDUCE(ts_sym__terminator, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym__terminator, 1), }, - [299] = { - [ts_sym__terminator] = SHIFT(297), - [ts_aux_sym_token11] = SHIFT(298), - [ts_aux_sym_token12] = SHIFT(298), + [309] = { + [ts_sym__terminator] = SHIFT(307), + [ts_aux_sym_token11] = SHIFT(308), + [ts_aux_sym_token12] = SHIFT(308), [ts_aux_sym_token5] = SHIFT(14), }, - [300] = { - [ts_sym__terminator] = SHIFT(301), + [310] = { + [ts_sym__terminator] = SHIFT(311), [ts_aux_sym_token1] = SHIFT(18), - [ts_aux_sym_token11] = SHIFT(298), - [ts_aux_sym_token12] = SHIFT(298), + [ts_aux_sym_token11] = SHIFT(308), + [ts_aux_sym_token12] = SHIFT(308), [ts_aux_sym_token7] = SHIFT(36), }, - [301] = { + [311] = { [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), @@ -4749,10 +4835,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_expression_statement, 2), [ts_aux_sym_token3] = REDUCE(ts_sym_expression_statement, 2), [ts_aux_sym_token9] = REDUCE(ts_sym_expression_statement, 2), - [ts_builtin_sym_end] = REDUCE(ts_sym_expression_statement, 2), + [ts_builtin_sym_end] = REDUCE(ts_sym_expression_statement, 2), + [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), }, - [302] = { + [312] = { [ts_sym__else] = REDUCE(ts_sym_statement, 1), [ts_sym__for] = REDUCE(ts_sym_statement, 1), [ts_sym__function] = REDUCE(ts_sym_statement, 1), @@ -4766,11 +4853,12 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_statement, 1), [ts_aux_sym_token3] = REDUCE(ts_sym_statement, 1), [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), - [ts_builtin_sym_end] = REDUCE(ts_sym_statement, 1), + [ts_builtin_sym_end] = REDUCE(ts_sym_statement, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), }, - [303] = { - [ts_sym__else] = SHIFT(304), + [313] = { + [ts_sym__else] = SHIFT(314), [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), @@ -4783,39 +4871,41 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_if_statement, 5), [ts_aux_sym_token3] = REDUCE(ts_sym_if_statement, 5), [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 5), - [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 5), + [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 5), + [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), }, - [304] = { - [ts_sym__for] = SHIFT(285), + [314] = { + [ts_sym__for] = SHIFT(295), [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(291), - [ts_sym__var] = SHIFT(295), + [ts_sym__if] = SHIFT(301), + [ts_sym__var] = SHIFT(305), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(300), - [ts_sym_expression_statement] = SHIFT(302), + [ts_sym_expression] = SHIFT(310), + [ts_sym_expression_statement] = SHIFT(312), [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(302), + [ts_sym_for_statement] = SHIFT(312), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(302), + [ts_sym_if_statement] = SHIFT(312), [ts_sym_literal] = SHIFT(16), [ts_sym_null] = SHIFT(15), [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(305), - [ts_sym_statement_block] = SHIFT(302), + [ts_sym_statement] = SHIFT(315), + [ts_sym_statement_block] = SHIFT(312), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(302), - [ts_aux_sym_token3] = SHIFT(306), - [ts_aux_sym_token9] = SHIFT(57), + [ts_sym_var_declaration] = SHIFT(312), + [ts_aux_sym_token3] = SHIFT(316), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(320), }, - [305] = { + [315] = { [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), @@ -4829,10 +4919,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_if_statement, 7), [ts_aux_sym_token3] = REDUCE(ts_sym_if_statement, 7), [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 7), - [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 7), + [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), }, - [306] = { + [316] = { [ts_sym__for] = SHIFT(7), [ts_sym__function] = SHIFT(3), [ts_sym__if] = SHIFT(23), @@ -4857,18 +4948,18 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(53), [ts_sym_true] = SHIFT(15), [ts_sym_var_declaration] = SHIFT(38), - [ts_aux_sym_repeat_helper2] = SHIFT(307), + [ts_aux_sym_repeat_helper2] = SHIFT(317), [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = SHIFT(56), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_error] = SHIFT(309), + [ts_builtin_sym_error] = SHIFT(319), }, - [307] = { - [ts_aux_sym_token4] = SHIFT(308), + [317] = { + [ts_aux_sym_token4] = SHIFT(318), }, - [308] = { + [318] = { [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), @@ -4882,20 +4973,30 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), - [ts_builtin_sym_end] = REDUCE(ts_sym_statement_block, 3), + [ts_builtin_sym_end] = REDUCE(ts_sym_statement_block, 3), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), }, - [309] = { - [ts_aux_sym_repeat_helper5] = SHIFT(179), - [ts_aux_sym_token4] = SHIFT(308), - [ts_aux_sym_token6] = SHIFT(129), + [319] = { + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_repeat_helper5] = SHIFT(180), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), + [ts_aux_sym_token4] = SHIFT(318), + [ts_aux_sym_token6] = SHIFT(130), }, - [310] = { - [ts_aux_sym_token2] = SHIFT(294), + [320] = { + [ts_sym__terminator] = SHIFT(311), + [ts_aux_sym_token11] = SHIFT(308), + [ts_aux_sym_token12] = SHIFT(308), }, - [311] = { + [321] = { + [ts_aux_sym_token2] = SHIFT(304), + }, + + [322] = { [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), @@ -4909,11 +5010,16 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_for_statement, 7), [ts_aux_sym_token3] = REDUCE(ts_sym_for_statement, 7), [ts_aux_sym_token9] = REDUCE(ts_sym_for_statement, 7), - [ts_builtin_sym_end] = REDUCE(ts_sym_for_statement, 7), + [ts_builtin_sym_end] = REDUCE(ts_sym_for_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), }, - [312] = { - [ts_sym__else] = SHIFT(313), + [323] = { + [ts_aux_sym_token2] = SHIFT(300), + }, + + [324] = { + [ts_sym__else] = SHIFT(325), [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), @@ -4926,50 +5032,52 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_if_statement, 5), [ts_aux_sym_token3] = REDUCE(ts_sym_if_statement, 5), [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 5), - [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 5), + [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 5), + [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 5), }, - [313] = { + [325] = { [ts_sym__for] = SHIFT(1), [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(281), - [ts_sym__var] = SHIFT(314), + [ts_sym__if] = SHIFT(291), + [ts_sym__var] = SHIFT(326), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(319), - [ts_sym_expression_statement] = SHIFT(321), + [ts_sym_expression] = SHIFT(331), + [ts_sym_expression_statement] = SHIFT(333), [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(321), + [ts_sym_for_statement] = SHIFT(333), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(321), + [ts_sym_if_statement] = SHIFT(333), [ts_sym_literal] = SHIFT(16), [ts_sym_null] = SHIFT(15), [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(322), - [ts_sym_statement_block] = SHIFT(321), + [ts_sym_statement] = SHIFT(334), + [ts_sym_statement_block] = SHIFT(333), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(321), - [ts_aux_sym_token3] = SHIFT(323), - [ts_aux_sym_token9] = SHIFT(57), + [ts_sym_var_declaration] = SHIFT(333), + [ts_aux_sym_token3] = SHIFT(335), + [ts_aux_sym_token9] = SHIFT(57), + [ts_builtin_sym_error] = SHIFT(339), }, - [314] = { - [ts_sym_assignment] = SHIFT(315), - [ts_sym_identifier] = SHIFT(318), + [326] = { + [ts_sym_assignment] = SHIFT(327), + [ts_sym_identifier] = SHIFT(330), }, - [315] = { - [ts_sym__terminator] = SHIFT(316), - [ts_aux_sym_token11] = SHIFT(317), - [ts_aux_sym_token12] = SHIFT(317), + [327] = { + [ts_sym__terminator] = SHIFT(328), + [ts_aux_sym_token11] = SHIFT(329), + [ts_aux_sym_token12] = SHIFT(329), }, - [316] = { + [328] = { [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), @@ -4982,10 +5090,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_var_declaration, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_var_declaration, 3), [ts_aux_sym_token9] = REDUCE(ts_sym_var_declaration, 3), - [ts_builtin_sym_end] = REDUCE(ts_sym_var_declaration, 3), + [ts_builtin_sym_end] = REDUCE(ts_sym_var_declaration, 3), + [ts_builtin_sym_error] = REDUCE(ts_sym_var_declaration, 3), }, - [317] = { + [329] = { [ts_sym__for] = REDUCE(ts_sym__terminator, 1), [ts_sym__function] = REDUCE(ts_sym__terminator, 1), [ts_sym__if] = REDUCE(ts_sym__terminator, 1), @@ -4998,25 +5107,26 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym__terminator, 1), [ts_aux_sym_token3] = REDUCE(ts_sym__terminator, 1), [ts_aux_sym_token9] = REDUCE(ts_sym__terminator, 1), - [ts_builtin_sym_end] = REDUCE(ts_sym__terminator, 1), + [ts_builtin_sym_end] = REDUCE(ts_sym__terminator, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym__terminator, 1), }, - [318] = { - [ts_sym__terminator] = SHIFT(316), - [ts_aux_sym_token11] = SHIFT(317), - [ts_aux_sym_token12] = SHIFT(317), + [330] = { + [ts_sym__terminator] = SHIFT(328), + [ts_aux_sym_token11] = SHIFT(329), + [ts_aux_sym_token12] = SHIFT(329), [ts_aux_sym_token5] = SHIFT(14), }, - [319] = { - [ts_sym__terminator] = SHIFT(320), + [331] = { + [ts_sym__terminator] = SHIFT(332), [ts_aux_sym_token1] = SHIFT(18), - [ts_aux_sym_token11] = SHIFT(317), - [ts_aux_sym_token12] = SHIFT(317), + [ts_aux_sym_token11] = SHIFT(329), + [ts_aux_sym_token12] = SHIFT(329), [ts_aux_sym_token7] = SHIFT(36), }, - [320] = { + [332] = { [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), @@ -5029,10 +5139,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_expression_statement, 2), [ts_aux_sym_token3] = REDUCE(ts_sym_expression_statement, 2), [ts_aux_sym_token9] = REDUCE(ts_sym_expression_statement, 2), - [ts_builtin_sym_end] = REDUCE(ts_sym_expression_statement, 2), + [ts_builtin_sym_end] = REDUCE(ts_sym_expression_statement, 2), + [ts_builtin_sym_error] = REDUCE(ts_sym_expression_statement, 2), }, - [321] = { + [333] = { [ts_sym__for] = REDUCE(ts_sym_statement, 1), [ts_sym__function] = REDUCE(ts_sym_statement, 1), [ts_sym__if] = REDUCE(ts_sym_statement, 1), @@ -5045,10 +5156,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_statement, 1), [ts_aux_sym_token3] = REDUCE(ts_sym_statement, 1), [ts_aux_sym_token9] = REDUCE(ts_sym_statement, 1), - [ts_builtin_sym_end] = REDUCE(ts_sym_statement, 1), + [ts_builtin_sym_end] = REDUCE(ts_sym_statement, 1), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement, 1), }, - [322] = { + [334] = { [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), @@ -5061,10 +5173,11 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_if_statement, 7), [ts_aux_sym_token3] = REDUCE(ts_sym_if_statement, 7), [ts_aux_sym_token9] = REDUCE(ts_sym_if_statement, 7), - [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 7), + [ts_builtin_sym_end] = REDUCE(ts_sym_if_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_if_statement, 7), }, - [323] = { + [335] = { [ts_sym__for] = SHIFT(7), [ts_sym__function] = SHIFT(3), [ts_sym__if] = SHIFT(23), @@ -5089,18 +5202,18 @@ PARSE_TABLE = { [ts_sym_string] = SHIFT(53), [ts_sym_true] = SHIFT(15), [ts_sym_var_declaration] = SHIFT(38), - [ts_aux_sym_repeat_helper2] = SHIFT(324), + [ts_aux_sym_repeat_helper2] = SHIFT(336), [ts_aux_sym_token3] = SHIFT(51), [ts_aux_sym_token4] = SHIFT(56), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_error] = SHIFT(326), + [ts_builtin_sym_error] = SHIFT(338), }, - [324] = { - [ts_aux_sym_token4] = SHIFT(325), + [336] = { + [ts_aux_sym_token4] = SHIFT(337), }, - [325] = { + [337] = { [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), @@ -5113,20 +5226,30 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token3] = REDUCE(ts_sym_statement_block, 3), [ts_aux_sym_token9] = REDUCE(ts_sym_statement_block, 3), - [ts_builtin_sym_end] = REDUCE(ts_sym_statement_block, 3), + [ts_builtin_sym_end] = REDUCE(ts_sym_statement_block, 3), + [ts_builtin_sym_error] = REDUCE(ts_sym_statement_block, 3), }, - [326] = { - [ts_aux_sym_repeat_helper5] = SHIFT(179), - [ts_aux_sym_token4] = SHIFT(325), - [ts_aux_sym_token6] = SHIFT(129), + [338] = { + [ts_sym__terminator] = SHIFT(35), + [ts_aux_sym_repeat_helper5] = SHIFT(180), + [ts_aux_sym_token11] = SHIFT(32), + [ts_aux_sym_token12] = SHIFT(32), + [ts_aux_sym_token4] = SHIFT(337), + [ts_aux_sym_token6] = SHIFT(130), }, - [327] = { - [ts_aux_sym_token2] = SHIFT(284), + [339] = { + [ts_sym__terminator] = SHIFT(332), + [ts_aux_sym_token11] = SHIFT(329), + [ts_aux_sym_token12] = SHIFT(329), }, - [328] = { + [340] = { + [ts_aux_sym_token2] = SHIFT(294), + }, + + [341] = { [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), @@ -5139,49 +5262,55 @@ PARSE_TABLE = { [ts_sym_true] = REDUCE(ts_sym_for_statement, 7), [ts_aux_sym_token3] = REDUCE(ts_sym_for_statement, 7), [ts_aux_sym_token9] = REDUCE(ts_sym_for_statement, 7), - [ts_builtin_sym_end] = REDUCE(ts_sym_for_statement, 7), + [ts_builtin_sym_end] = REDUCE(ts_sym_for_statement, 7), + [ts_builtin_sym_error] = REDUCE(ts_sym_for_statement, 7), }, - [329] = { + [342] = { + [ts_aux_sym_token2] = SHIFT(290), + }, + + [343] = { [ts_builtin_sym_end] = ACCEPT_INPUT(), }, - [330] = { + [344] = { [ts_sym__for] = SHIFT(1), [ts_sym__function] = SHIFT(3), - [ts_sym__if] = SHIFT(281), - [ts_sym__var] = SHIFT(314), + [ts_sym__if] = SHIFT(291), + [ts_sym__var] = SHIFT(326), [ts_sym_array] = SHIFT(15), [ts_sym_assignment] = SHIFT(16), - [ts_sym_expression] = SHIFT(319), - [ts_sym_expression_statement] = SHIFT(321), + [ts_sym_expression] = SHIFT(331), + [ts_sym_expression_statement] = SHIFT(333), [ts_sym_false] = SHIFT(15), - [ts_sym_for_statement] = SHIFT(321), + [ts_sym_for_statement] = SHIFT(333), [ts_sym_function_call] = SHIFT(16), [ts_sym_function_expression] = SHIFT(16), [ts_sym_identifier] = SHIFT(39), - [ts_sym_if_statement] = SHIFT(321), + [ts_sym_if_statement] = SHIFT(333), [ts_sym_literal] = SHIFT(16), [ts_sym_null] = SHIFT(15), [ts_sym_number] = SHIFT(15), [ts_sym_object] = SHIFT(15), [ts_sym_property_access] = SHIFT(16), - [ts_sym_statement] = SHIFT(330), - [ts_sym_statement_block] = SHIFT(321), + [ts_sym_statement] = SHIFT(344), + [ts_sym_statement_block] = SHIFT(333), [ts_sym_string] = SHIFT(15), [ts_sym_true] = SHIFT(15), - [ts_sym_var_declaration] = SHIFT(321), - [ts_aux_sym_repeat_helper1] = SHIFT(331), - [ts_aux_sym_token3] = SHIFT(323), + [ts_sym_var_declaration] = SHIFT(333), + [ts_aux_sym_repeat_helper1] = SHIFT(345), + [ts_aux_sym_token3] = SHIFT(335), [ts_aux_sym_token9] = SHIFT(57), - [ts_builtin_sym_end] = REDUCE(ts_aux_sym_repeat_helper1, 0), + [ts_builtin_sym_end] = REDUCE(ts_aux_sym_repeat_helper1, 0), + [ts_builtin_sym_error] = SHIFT(339), }, - [331] = { + [345] = { [ts_builtin_sym_end] = REDUCE(ts_aux_sym_repeat_helper1, 2), }, - [332] = { + [346] = { [ts_builtin_sym_end] = REDUCE(ts_sym_program, 1), }, }; diff --git a/spec/runtime/languages/javascript/errors.txt b/spec/runtime/languages/javascript/errors.txt index df6f7e3f..9f2e99e4 100644 --- a/spec/runtime/languages/javascript/errors.txt +++ b/spec/runtime/languages/javascript/errors.txt @@ -10,5 +10,24 @@ moreStuff(); (program (expression_statement (function_call (identifier))) (if_statement (ERROR) - (statement_block (ERROR))) + (statement_block (expression_statement (ERROR)))) (expression_statement (function_call (identifier)))) + +========================================== +recovers from errors in for loops +========================================== +stuff(); +for (var i = 0; *nonsense*; *what*) { + *more-nonsense*; +} +moreStuff(); +--- +(program + (expression_statement (function_call (identifier))) + (for_statement + (var_declaration (assignment (identifier) (number))) + (expression_statement (ERROR)) + (ERROR) + (statement_block (expression_statement (ERROR)))) + (expression_statement (function_call (identifier)))) +