#include "tree_sitter/parser.h" #if defined(__GNUC__) || defined(__clang__) #pragma GCC diagnostic ignored "-Wmissing-field-initializers" #endif #define LANGUAGE_VERSION 14 #define STATE_COUNT 102 #define LARGE_STATE_COUNT 2 #define SYMBOL_COUNT 48 #define ALIAS_COUNT 0 #define TOKEN_COUNT 27 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 3 #define MAX_ALIAS_SEQUENCE_LENGTH 7 #define PRODUCTION_ID_COUNT 4 enum ts_symbol_identifiers { sym_identifier = 1, sym_comment = 2, anon_sym_LPAREN = 3, anon_sym_COLON = 4, anon_sym_RPAREN = 5, sym_star = 6, anon_sym_u25a1 = 7, anon_sym_LBRACK_RBRACK = 8, anon_sym_u03bb = 9, anon_sym_fun = 10, anon_sym_EQ_GT = 11, anon_sym_u21d2 = 12, anon_sym_u220f = 13, anon_sym_forall = 14, anon_sym_COMMA = 15, anon_sym_COLON_EQ = 16, anon_sym_let = 17, anon_sym_in = 18, anon_sym_end = 19, anon_sym_DASH_GT = 20, anon_sym_u2192 = 21, anon_sym_axiom = 22, anon_sym_SEMI = 23, anon_sym_def = 24, sym_post_command = 25, sym_command = 26, sym_program = 27, sym_param_block = 28, sym_square = 29, sym_labs = 30, sym_pabs = 31, sym_term = 32, sym_binding = 33, sym_let = 34, sym_app = 35, sym_arrow = 36, sym_app_term = 37, sym_expr = 38, sym_ascription = 39, sym_axiom = 40, sym_definition = 41, sym_preprocess = 42, aux_sym_program_repeat1 = 43, aux_sym_param_block_repeat1 = 44, aux_sym_labs_repeat1 = 45, aux_sym_let_repeat1 = 46, aux_sym_app_repeat1 = 47, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [sym_identifier] = "identifier", [sym_comment] = "comment", [anon_sym_LPAREN] = "(", [anon_sym_COLON] = ":", [anon_sym_RPAREN] = ")", [sym_star] = "star", [anon_sym_u25a1] = "\u25a1", [anon_sym_LBRACK_RBRACK] = "[]", [anon_sym_u03bb] = "\u03bb", [anon_sym_fun] = "fun", [anon_sym_EQ_GT] = "=>", [anon_sym_u21d2] = "\u21d2", [anon_sym_u220f] = "\u220f", [anon_sym_forall] = "forall", [anon_sym_COMMA] = ",", [anon_sym_COLON_EQ] = ":=", [anon_sym_let] = "let", [anon_sym_in] = "in", [anon_sym_end] = "end", [anon_sym_DASH_GT] = "->", [anon_sym_u2192] = "\u2192", [anon_sym_axiom] = "axiom", [anon_sym_SEMI] = ";", [anon_sym_def] = "def", [sym_post_command] = "post_command", [sym_command] = "command", [sym_program] = "program", [sym_param_block] = "param_block", [sym_square] = "square", [sym_labs] = "labs", [sym_pabs] = "pabs", [sym_term] = "term", [sym_binding] = "binding", [sym_let] = "let", [sym_app] = "app", [sym_arrow] = "arrow", [sym_app_term] = "app_term", [sym_expr] = "expr", [sym_ascription] = "ascription", [sym_axiom] = "axiom", [sym_definition] = "definition", [sym_preprocess] = "preprocess", [aux_sym_program_repeat1] = "program_repeat1", [aux_sym_param_block_repeat1] = "param_block_repeat1", [aux_sym_labs_repeat1] = "labs_repeat1", [aux_sym_let_repeat1] = "let_repeat1", [aux_sym_app_repeat1] = "app_repeat1", }; static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, [sym_identifier] = sym_identifier, [sym_comment] = sym_comment, [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_RPAREN] = anon_sym_RPAREN, [sym_star] = sym_star, [anon_sym_u25a1] = anon_sym_u25a1, [anon_sym_LBRACK_RBRACK] = anon_sym_LBRACK_RBRACK, [anon_sym_u03bb] = anon_sym_u03bb, [anon_sym_fun] = anon_sym_fun, [anon_sym_EQ_GT] = anon_sym_EQ_GT, [anon_sym_u21d2] = anon_sym_u21d2, [anon_sym_u220f] = anon_sym_u220f, [anon_sym_forall] = anon_sym_forall, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_COLON_EQ] = anon_sym_COLON_EQ, [anon_sym_let] = anon_sym_let, [anon_sym_in] = anon_sym_in, [anon_sym_end] = anon_sym_end, [anon_sym_DASH_GT] = anon_sym_DASH_GT, [anon_sym_u2192] = anon_sym_u2192, [anon_sym_axiom] = anon_sym_axiom, [anon_sym_SEMI] = anon_sym_SEMI, [anon_sym_def] = anon_sym_def, [sym_post_command] = sym_post_command, [sym_command] = sym_command, [sym_program] = sym_program, [sym_param_block] = sym_param_block, [sym_square] = sym_square, [sym_labs] = sym_labs, [sym_pabs] = sym_pabs, [sym_term] = sym_term, [sym_binding] = sym_binding, [sym_let] = sym_let, [sym_app] = sym_app, [sym_arrow] = sym_arrow, [sym_app_term] = sym_app_term, [sym_expr] = sym_expr, [sym_ascription] = sym_ascription, [sym_axiom] = sym_axiom, [sym_definition] = sym_definition, [sym_preprocess] = sym_preprocess, [aux_sym_program_repeat1] = aux_sym_program_repeat1, [aux_sym_param_block_repeat1] = aux_sym_param_block_repeat1, [aux_sym_labs_repeat1] = aux_sym_labs_repeat1, [aux_sym_let_repeat1] = aux_sym_let_repeat1, [aux_sym_app_repeat1] = aux_sym_app_repeat1, }; static const TSSymbolMetadata ts_symbol_metadata[] = { [ts_builtin_sym_end] = { .visible = false, .named = true, }, [sym_identifier] = { .visible = true, .named = true, }, [sym_comment] = { .visible = true, .named = true, }, [anon_sym_LPAREN] = { .visible = true, .named = false, }, [anon_sym_COLON] = { .visible = true, .named = false, }, [anon_sym_RPAREN] = { .visible = true, .named = false, }, [sym_star] = { .visible = true, .named = true, }, [anon_sym_u25a1] = { .visible = true, .named = false, }, [anon_sym_LBRACK_RBRACK] = { .visible = true, .named = false, }, [anon_sym_u03bb] = { .visible = true, .named = false, }, [anon_sym_fun] = { .visible = true, .named = false, }, [anon_sym_EQ_GT] = { .visible = true, .named = false, }, [anon_sym_u21d2] = { .visible = true, .named = false, }, [anon_sym_u220f] = { .visible = true, .named = false, }, [anon_sym_forall] = { .visible = true, .named = false, }, [anon_sym_COMMA] = { .visible = true, .named = false, }, [anon_sym_COLON_EQ] = { .visible = true, .named = false, }, [anon_sym_let] = { .visible = true, .named = false, }, [anon_sym_in] = { .visible = true, .named = false, }, [anon_sym_end] = { .visible = true, .named = false, }, [anon_sym_DASH_GT] = { .visible = true, .named = false, }, [anon_sym_u2192] = { .visible = true, .named = false, }, [anon_sym_axiom] = { .visible = true, .named = false, }, [anon_sym_SEMI] = { .visible = true, .named = false, }, [anon_sym_def] = { .visible = true, .named = false, }, [sym_post_command] = { .visible = true, .named = true, }, [sym_command] = { .visible = true, .named = true, }, [sym_program] = { .visible = true, .named = true, }, [sym_param_block] = { .visible = true, .named = true, }, [sym_square] = { .visible = true, .named = true, }, [sym_labs] = { .visible = true, .named = true, }, [sym_pabs] = { .visible = true, .named = true, }, [sym_term] = { .visible = true, .named = true, }, [sym_binding] = { .visible = true, .named = true, }, [sym_let] = { .visible = true, .named = true, }, [sym_app] = { .visible = true, .named = true, }, [sym_arrow] = { .visible = true, .named = true, }, [sym_app_term] = { .visible = true, .named = true, }, [sym_expr] = { .visible = true, .named = true, }, [sym_ascription] = { .visible = true, .named = true, }, [sym_axiom] = { .visible = true, .named = true, }, [sym_definition] = { .visible = true, .named = true, }, [sym_preprocess] = { .visible = true, .named = true, }, [aux_sym_program_repeat1] = { .visible = false, .named = false, }, [aux_sym_param_block_repeat1] = { .visible = false, .named = false, }, [aux_sym_labs_repeat1] = { .visible = false, .named = false, }, [aux_sym_let_repeat1] = { .visible = false, .named = false, }, [aux_sym_app_repeat1] = { .visible = false, .named = false, }, }; enum ts_field_identifiers { field_name = 1, field_param = 2, field_type = 3, }; static const char * const ts_field_names[] = { [0] = NULL, [field_name] = "name", [field_param] = "param", [field_type] = "type", }; static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [1] = {.index = 0, .length = 1}, [2] = {.index = 1, .length = 1}, [3] = {.index = 2, .length = 2}, }; static const TSFieldMapEntry ts_field_map_entries[] = { [0] = {field_type, 1}, [1] = {field_name, 1}, [2] = {field_param, 1}, {field_type, 3}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = {0}, }; static const uint16_t ts_non_terminal_alias_map[] = { 0, }; static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [0] = 0, [1] = 1, [2] = 2, [3] = 3, [4] = 4, [5] = 5, [6] = 6, [7] = 7, [8] = 8, [9] = 9, [10] = 10, [11] = 11, [12] = 12, [13] = 13, [14] = 14, [15] = 15, [16] = 7, [17] = 2, [18] = 9, [19] = 11, [20] = 12, [21] = 4, [22] = 22, [23] = 23, [24] = 24, [25] = 25, [26] = 26, [27] = 27, [28] = 24, [29] = 23, [30] = 30, [31] = 31, [32] = 32, [33] = 33, [34] = 34, [35] = 35, [36] = 36, [37] = 37, [38] = 38, [39] = 39, [40] = 25, [41] = 27, [42] = 26, [43] = 43, [44] = 44, [45] = 45, [46] = 45, [47] = 47, [48] = 48, [49] = 49, [50] = 50, [51] = 51, [52] = 52, [53] = 51, [54] = 54, [55] = 55, [56] = 56, [57] = 57, [58] = 58, [59] = 59, [60] = 60, [61] = 61, [62] = 62, [63] = 63, [64] = 64, [65] = 65, [66] = 66, [67] = 67, [68] = 65, [69] = 69, [70] = 44, [71] = 71, [72] = 66, [73] = 73, [74] = 74, [75] = 75, [76] = 76, [77] = 77, [78] = 73, [79] = 79, [80] = 80, [81] = 81, [82] = 82, [83] = 83, [84] = 84, [85] = 85, [86] = 86, [87] = 87, [88] = 88, [89] = 89, [90] = 90, [91] = 91, [92] = 92, [93] = 93, [94] = 85, [95] = 95, [96] = 96, [97] = 97, [98] = 87, [99] = 99, [100] = 100, [101] = 101, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: if (eof) ADVANCE(33); ADVANCE_MAP( '(', 46, ')', 48, '*', 49, ',', 60, '-', 6, ':', 47, ';', 70, '=', 7, '@', 18, '[', 8, 'a', 32, 'd', 13, 'e', 23, 'f', 27, 'i', 24, 'l', 14, 0x3bb, 52, 0x2192, 68, 0x21d2, 56, 0x220f, 57, 0x25a1, 50, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(0); END_STATE(); case 1: if (lookahead == '\n') SKIP(1); if (lookahead == '-') ADVANCE(72); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') ADVANCE(73); if (lookahead != 0) ADVANCE(74); END_STATE(); case 2: ADVANCE_MAP( '(', 46, ')', 48, '*', 49, ',', 60, '-', 6, ':', 47, ';', 70, '=', 7, '[', 8, 0x2192, 68, 0x21d2, 56, 0x25a1, 50, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(2); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 3: if (lookahead == '(') ADVANCE(46); if (lookahead == '*') ADVANCE(49); if (lookahead == '-') ADVANCE(6); if (lookahead == '[') ADVANCE(8); if (lookahead == 'e') ADVANCE(40); if (lookahead == 0x2192) ADVANCE(68); if (lookahead == 0x25a1) ADVANCE(50); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(3); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 4: ADVANCE_MAP( '(', 46, '*', 49, '-', 5, '[', 8, 'f', 41, 'l', 36, 0x3bb, 52, 0x220f, 57, 0x25a1, 50, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(4); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 5: if (lookahead == '-') ADVANCE(45); END_STATE(); case 6: if (lookahead == '-') ADVANCE(45); if (lookahead == '>') ADVANCE(67); END_STATE(); case 7: if (lookahead == '>') ADVANCE(55); END_STATE(); case 8: if (lookahead == ']') ADVANCE(51); END_STATE(); case 9: if (lookahead == 'a') ADVANCE(21); END_STATE(); case 10: if (lookahead == 'c') ADVANCE(19); END_STATE(); case 11: if (lookahead == 'd') ADVANCE(65); END_STATE(); case 12: if (lookahead == 'd') ADVANCE(15); END_STATE(); case 13: if (lookahead == 'e') ADVANCE(16); END_STATE(); case 14: if (lookahead == 'e') ADVANCE(30); END_STATE(); case 15: if (lookahead == 'e') ADVANCE(75); END_STATE(); case 16: if (lookahead == 'f') ADVANCE(71); END_STATE(); case 17: if (lookahead == 'i') ADVANCE(28); END_STATE(); case 18: if (lookahead == 'i') ADVANCE(25); END_STATE(); case 19: if (lookahead == 'l') ADVANCE(31); END_STATE(); case 20: if (lookahead == 'l') ADVANCE(58); END_STATE(); case 21: if (lookahead == 'l') ADVANCE(20); END_STATE(); case 22: if (lookahead == 'm') ADVANCE(69); END_STATE(); case 23: if (lookahead == 'n') ADVANCE(11); END_STATE(); case 24: if (lookahead == 'n') ADVANCE(64); END_STATE(); case 25: if (lookahead == 'n') ADVANCE(10); END_STATE(); case 26: if (lookahead == 'n') ADVANCE(53); END_STATE(); case 27: if (lookahead == 'o') ADVANCE(29); if (lookahead == 'u') ADVANCE(26); END_STATE(); case 28: if (lookahead == 'o') ADVANCE(22); END_STATE(); case 29: if (lookahead == 'r') ADVANCE(9); END_STATE(); case 30: if (lookahead == 't') ADVANCE(62); END_STATE(); case 31: if (lookahead == 'u') ADVANCE(12); END_STATE(); case 32: if (lookahead == 'x') ADVANCE(17); END_STATE(); case 33: ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 34: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(38); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 35: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'd') ADVANCE(66); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 36: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(43); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 37: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(59); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 38: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(37); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 39: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(54); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 40: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(35); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 41: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(42); if (lookahead == 'u') ADVANCE(39); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 42: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(34); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 43: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(63); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 44: ACCEPT_TOKEN(sym_identifier); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 45: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && lookahead != '\n') ADVANCE(45); END_STATE(); case 46: ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 47: ACCEPT_TOKEN(anon_sym_COLON); if (lookahead == '=') ADVANCE(61); END_STATE(); case 48: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 49: ACCEPT_TOKEN(sym_star); END_STATE(); case 50: ACCEPT_TOKEN(anon_sym_u25a1); END_STATE(); case 51: ACCEPT_TOKEN(anon_sym_LBRACK_RBRACK); END_STATE(); case 52: ACCEPT_TOKEN(anon_sym_u03bb); END_STATE(); case 53: ACCEPT_TOKEN(anon_sym_fun); END_STATE(); case 54: ACCEPT_TOKEN(anon_sym_fun); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 55: ACCEPT_TOKEN(anon_sym_EQ_GT); END_STATE(); case 56: ACCEPT_TOKEN(anon_sym_u21d2); END_STATE(); case 57: ACCEPT_TOKEN(anon_sym_u220f); END_STATE(); case 58: ACCEPT_TOKEN(anon_sym_forall); END_STATE(); case 59: ACCEPT_TOKEN(anon_sym_forall); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 60: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 61: ACCEPT_TOKEN(anon_sym_COLON_EQ); END_STATE(); case 62: ACCEPT_TOKEN(anon_sym_let); END_STATE(); case 63: ACCEPT_TOKEN(anon_sym_let); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 64: ACCEPT_TOKEN(anon_sym_in); END_STATE(); case 65: ACCEPT_TOKEN(anon_sym_end); END_STATE(); case 66: ACCEPT_TOKEN(anon_sym_end); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 67: ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 68: ACCEPT_TOKEN(anon_sym_u2192); END_STATE(); case 69: ACCEPT_TOKEN(anon_sym_axiom); END_STATE(); case 70: ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 71: ACCEPT_TOKEN(anon_sym_def); END_STATE(); case 72: ACCEPT_TOKEN(sym_post_command); if (lookahead == '-') ADVANCE(45); if (lookahead != 0 && lookahead != '\n') ADVANCE(74); END_STATE(); case 73: ACCEPT_TOKEN(sym_post_command); if (lookahead == '-') ADVANCE(72); if (lookahead == '\t' || (0x0b <= lookahead && lookahead <= '\r') || lookahead == ' ') ADVANCE(73); if (lookahead != 0 && (lookahead < '\t' || '\r' < lookahead)) ADVANCE(74); END_STATE(); case 74: ACCEPT_TOKEN(sym_post_command); if (lookahead != 0 && lookahead != '\n') ADVANCE(74); END_STATE(); case 75: ACCEPT_TOKEN(sym_command); END_STATE(); default: return false; } } static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, [1] = {.lex_state = 0}, [2] = {.lex_state = 4}, [3] = {.lex_state = 4}, [4] = {.lex_state = 4}, [5] = {.lex_state = 4}, [6] = {.lex_state = 4}, [7] = {.lex_state = 4}, [8] = {.lex_state = 4}, [9] = {.lex_state = 4}, [10] = {.lex_state = 4}, [11] = {.lex_state = 4}, [12] = {.lex_state = 4}, [13] = {.lex_state = 4}, [14] = {.lex_state = 4}, [15] = {.lex_state = 4}, [16] = {.lex_state = 4}, [17] = {.lex_state = 4}, [18] = {.lex_state = 4}, [19] = {.lex_state = 4}, [20] = {.lex_state = 4}, [21] = {.lex_state = 4}, [22] = {.lex_state = 4}, [23] = {.lex_state = 2}, [24] = {.lex_state = 2}, [25] = {.lex_state = 2}, [26] = {.lex_state = 2}, [27] = {.lex_state = 2}, [28] = {.lex_state = 3}, [29] = {.lex_state = 3}, [30] = {.lex_state = 0}, [31] = {.lex_state = 0}, [32] = {.lex_state = 0}, [33] = {.lex_state = 0}, [34] = {.lex_state = 0}, [35] = {.lex_state = 0}, [36] = {.lex_state = 0}, [37] = {.lex_state = 0}, [38] = {.lex_state = 0}, [39] = {.lex_state = 0}, [40] = {.lex_state = 3}, [41] = {.lex_state = 3}, [42] = {.lex_state = 3}, [43] = {.lex_state = 0}, [44] = {.lex_state = 0}, [45] = {.lex_state = 0}, [46] = {.lex_state = 0}, [47] = {.lex_state = 0}, [48] = {.lex_state = 0}, [49] = {.lex_state = 0}, [50] = {.lex_state = 0}, [51] = {.lex_state = 0}, [52] = {.lex_state = 0}, [53] = {.lex_state = 0}, [54] = {.lex_state = 0}, [55] = {.lex_state = 0}, [56] = {.lex_state = 0}, [57] = {.lex_state = 0}, [58] = {.lex_state = 0}, [59] = {.lex_state = 0}, [60] = {.lex_state = 0}, [61] = {.lex_state = 0}, [62] = {.lex_state = 0}, [63] = {.lex_state = 0}, [64] = {.lex_state = 0}, [65] = {.lex_state = 0}, [66] = {.lex_state = 0}, [67] = {.lex_state = 0}, [68] = {.lex_state = 0}, [69] = {.lex_state = 2}, [70] = {.lex_state = 0}, [71] = {.lex_state = 2}, [72] = {.lex_state = 0}, [73] = {.lex_state = 0}, [74] = {.lex_state = 2}, [75] = {.lex_state = 0}, [76] = {.lex_state = 0}, [77] = {.lex_state = 0}, [78] = {.lex_state = 0}, [79] = {.lex_state = 0}, [80] = {.lex_state = 0}, [81] = {.lex_state = 0}, [82] = {.lex_state = 0}, [83] = {.lex_state = 0}, [84] = {.lex_state = 0}, [85] = {.lex_state = 0}, [86] = {.lex_state = 0}, [87] = {.lex_state = 0}, [88] = {.lex_state = 2}, [89] = {.lex_state = 0}, [90] = {.lex_state = 2}, [91] = {.lex_state = 0}, [92] = {.lex_state = 0}, [93] = {.lex_state = 0}, [94] = {.lex_state = 0}, [95] = {.lex_state = 1}, [96] = {.lex_state = 2}, [97] = {.lex_state = 0}, [98] = {.lex_state = 0}, [99] = {.lex_state = 0}, [100] = {.lex_state = 0}, [101] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [0] = { [ts_builtin_sym_end] = ACTIONS(1), [sym_comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), [anon_sym_RPAREN] = ACTIONS(1), [sym_star] = ACTIONS(1), [anon_sym_u25a1] = ACTIONS(1), [anon_sym_LBRACK_RBRACK] = ACTIONS(1), [anon_sym_u03bb] = ACTIONS(1), [anon_sym_fun] = ACTIONS(1), [anon_sym_EQ_GT] = ACTIONS(1), [anon_sym_u21d2] = ACTIONS(1), [anon_sym_u220f] = ACTIONS(1), [anon_sym_forall] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), [anon_sym_COLON_EQ] = ACTIONS(1), [anon_sym_let] = ACTIONS(1), [anon_sym_in] = ACTIONS(1), [anon_sym_end] = ACTIONS(1), [anon_sym_DASH_GT] = ACTIONS(1), [anon_sym_u2192] = ACTIONS(1), [anon_sym_axiom] = ACTIONS(1), [anon_sym_SEMI] = ACTIONS(1), [anon_sym_def] = ACTIONS(1), [sym_command] = ACTIONS(1), }, [1] = { [sym_program] = STATE(83), [sym_axiom] = STATE(38), [sym_definition] = STATE(38), [sym_preprocess] = STATE(38), [aux_sym_program_repeat1] = STATE(38), [ts_builtin_sym_end] = ACTIONS(5), [sym_comment] = ACTIONS(3), [anon_sym_axiom] = ACTIONS(7), [anon_sym_def] = ACTIONS(9), [sym_command] = ACTIONS(11), }, }; static const uint16_t ts_small_parse_table[] = { [0] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(34), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [54] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(92), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [108] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(85), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [162] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(99), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [216] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(80), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [270] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(32), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [324] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(82), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [378] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(33), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [432] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(54), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [486] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(30), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [540] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(31), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [594] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(91), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [648] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(97), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [702] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(81), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [756] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_let, ACTIONS(31), 1, sym_identifier, ACTIONS(33), 1, anon_sym_LPAREN, ACTIONS(35), 1, sym_star, ACTIONS(39), 1, anon_sym_u03bb, ACTIONS(41), 1, anon_sym_fun, ACTIONS(43), 1, anon_sym_u220f, ACTIONS(45), 1, anon_sym_forall, STATE(32), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(40), 1, sym_square, STATE(70), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(28), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [810] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_let, ACTIONS(31), 1, sym_identifier, ACTIONS(33), 1, anon_sym_LPAREN, ACTIONS(35), 1, sym_star, ACTIONS(39), 1, anon_sym_u03bb, ACTIONS(41), 1, anon_sym_fun, ACTIONS(43), 1, anon_sym_u220f, ACTIONS(45), 1, anon_sym_forall, STATE(34), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(40), 1, sym_square, STATE(70), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(28), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [864] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_let, ACTIONS(31), 1, sym_identifier, ACTIONS(33), 1, anon_sym_LPAREN, ACTIONS(35), 1, sym_star, ACTIONS(39), 1, anon_sym_u03bb, ACTIONS(41), 1, anon_sym_fun, ACTIONS(43), 1, anon_sym_u220f, ACTIONS(45), 1, anon_sym_forall, STATE(33), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(40), 1, sym_square, STATE(70), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(28), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [918] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_let, ACTIONS(31), 1, sym_identifier, ACTIONS(33), 1, anon_sym_LPAREN, ACTIONS(35), 1, sym_star, ACTIONS(39), 1, anon_sym_u03bb, ACTIONS(41), 1, anon_sym_fun, ACTIONS(43), 1, anon_sym_u220f, ACTIONS(45), 1, anon_sym_forall, STATE(30), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(40), 1, sym_square, STATE(70), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(28), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [972] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_let, ACTIONS(31), 1, sym_identifier, ACTIONS(33), 1, anon_sym_LPAREN, ACTIONS(35), 1, sym_star, ACTIONS(39), 1, anon_sym_u03bb, ACTIONS(41), 1, anon_sym_fun, ACTIONS(43), 1, anon_sym_u220f, ACTIONS(45), 1, anon_sym_forall, STATE(31), 1, sym_expr, STATE(37), 1, sym_arrow, STATE(40), 1, sym_square, STATE(70), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(28), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [1026] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(13), 1, sym_identifier, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(21), 1, anon_sym_u03bb, ACTIONS(23), 1, anon_sym_fun, ACTIONS(25), 1, anon_sym_u220f, ACTIONS(27), 1, anon_sym_forall, ACTIONS(29), 1, anon_sym_let, STATE(25), 1, sym_square, STATE(37), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(94), 1, sym_expr, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(24), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [1080] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_let, ACTIONS(31), 1, sym_identifier, ACTIONS(33), 1, anon_sym_LPAREN, ACTIONS(35), 1, sym_star, ACTIONS(39), 1, anon_sym_u03bb, ACTIONS(41), 1, anon_sym_fun, ACTIONS(43), 1, anon_sym_u220f, ACTIONS(45), 1, anon_sym_forall, STATE(37), 1, sym_arrow, STATE(40), 1, sym_square, STATE(70), 1, sym_app_term, STATE(84), 1, sym_expr, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(28), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [1134] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(50), 1, anon_sym_LPAREN, STATE(25), 1, sym_square, ACTIONS(47), 2, sym_identifier, sym_star, ACTIONS(55), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(23), 2, sym_term, aux_sym_app_repeat1, ACTIONS(53), 8, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1166] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, anon_sym_LPAREN, STATE(25), 1, sym_square, ACTIONS(17), 2, sym_identifier, sym_star, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(23), 2, sym_term, aux_sym_app_repeat1, ACTIONS(58), 8, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1198] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(60), 13, sym_identifier, anon_sym_LPAREN, anon_sym_RPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1217] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(62), 13, sym_identifier, anon_sym_LPAREN, anon_sym_RPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1236] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(64), 13, sym_identifier, anon_sym_LPAREN, anon_sym_RPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1255] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, sym_identifier, ACTIONS(33), 1, anon_sym_LPAREN, ACTIONS(35), 1, sym_star, ACTIONS(66), 1, anon_sym_end, STATE(40), 1, sym_square, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, ACTIONS(58), 2, anon_sym_DASH_GT, anon_sym_u2192, STATE(29), 2, sym_term, aux_sym_app_repeat1, [1286] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(68), 1, sym_identifier, ACTIONS(71), 1, anon_sym_LPAREN, ACTIONS(74), 1, sym_star, ACTIONS(80), 1, anon_sym_end, STATE(40), 1, sym_square, ACTIONS(53), 2, anon_sym_DASH_GT, anon_sym_u2192, ACTIONS(77), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(29), 2, sym_term, aux_sym_app_repeat1, [1317] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(82), 9, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_end, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1332] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(84), 9, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_end, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1347] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(86), 9, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_end, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1362] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(88), 9, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_end, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1377] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(90), 9, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_end, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1392] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(92), 9, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_end, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1407] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(94), 9, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_end, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1422] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(96), 9, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_end, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1437] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_axiom, ACTIONS(9), 1, anon_sym_def, ACTIONS(11), 1, sym_command, ACTIONS(98), 1, ts_builtin_sym_end, STATE(43), 4, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1459] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(100), 1, anon_sym_LPAREN, ACTIONS(103), 1, anon_sym_COLON, STATE(39), 2, sym_param_block, aux_sym_labs_repeat1, ACTIONS(105), 4, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, [1479] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(107), 2, sym_identifier, anon_sym_end, ACTIONS(60), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [1495] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(109), 2, sym_identifier, anon_sym_end, ACTIONS(64), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [1511] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(111), 2, sym_identifier, anon_sym_end, ACTIONS(62), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [1527] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(113), 1, ts_builtin_sym_end, ACTIONS(115), 1, anon_sym_axiom, ACTIONS(118), 1, anon_sym_def, ACTIONS(121), 1, sym_command, STATE(43), 4, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1549] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(124), 2, anon_sym_DASH_GT, anon_sym_u2192, ACTIONS(96), 6, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_SEMI, [1565] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(128), 1, anon_sym_COLON, STATE(73), 1, sym_ascription, ACTIONS(130), 2, anon_sym_EQ_GT, anon_sym_u21d2, STATE(39), 2, sym_param_block, aux_sym_labs_repeat1, [1586] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(128), 1, anon_sym_COLON, STATE(78), 1, sym_ascription, ACTIONS(132), 2, anon_sym_EQ_GT, anon_sym_u21d2, STATE(39), 2, sym_param_block, aux_sym_labs_repeat1, [1607] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(134), 1, anon_sym_COLON, ACTIONS(136), 1, anon_sym_COLON_EQ, STATE(101), 1, sym_ascription, STATE(50), 2, sym_param_block, aux_sym_labs_repeat1, [1627] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(140), 1, anon_sym_COLON, ACTIONS(138), 5, anon_sym_LPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, [1641] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(134), 1, anon_sym_COLON, ACTIONS(142), 1, anon_sym_COLON_EQ, STATE(86), 1, sym_ascription, STATE(52), 2, sym_param_block, aux_sym_labs_repeat1, [1661] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(134), 1, anon_sym_COLON, ACTIONS(144), 1, anon_sym_COLON_EQ, STATE(93), 1, sym_ascription, STATE(39), 2, sym_param_block, aux_sym_labs_repeat1, [1681] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(128), 1, anon_sym_COLON, ACTIONS(146), 1, anon_sym_COMMA, STATE(87), 1, sym_ascription, STATE(39), 2, sym_param_block, aux_sym_labs_repeat1, [1701] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(134), 1, anon_sym_COLON, ACTIONS(148), 1, anon_sym_COLON_EQ, STATE(100), 1, sym_ascription, STATE(39), 2, sym_param_block, aux_sym_labs_repeat1, [1721] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(128), 1, anon_sym_COLON, ACTIONS(150), 1, anon_sym_COMMA, STATE(98), 1, sym_ascription, STATE(39), 2, sym_param_block, aux_sym_labs_repeat1, [1741] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(152), 5, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_SEMI, [1752] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(128), 1, anon_sym_COLON, STATE(79), 1, sym_ascription, STATE(56), 2, sym_param_block, aux_sym_labs_repeat1, [1769] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, ACTIONS(128), 1, anon_sym_COLON, STATE(89), 1, sym_ascription, STATE(39), 2, sym_param_block, aux_sym_labs_repeat1, [1786] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(154), 1, anon_sym_LPAREN, ACTIONS(157), 1, anon_sym_in, STATE(57), 2, sym_binding, aux_sym_let_repeat1, [1800] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(159), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [1810] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(161), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [1820] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(163), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [1830] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(165), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [1840] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(167), 1, anon_sym_LPAREN, ACTIONS(169), 1, anon_sym_in, STATE(57), 2, sym_binding, aux_sym_let_repeat1, [1854] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(171), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [1864] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(173), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [1874] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, STATE(51), 2, sym_param_block, aux_sym_labs_repeat1, [1885] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, STATE(45), 2, sym_param_block, aux_sym_labs_repeat1, [1896] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(167), 1, anon_sym_LPAREN, STATE(62), 2, sym_binding, aux_sym_let_repeat1, [1907] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, STATE(53), 2, sym_param_block, aux_sym_labs_repeat1, [1918] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(175), 1, sym_identifier, ACTIONS(177), 1, anon_sym_COLON, STATE(71), 1, aux_sym_param_block_repeat1, [1931] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(96), 1, anon_sym_end, ACTIONS(179), 2, anon_sym_DASH_GT, anon_sym_u2192, [1942] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(181), 1, sym_identifier, ACTIONS(184), 1, anon_sym_COLON, STATE(71), 1, aux_sym_param_block_repeat1, [1955] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(126), 1, anon_sym_LPAREN, STATE(46), 2, sym_param_block, aux_sym_labs_repeat1, [1966] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(186), 2, anon_sym_EQ_GT, anon_sym_u21d2, [1974] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(188), 1, sym_identifier, STATE(69), 1, aux_sym_param_block_repeat1, [1984] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(190), 2, anon_sym_LPAREN, anon_sym_in, [1992] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(192), 2, anon_sym_LPAREN, anon_sym_in, [2000] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(194), 2, anon_sym_LPAREN, anon_sym_in, [2008] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(196), 2, anon_sym_EQ_GT, anon_sym_u21d2, [2016] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(198), 1, anon_sym_SEMI, [2023] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(200), 1, anon_sym_RPAREN, [2030] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(202), 1, anon_sym_RPAREN, [2037] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(204), 1, anon_sym_SEMI, [2044] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(206), 1, ts_builtin_sym_end, [2051] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(208), 1, anon_sym_end, [2058] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(210), 1, anon_sym_RPAREN, [2065] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(148), 1, anon_sym_COLON_EQ, [2072] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(212), 1, anon_sym_COMMA, [2079] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(214), 1, sym_identifier, [2086] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(216), 1, anon_sym_SEMI, [2093] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(218), 1, sym_identifier, [2100] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(220), 1, anon_sym_RPAREN, [2107] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(222), 1, anon_sym_SEMI, [2114] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(224), 1, anon_sym_COLON_EQ, [2121] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(226), 1, anon_sym_RPAREN, [2128] = 2, ACTIONS(228), 1, sym_comment, ACTIONS(230), 1, sym_post_command, [2135] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(232), 1, sym_identifier, [2142] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(234), 1, anon_sym_RPAREN, [2149] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(236), 1, anon_sym_COMMA, [2156] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(238), 1, anon_sym_SEMI, [2163] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(240), 1, anon_sym_COLON_EQ, [2170] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(144), 1, anon_sym_COLON_EQ, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, [SMALL_STATE(3)] = 54, [SMALL_STATE(4)] = 108, [SMALL_STATE(5)] = 162, [SMALL_STATE(6)] = 216, [SMALL_STATE(7)] = 270, [SMALL_STATE(8)] = 324, [SMALL_STATE(9)] = 378, [SMALL_STATE(10)] = 432, [SMALL_STATE(11)] = 486, [SMALL_STATE(12)] = 540, [SMALL_STATE(13)] = 594, [SMALL_STATE(14)] = 648, [SMALL_STATE(15)] = 702, [SMALL_STATE(16)] = 756, [SMALL_STATE(17)] = 810, [SMALL_STATE(18)] = 864, [SMALL_STATE(19)] = 918, [SMALL_STATE(20)] = 972, [SMALL_STATE(21)] = 1026, [SMALL_STATE(22)] = 1080, [SMALL_STATE(23)] = 1134, [SMALL_STATE(24)] = 1166, [SMALL_STATE(25)] = 1198, [SMALL_STATE(26)] = 1217, [SMALL_STATE(27)] = 1236, [SMALL_STATE(28)] = 1255, [SMALL_STATE(29)] = 1286, [SMALL_STATE(30)] = 1317, [SMALL_STATE(31)] = 1332, [SMALL_STATE(32)] = 1347, [SMALL_STATE(33)] = 1362, [SMALL_STATE(34)] = 1377, [SMALL_STATE(35)] = 1392, [SMALL_STATE(36)] = 1407, [SMALL_STATE(37)] = 1422, [SMALL_STATE(38)] = 1437, [SMALL_STATE(39)] = 1459, [SMALL_STATE(40)] = 1479, [SMALL_STATE(41)] = 1495, [SMALL_STATE(42)] = 1511, [SMALL_STATE(43)] = 1527, [SMALL_STATE(44)] = 1549, [SMALL_STATE(45)] = 1565, [SMALL_STATE(46)] = 1586, [SMALL_STATE(47)] = 1607, [SMALL_STATE(48)] = 1627, [SMALL_STATE(49)] = 1641, [SMALL_STATE(50)] = 1661, [SMALL_STATE(51)] = 1681, [SMALL_STATE(52)] = 1701, [SMALL_STATE(53)] = 1721, [SMALL_STATE(54)] = 1741, [SMALL_STATE(55)] = 1752, [SMALL_STATE(56)] = 1769, [SMALL_STATE(57)] = 1786, [SMALL_STATE(58)] = 1800, [SMALL_STATE(59)] = 1810, [SMALL_STATE(60)] = 1820, [SMALL_STATE(61)] = 1830, [SMALL_STATE(62)] = 1840, [SMALL_STATE(63)] = 1854, [SMALL_STATE(64)] = 1864, [SMALL_STATE(65)] = 1874, [SMALL_STATE(66)] = 1885, [SMALL_STATE(67)] = 1896, [SMALL_STATE(68)] = 1907, [SMALL_STATE(69)] = 1918, [SMALL_STATE(70)] = 1931, [SMALL_STATE(71)] = 1942, [SMALL_STATE(72)] = 1955, [SMALL_STATE(73)] = 1966, [SMALL_STATE(74)] = 1974, [SMALL_STATE(75)] = 1984, [SMALL_STATE(76)] = 1992, [SMALL_STATE(77)] = 2000, [SMALL_STATE(78)] = 2008, [SMALL_STATE(79)] = 2016, [SMALL_STATE(80)] = 2023, [SMALL_STATE(81)] = 2030, [SMALL_STATE(82)] = 2037, [SMALL_STATE(83)] = 2044, [SMALL_STATE(84)] = 2051, [SMALL_STATE(85)] = 2058, [SMALL_STATE(86)] = 2065, [SMALL_STATE(87)] = 2072, [SMALL_STATE(88)] = 2079, [SMALL_STATE(89)] = 2086, [SMALL_STATE(90)] = 2093, [SMALL_STATE(91)] = 2100, [SMALL_STATE(92)] = 2107, [SMALL_STATE(93)] = 2114, [SMALL_STATE(94)] = 2121, [SMALL_STATE(95)] = 2128, [SMALL_STATE(96)] = 2135, [SMALL_STATE(97)] = 2142, [SMALL_STATE(98)] = 2149, [SMALL_STATE(99)] = 2156, [SMALL_STATE(100)] = 2163, [SMALL_STATE(101)] = 2170, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 0, 0, 0), [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(40), [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), [47] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(25), [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(4), [53] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), [55] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(26), [58] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_app, 1, 0, 0), [60] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 1, 0, 0), [62] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_square, 1, 0, 0), [64] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 3, 0, 0), [66] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_app, 1, 0, 0), [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(40), [71] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(21), [74] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(40), [77] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(42), [80] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), [82] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_labs, 5, 0, 0), [84] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pabs, 5, 0, 0), [86] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arrow, 3, 0, 0), [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pabs, 4, 0, 0), [90] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_labs, 4, 0, 0), [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let, 5, 0, 0), [94] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_app_term, 1, 0, 0), [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expr, 1, 0, 0), [98] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 1, 0, 0), [100] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_labs_repeat1, 2, 0, 0), SHIFT_REPEAT(74), [103] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_labs_repeat1, 2, 0, 0), [105] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_labs_repeat1, 2, 0, 0), [107] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 1, 0, 0), [109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 3, 0, 0), [111] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_square, 1, 0, 0), [113] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), [115] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(90), [118] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(96), [121] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(95), [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), [126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), [134] = {.entry = {.count = 1, .reusable = false}}, SHIFT(10), [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), [138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_block, 5, 0, 3), [140] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_param_block, 5, 0, 3), [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), [144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), [146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), [150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ascription, 2, 0, 1), [154] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_repeat1, 2, 0, 0), SHIFT_REPEAT(88), [157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_let_repeat1, 2, 0, 0), [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preprocess, 2, 0, 0), [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_definition, 6, 0, 2), [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_axiom, 4, 0, 2), [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_definition, 7, 0, 2), [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), [169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), [171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_axiom, 5, 0, 2), [173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_definition, 5, 0, 2), [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), [181] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_block_repeat1, 2, 0, 0), SHIFT_REPEAT(71), [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_param_block_repeat1, 2, 0, 0), [186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), [188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding, 5, 0, 0), [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding, 6, 0, 0), [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding, 7, 0, 0), [196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), [198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), [200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), [202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), [204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), [206] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), [208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), [210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), [214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), [216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), [220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), [222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), [226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), [228] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), [230] = {.entry = {.count = 1, .reusable = false}}, SHIFT(58), [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), [234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), [236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), [238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), [240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), }; #ifdef __cplusplus extern "C" { #endif #ifdef TREE_SITTER_HIDE_SYMBOLS #define TS_PUBLIC #elif defined(_WIN32) #define TS_PUBLIC __declspec(dllexport) #else #define TS_PUBLIC __attribute__((visibility("default"))) #endif TS_PUBLIC const TSLanguage *tree_sitter_perga(void) { static const TSLanguage language = { .version = LANGUAGE_VERSION, .symbol_count = SYMBOL_COUNT, .alias_count = ALIAS_COUNT, .token_count = TOKEN_COUNT, .external_token_count = EXTERNAL_TOKEN_COUNT, .state_count = STATE_COUNT, .large_state_count = LARGE_STATE_COUNT, .production_id_count = PRODUCTION_ID_COUNT, .field_count = FIELD_COUNT, .max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH, .parse_table = &ts_parse_table[0][0], .small_parse_table = ts_small_parse_table, .small_parse_table_map = ts_small_parse_table_map, .parse_actions = ts_parse_actions, .symbol_names = ts_symbol_names, .field_names = ts_field_names, .field_map_slices = ts_field_map_slices, .field_map_entries = ts_field_map_entries, .symbol_metadata = ts_symbol_metadata, .public_symbol_map = ts_symbol_map, .alias_map = ts_non_terminal_alias_map, .alias_sequences = &ts_alias_sequences[0][0], .lex_modes = ts_lex_modes, .lex_fn = ts_lex, .primary_state_ids = ts_primary_state_ids, }; return &language; } #ifdef __cplusplus } #endif