#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 108 #define LARGE_STATE_COUNT 2 #define SYMBOL_COUNT 50 #define ALIAS_COUNT 0 #define TOKEN_COUNT 28 #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, aux_sym_sort_token1 = 9, anon_sym_u03bb = 10, anon_sym_fun = 11, anon_sym_EQ_GT = 12, anon_sym_u21d2 = 13, anon_sym_u220f = 14, anon_sym_forall = 15, anon_sym_COMMA = 16, anon_sym_COLON_EQ = 17, anon_sym_let = 18, anon_sym_in = 19, anon_sym_end = 20, anon_sym_DASH_GT = 21, anon_sym_u2192 = 22, anon_sym_axiom = 23, anon_sym_SEMI = 24, anon_sym_def = 25, sym_post_command = 26, sym_command = 27, sym_program = 28, sym_param_block = 29, sym_square = 30, sym_sort = 31, sym_labs = 32, sym_pabs = 33, sym_term = 34, sym_binding = 35, sym_let = 36, sym_app = 37, sym_arrow = 38, sym_app_term = 39, sym_expr = 40, sym_ascription = 41, sym_axiom = 42, sym_definition = 43, sym_preprocess = 44, aux_sym_program_repeat1 = 45, aux_sym_param_block_repeat1 = 46, aux_sym_labs_repeat1 = 47, aux_sym_let_repeat1 = 48, aux_sym_app_repeat1 = 49, }; 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] = "[]", [aux_sym_sort_token1] = "sort_token1", [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_sort] = "sort", [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, [aux_sym_sort_token1] = aux_sym_sort_token1, [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_sort] = sym_sort, [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, }, [aux_sym_sort_token1] = { .visible = false, .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_sort] = { .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] = 3, [15] = 15, [16] = 16, [17] = 17, [18] = 9, [19] = 11, [20] = 2, [21] = 13, [22] = 6, [23] = 23, [24] = 24, [25] = 25, [26] = 26, [27] = 27, [28] = 28, [29] = 29, [30] = 30, [31] = 24, [32] = 23, [33] = 33, [34] = 34, [35] = 35, [36] = 36, [37] = 37, [38] = 38, [39] = 39, [40] = 26, [41] = 25, [42] = 42, [43] = 43, [44] = 44, [45] = 28, [46] = 30, [47] = 47, [48] = 27, [49] = 29, [50] = 50, [51] = 51, [52] = 51, [53] = 53, [54] = 54, [55] = 55, [56] = 56, [57] = 57, [58] = 58, [59] = 58, [60] = 60, [61] = 61, [62] = 62, [63] = 63, [64] = 64, [65] = 65, [66] = 66, [67] = 67, [68] = 68, [69] = 69, [70] = 70, [71] = 71, [72] = 72, [73] = 73, [74] = 74, [75] = 75, [76] = 44, [77] = 72, [78] = 73, [79] = 79, [80] = 80, [81] = 81, [82] = 82, [83] = 83, [84] = 83, [85] = 85, [86] = 86, [87] = 87, [88] = 88, [89] = 89, [90] = 90, [91] = 91, [92] = 92, [93] = 93, [94] = 94, [95] = 95, [96] = 96, [97] = 97, [98] = 98, [99] = 99, [100] = 100, [101] = 101, [102] = 102, [103] = 100, [104] = 97, [105] = 105, [106] = 106, [107] = 107, }; 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, ',', 61, '-', 6, ':', 47, ';', 71, '=', 7, '@', 18, '[', 8, 'a', 32, 'd', 13, 'e', 23, 'f', 27, 'i', 24, 'l', 14, 0x3bb, 53, 0x2192, 69, 0x21d2, 57, 0x220f, 58, 0x25a1, 50, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(0); if (('0' <= lookahead && lookahead <= '9') || (0x2080 <= lookahead && lookahead <= 0x2089)) ADVANCE(52); END_STATE(); case 1: if (lookahead == '\n') SKIP(1); if (lookahead == '-') ADVANCE(73); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') ADVANCE(74); if (lookahead != 0) ADVANCE(75); END_STATE(); case 2: ADVANCE_MAP( '(', 46, ')', 48, '*', 49, ',', 61, '-', 6, ':', 47, ';', 71, '=', 7, '[', 8, 0x2192, 69, 0x21d2, 57, 0x25a1, 50, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(2); if (('0' <= lookahead && lookahead <= '9') || (0x2080 <= lookahead && lookahead <= 0x2089)) ADVANCE(52); 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(69); if (lookahead == 0x25a1) ADVANCE(50); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(3); if (('0' <= lookahead && lookahead <= '9') || (0x2080 <= lookahead && lookahead <= 0x2089)) ADVANCE(52); 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, 53, 0x220f, 58, 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(68); END_STATE(); case 7: if (lookahead == '>') ADVANCE(56); 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(66); 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(76); END_STATE(); case 16: if (lookahead == 'f') ADVANCE(72); 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(59); END_STATE(); case 21: if (lookahead == 'l') ADVANCE(20); END_STATE(); case 22: if (lookahead == 'm') ADVANCE(70); END_STATE(); case 23: if (lookahead == 'n') ADVANCE(11); END_STATE(); case 24: if (lookahead == 'n') ADVANCE(65); END_STATE(); case 25: if (lookahead == 'n') ADVANCE(10); END_STATE(); case 26: if (lookahead == 'n') ADVANCE(54); 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(63); 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(67); 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(60); 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(55); 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(64); 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(62); 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(aux_sym_sort_token1); if (('0' <= lookahead && lookahead <= '9') || (0x2080 <= lookahead && lookahead <= 0x2089)) ADVANCE(52); END_STATE(); case 53: ACCEPT_TOKEN(anon_sym_u03bb); END_STATE(); case 54: ACCEPT_TOKEN(anon_sym_fun); END_STATE(); case 55: ACCEPT_TOKEN(anon_sym_fun); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 56: ACCEPT_TOKEN(anon_sym_EQ_GT); END_STATE(); case 57: ACCEPT_TOKEN(anon_sym_u21d2); END_STATE(); case 58: ACCEPT_TOKEN(anon_sym_u220f); END_STATE(); case 59: ACCEPT_TOKEN(anon_sym_forall); END_STATE(); case 60: ACCEPT_TOKEN(anon_sym_forall); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 61: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 62: ACCEPT_TOKEN(anon_sym_COLON_EQ); END_STATE(); case 63: ACCEPT_TOKEN(anon_sym_let); END_STATE(); case 64: ACCEPT_TOKEN(anon_sym_let); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 65: ACCEPT_TOKEN(anon_sym_in); END_STATE(); case 66: ACCEPT_TOKEN(anon_sym_end); END_STATE(); case 67: ACCEPT_TOKEN(anon_sym_end); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(44); END_STATE(); case 68: ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 69: ACCEPT_TOKEN(anon_sym_u2192); END_STATE(); case 70: ACCEPT_TOKEN(anon_sym_axiom); END_STATE(); case 71: ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 72: ACCEPT_TOKEN(anon_sym_def); END_STATE(); case 73: ACCEPT_TOKEN(sym_post_command); if (lookahead == '-') ADVANCE(45); if (lookahead != 0 && lookahead != '\n') ADVANCE(75); END_STATE(); case 74: ACCEPT_TOKEN(sym_post_command); if (lookahead == '-') ADVANCE(73); if (lookahead == '\t' || (0x0b <= lookahead && lookahead <= '\r') || lookahead == ' ') ADVANCE(74); if (lookahead != 0 && (lookahead < '\t' || '\r' < lookahead)) ADVANCE(75); END_STATE(); case 75: ACCEPT_TOKEN(sym_post_command); if (lookahead != 0 && lookahead != '\n') ADVANCE(75); END_STATE(); case 76: 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 = 2}, [29] = {.lex_state = 2}, [30] = {.lex_state = 2}, [31] = {.lex_state = 3}, [32] = {.lex_state = 3}, [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 = 0}, [43] = {.lex_state = 0}, [44] = {.lex_state = 0}, [45] = {.lex_state = 3}, [46] = {.lex_state = 3}, [47] = {.lex_state = 0}, [48] = {.lex_state = 3}, [49] = {.lex_state = 3}, [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 = 0}, [70] = {.lex_state = 0}, [71] = {.lex_state = 2}, [72] = {.lex_state = 0}, [73] = {.lex_state = 0}, [74] = {.lex_state = 0}, [75] = {.lex_state = 2}, [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 = 2}, [83] = {.lex_state = 0}, [84] = {.lex_state = 0}, [85] = {.lex_state = 0}, [86] = {.lex_state = 0}, [87] = {.lex_state = 0}, [88] = {.lex_state = 0}, [89] = {.lex_state = 0}, [90] = {.lex_state = 0}, [91] = {.lex_state = 2}, [92] = {.lex_state = 0}, [93] = {.lex_state = 0}, [94] = {.lex_state = 2}, [95] = {.lex_state = 0}, [96] = {.lex_state = 2}, [97] = {.lex_state = 0}, [98] = {.lex_state = 0}, [99] = {.lex_state = 0}, [100] = {.lex_state = 0}, [101] = {.lex_state = 1}, [102] = {.lex_state = 0}, [103] = {.lex_state = 0}, [104] = {.lex_state = 0}, [105] = {.lex_state = 0}, [106] = {.lex_state = 0}, [107] = {.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), [aux_sym_sort_token1] = 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(99), [sym_axiom] = STATE(43), [sym_definition] = STATE(43), [sym_preprocess] = STATE(43), [aux_sym_program_repeat1] = STATE(43), [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] = 17, 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(28), 1, sym_sort, STATE(35), 1, sym_expr, STATE(38), 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, [57] = 17, 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_expr, STATE(38), 1, sym_arrow, STATE(41), 1, sym_square, STATE(45), 1, sym_sort, STATE(76), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(31), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [114] = 17, 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(28), 1, sym_sort, STATE(38), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(62), 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, [171] = 17, 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(28), 1, sym_sort, STATE(38), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(86), 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, [228] = 17, 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(28), 1, sym_sort, STATE(38), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(103), 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, [285] = 17, 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(28), 1, sym_sort, STATE(38), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(90), 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, [342] = 17, 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(28), 1, sym_sort, STATE(38), 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, [399] = 17, 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(28), 1, sym_sort, STATE(33), 1, sym_expr, STATE(38), 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, [456] = 17, 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(28), 1, sym_sort, STATE(38), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(98), 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, [513] = 17, 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(28), 1, sym_sort, STATE(34), 1, sym_expr, STATE(38), 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, [570] = 17, 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(38), 1, sym_arrow, STATE(41), 1, sym_square, STATE(45), 1, sym_sort, STATE(76), 1, sym_app_term, STATE(107), 1, sym_expr, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(31), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [627] = 17, 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(28), 1, sym_sort, STATE(38), 1, sym_arrow, STATE(39), 1, sym_expr, 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, [684] = 17, 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(28), 1, sym_sort, STATE(37), 1, sym_expr, STATE(38), 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, [741] = 17, 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(28), 1, sym_sort, STATE(38), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(93), 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, [798] = 17, 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(28), 1, sym_sort, STATE(38), 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, [855] = 17, 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(28), 1, sym_sort, STATE(38), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(106), 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, [912] = 17, 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(38), 1, sym_arrow, STATE(41), 1, sym_square, STATE(45), 1, sym_sort, STATE(76), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(31), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [969] = 17, 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(38), 1, sym_arrow, STATE(41), 1, sym_square, STATE(45), 1, sym_sort, STATE(76), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(31), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [1026] = 17, 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(35), 1, sym_expr, STATE(38), 1, sym_arrow, STATE(41), 1, sym_square, STATE(45), 1, sym_sort, STATE(76), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(31), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [1083] = 17, 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(38), 1, sym_arrow, STATE(39), 1, sym_expr, STATE(41), 1, sym_square, STATE(45), 1, sym_sort, STATE(76), 1, sym_app_term, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(31), 2, sym_term, aux_sym_app_repeat1, STATE(36), 4, sym_labs, sym_pabs, sym_let, sym_app, [1140] = 17, 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(28), 1, sym_sort, STATE(38), 1, sym_arrow, STATE(44), 1, sym_app_term, STATE(100), 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, [1197] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, sym_identifier, ACTIONS(50), 1, anon_sym_LPAREN, ACTIONS(55), 1, sym_star, STATE(25), 1, sym_square, STATE(28), 1, sym_sort, ACTIONS(58), 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, [1234] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, anon_sym_LPAREN, ACTIONS(17), 1, sym_star, ACTIONS(61), 1, sym_identifier, STATE(25), 1, sym_square, STATE(28), 1, sym_sort, ACTIONS(19), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(23), 2, sym_term, aux_sym_app_repeat1, ACTIONS(63), 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, [1271] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(67), 1, aux_sym_sort_token1, ACTIONS(65), 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, [1293] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(69), 14, sym_identifier, anon_sym_LPAREN, anon_sym_RPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, aux_sym_sort_token1, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, anon_sym_SEMI, [1313] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(71), 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, [1332] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(73), 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, [1351] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(75), 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, [1370] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(65), 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, [1389] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, sym_identifier, ACTIONS(33), 1, anon_sym_LPAREN, ACTIONS(35), 1, sym_star, ACTIONS(77), 1, anon_sym_end, STATE(41), 1, sym_square, STATE(45), 1, sym_sort, ACTIONS(37), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, ACTIONS(63), 2, anon_sym_DASH_GT, anon_sym_u2192, STATE(32), 2, sym_term, aux_sym_app_repeat1, [1423] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(79), 1, sym_identifier, ACTIONS(82), 1, anon_sym_LPAREN, ACTIONS(85), 1, sym_star, ACTIONS(91), 1, anon_sym_end, STATE(41), 1, sym_square, STATE(45), 1, sym_sort, ACTIONS(53), 2, anon_sym_DASH_GT, anon_sym_u2192, ACTIONS(88), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(32), 2, sym_term, aux_sym_app_repeat1, [1457] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(93), 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, [1472] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(95), 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, [1487] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(97), 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, [1502] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(99), 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, [1517] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(101), 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, [1532] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(103), 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, [1547] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(105), 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, [1562] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(107), 2, sym_identifier, anon_sym_end, ACTIONS(69), 7, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, aux_sym_sort_token1, anon_sym_DASH_GT, anon_sym_u2192, [1579] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(111), 1, aux_sym_sort_token1, ACTIONS(109), 2, sym_identifier, anon_sym_end, ACTIONS(65), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [1598] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(113), 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, [1613] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_axiom, ACTIONS(9), 1, anon_sym_def, ACTIONS(11), 1, sym_command, ACTIONS(115), 1, ts_builtin_sym_end, STATE(50), 4, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1635] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(117), 2, anon_sym_DASH_GT, anon_sym_u2192, ACTIONS(103), 6, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_SEMI, [1651] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(119), 2, sym_identifier, anon_sym_end, ACTIONS(73), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [1667] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(109), 2, sym_identifier, anon_sym_end, ACTIONS(65), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [1683] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(121), 1, anon_sym_LPAREN, ACTIONS(124), 1, anon_sym_COLON, STATE(47), 2, sym_param_block, aux_sym_labs_repeat1, ACTIONS(126), 4, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, [1703] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(128), 2, sym_identifier, anon_sym_end, ACTIONS(71), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [1719] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(130), 2, sym_identifier, anon_sym_end, ACTIONS(75), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [1735] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(132), 1, ts_builtin_sym_end, ACTIONS(134), 1, anon_sym_axiom, ACTIONS(137), 1, anon_sym_def, ACTIONS(140), 1, sym_command, STATE(50), 4, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1757] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(145), 1, anon_sym_COLON, STATE(83), 1, sym_ascription, ACTIONS(147), 2, anon_sym_EQ_GT, anon_sym_u21d2, STATE(47), 2, sym_param_block, aux_sym_labs_repeat1, [1778] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(145), 1, anon_sym_COLON, STATE(84), 1, sym_ascription, ACTIONS(149), 2, anon_sym_EQ_GT, anon_sym_u21d2, STATE(47), 2, sym_param_block, aux_sym_labs_repeat1, [1799] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(151), 1, anon_sym_COLON, ACTIONS(153), 1, anon_sym_COLON_EQ, STATE(87), 1, sym_ascription, STATE(56), 2, sym_param_block, aux_sym_labs_repeat1, [1819] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(157), 1, anon_sym_COLON, ACTIONS(155), 5, anon_sym_LPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, [1833] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(151), 1, anon_sym_COLON, ACTIONS(159), 1, anon_sym_COLON_EQ, STATE(102), 1, sym_ascription, STATE(57), 2, sym_param_block, aux_sym_labs_repeat1, [1853] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(151), 1, anon_sym_COLON, ACTIONS(161), 1, anon_sym_COLON_EQ, STATE(89), 1, sym_ascription, STATE(47), 2, sym_param_block, aux_sym_labs_repeat1, [1873] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(151), 1, anon_sym_COLON, ACTIONS(163), 1, anon_sym_COLON_EQ, STATE(95), 1, sym_ascription, STATE(47), 2, sym_param_block, aux_sym_labs_repeat1, [1893] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(145), 1, anon_sym_COLON, ACTIONS(165), 1, anon_sym_COMMA, STATE(97), 1, sym_ascription, STATE(47), 2, sym_param_block, aux_sym_labs_repeat1, [1913] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(145), 1, anon_sym_COLON, ACTIONS(167), 1, anon_sym_COMMA, STATE(104), 1, sym_ascription, STATE(47), 2, sym_param_block, aux_sym_labs_repeat1, [1933] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(145), 1, anon_sym_COLON, STATE(88), 1, sym_ascription, STATE(61), 2, sym_param_block, aux_sym_labs_repeat1, [1950] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, ACTIONS(145), 1, anon_sym_COLON, STATE(105), 1, sym_ascription, STATE(47), 2, sym_param_block, aux_sym_labs_repeat1, [1967] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(169), 5, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_SEMI, [1978] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(171), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [1988] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(173), 1, anon_sym_LPAREN, ACTIONS(175), 1, anon_sym_in, STATE(68), 2, sym_binding, aux_sym_let_repeat1, [2002] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(177), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [2012] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(179), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [2022] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(181), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [2032] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(183), 1, anon_sym_LPAREN, ACTIONS(186), 1, anon_sym_in, STATE(68), 2, sym_binding, aux_sym_let_repeat1, [2046] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(188), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [2056] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(190), 4, ts_builtin_sym_end, anon_sym_axiom, anon_sym_def, sym_command, [2066] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(192), 1, sym_identifier, ACTIONS(195), 1, anon_sym_COLON, STATE(71), 1, aux_sym_param_block_repeat1, [2079] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, STATE(51), 2, sym_param_block, aux_sym_labs_repeat1, [2090] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, STATE(58), 2, sym_param_block, aux_sym_labs_repeat1, [2101] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(173), 1, anon_sym_LPAREN, STATE(64), 2, sym_binding, aux_sym_let_repeat1, [2112] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(197), 1, sym_identifier, ACTIONS(199), 1, anon_sym_COLON, STATE(71), 1, aux_sym_param_block_repeat1, [2125] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(103), 1, anon_sym_end, ACTIONS(201), 2, anon_sym_DASH_GT, anon_sym_u2192, [2136] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, STATE(52), 2, sym_param_block, aux_sym_labs_repeat1, [2147] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(143), 1, anon_sym_LPAREN, STATE(59), 2, sym_param_block, aux_sym_labs_repeat1, [2158] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(203), 2, anon_sym_LPAREN, anon_sym_in, [2166] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(205), 2, anon_sym_LPAREN, anon_sym_in, [2174] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(207), 2, anon_sym_LPAREN, anon_sym_in, [2182] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(209), 1, sym_identifier, STATE(75), 1, aux_sym_param_block_repeat1, [2192] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(211), 2, anon_sym_EQ_GT, anon_sym_u21d2, [2200] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(213), 2, anon_sym_EQ_GT, anon_sym_u21d2, [2208] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(215), 1, anon_sym_RPAREN, [2215] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(217), 1, anon_sym_SEMI, [2222] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(161), 1, anon_sym_COLON_EQ, [2229] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(219), 1, anon_sym_SEMI, [2236] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(221), 1, anon_sym_COLON_EQ, [2243] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(223), 1, anon_sym_SEMI, [2250] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(225), 1, sym_identifier, [2257] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(227), 1, anon_sym_RPAREN, [2264] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(229), 1, anon_sym_RPAREN, [2271] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(231), 1, sym_identifier, [2278] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(233), 1, anon_sym_COLON_EQ, [2285] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(235), 1, sym_identifier, [2292] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(237), 1, anon_sym_COMMA, [2299] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(239), 1, anon_sym_SEMI, [2306] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(241), 1, ts_builtin_sym_end, [2313] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(243), 1, anon_sym_RPAREN, [2320] = 2, ACTIONS(245), 1, sym_comment, ACTIONS(247), 1, sym_post_command, [2327] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(163), 1, anon_sym_COLON_EQ, [2334] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(249), 1, anon_sym_RPAREN, [2341] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(251), 1, anon_sym_COMMA, [2348] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(253), 1, anon_sym_SEMI, [2355] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(255), 1, anon_sym_RPAREN, [2362] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(257), 1, anon_sym_end, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, [SMALL_STATE(3)] = 57, [SMALL_STATE(4)] = 114, [SMALL_STATE(5)] = 171, [SMALL_STATE(6)] = 228, [SMALL_STATE(7)] = 285, [SMALL_STATE(8)] = 342, [SMALL_STATE(9)] = 399, [SMALL_STATE(10)] = 456, [SMALL_STATE(11)] = 513, [SMALL_STATE(12)] = 570, [SMALL_STATE(13)] = 627, [SMALL_STATE(14)] = 684, [SMALL_STATE(15)] = 741, [SMALL_STATE(16)] = 798, [SMALL_STATE(17)] = 855, [SMALL_STATE(18)] = 912, [SMALL_STATE(19)] = 969, [SMALL_STATE(20)] = 1026, [SMALL_STATE(21)] = 1083, [SMALL_STATE(22)] = 1140, [SMALL_STATE(23)] = 1197, [SMALL_STATE(24)] = 1234, [SMALL_STATE(25)] = 1271, [SMALL_STATE(26)] = 1293, [SMALL_STATE(27)] = 1313, [SMALL_STATE(28)] = 1332, [SMALL_STATE(29)] = 1351, [SMALL_STATE(30)] = 1370, [SMALL_STATE(31)] = 1389, [SMALL_STATE(32)] = 1423, [SMALL_STATE(33)] = 1457, [SMALL_STATE(34)] = 1472, [SMALL_STATE(35)] = 1487, [SMALL_STATE(36)] = 1502, [SMALL_STATE(37)] = 1517, [SMALL_STATE(38)] = 1532, [SMALL_STATE(39)] = 1547, [SMALL_STATE(40)] = 1562, [SMALL_STATE(41)] = 1579, [SMALL_STATE(42)] = 1598, [SMALL_STATE(43)] = 1613, [SMALL_STATE(44)] = 1635, [SMALL_STATE(45)] = 1651, [SMALL_STATE(46)] = 1667, [SMALL_STATE(47)] = 1683, [SMALL_STATE(48)] = 1703, [SMALL_STATE(49)] = 1719, [SMALL_STATE(50)] = 1735, [SMALL_STATE(51)] = 1757, [SMALL_STATE(52)] = 1778, [SMALL_STATE(53)] = 1799, [SMALL_STATE(54)] = 1819, [SMALL_STATE(55)] = 1833, [SMALL_STATE(56)] = 1853, [SMALL_STATE(57)] = 1873, [SMALL_STATE(58)] = 1893, [SMALL_STATE(59)] = 1913, [SMALL_STATE(60)] = 1933, [SMALL_STATE(61)] = 1950, [SMALL_STATE(62)] = 1967, [SMALL_STATE(63)] = 1978, [SMALL_STATE(64)] = 1988, [SMALL_STATE(65)] = 2002, [SMALL_STATE(66)] = 2012, [SMALL_STATE(67)] = 2022, [SMALL_STATE(68)] = 2032, [SMALL_STATE(69)] = 2046, [SMALL_STATE(70)] = 2056, [SMALL_STATE(71)] = 2066, [SMALL_STATE(72)] = 2079, [SMALL_STATE(73)] = 2090, [SMALL_STATE(74)] = 2101, [SMALL_STATE(75)] = 2112, [SMALL_STATE(76)] = 2125, [SMALL_STATE(77)] = 2136, [SMALL_STATE(78)] = 2147, [SMALL_STATE(79)] = 2158, [SMALL_STATE(80)] = 2166, [SMALL_STATE(81)] = 2174, [SMALL_STATE(82)] = 2182, [SMALL_STATE(83)] = 2192, [SMALL_STATE(84)] = 2200, [SMALL_STATE(85)] = 2208, [SMALL_STATE(86)] = 2215, [SMALL_STATE(87)] = 2222, [SMALL_STATE(88)] = 2229, [SMALL_STATE(89)] = 2236, [SMALL_STATE(90)] = 2243, [SMALL_STATE(91)] = 2250, [SMALL_STATE(92)] = 2257, [SMALL_STATE(93)] = 2264, [SMALL_STATE(94)] = 2271, [SMALL_STATE(95)] = 2278, [SMALL_STATE(96)] = 2285, [SMALL_STATE(97)] = 2292, [SMALL_STATE(98)] = 2299, [SMALL_STATE(99)] = 2306, [SMALL_STATE(100)] = 2313, [SMALL_STATE(101)] = 2320, [SMALL_STATE(102)] = 2327, [SMALL_STATE(103)] = 2334, [SMALL_STATE(104)] = 2341, [SMALL_STATE(105)] = 2348, [SMALL_STATE(106)] = 2355, [SMALL_STATE(107)] = 2362, }; 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(96), [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28), [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74), [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45), [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77), [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78), [47] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(28), [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(6), [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(30), [58] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(26), [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), [63] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_app, 1, 0, 0), [65] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sort, 1, 0, 0), [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), [69] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_square, 1, 0, 0), [71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sort, 2, 0, 0), [73] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 1, 0, 0), [75] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 3, 0, 0), [77] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_app, 1, 0, 0), [79] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(45), [82] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(22), [85] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(46), [88] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(40), [91] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), [93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arrow, 3, 0, 0), [95] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_labs, 4, 0, 0), [97] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pabs, 4, 0, 0), [99] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_app_term, 1, 0, 0), [101] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pabs, 5, 0, 0), [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expr, 1, 0, 0), [105] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_labs, 5, 0, 0), [107] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_square, 1, 0, 0), [109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sort, 1, 0, 0), [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), [113] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let, 5, 0, 0), [115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 1, 0, 0), [117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), [119] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 1, 0, 0), [121] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_labs_repeat1, 2, 0, 0), SHIFT_REPEAT(82), [124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_labs_repeat1, 2, 0, 0), [126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_labs_repeat1, 2, 0, 0), [128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sort, 2, 0, 0), [130] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 3, 0, 0), [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), [134] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(96), [137] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(91), [140] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(101), [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), [147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4), [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_block, 5, 0, 3), [157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_param_block, 5, 0, 3), [159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), [161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), [163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), [165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ascription, 2, 0, 1), [171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_definition, 6, 0, 2), [173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_definition, 7, 0, 2), [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preprocess, 2, 0, 0), [181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_definition, 5, 0, 2), [183] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_repeat1, 2, 0, 0), SHIFT_REPEAT(94), [186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_let_repeat1, 2, 0, 0), [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_axiom, 5, 0, 2), [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_axiom, 4, 0, 2), [192] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_block_repeat1, 2, 0, 0), SHIFT_REPEAT(71), [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_param_block_repeat1, 2, 0, 0), [197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), [199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), [201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding, 5, 0, 0), [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding, 6, 0, 0), [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding, 7, 0, 0), [209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), [213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), [219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), [221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), [223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), [225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), [227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), [241] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), [243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), [245] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), [247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), }; #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