#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 149 #define LARGE_STATE_COUNT 2 #define SYMBOL_COUNT 55 #define ALIAS_COUNT 0 #define TOKEN_COUNT 31 #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_section = 3, anon_sym_end = 4, anon_sym_variable = 5, anon_sym_hypothesis = 6, anon_sym_SEMI = 7, anon_sym_LPAREN = 8, anon_sym_COLON = 9, anon_sym_RPAREN = 10, sym_star = 11, anon_sym_u25a1 = 12, anon_sym_LBRACK_RBRACK = 13, aux_sym_sort_token1 = 14, anon_sym_u03bb = 15, anon_sym_fun = 16, anon_sym_EQ_GT = 17, anon_sym_u21d2 = 18, anon_sym_u220f = 19, anon_sym_forall = 20, anon_sym_COMMA = 21, anon_sym_COLON_EQ = 22, anon_sym_let = 23, anon_sym_in = 24, anon_sym_DASH_GT = 25, anon_sym_u2192 = 26, anon_sym_axiom = 27, anon_sym_def = 28, sym_post_command = 29, sym_command = 30, sym_program = 31, sym_section = 32, sym_variable = 33, sym_param_block = 34, sym_square = 35, sym_sort = 36, sym_labs = 37, sym_pabs = 38, sym_term = 39, sym_binding = 40, sym_let = 41, sym_app = 42, sym_arrow = 43, sym_app_term = 44, sym_expr = 45, sym_ascription = 46, sym_axiom = 47, sym_definition = 48, sym_preprocess = 49, aux_sym_program_repeat1 = 50, aux_sym_variable_repeat1 = 51, aux_sym_param_block_repeat1 = 52, aux_sym_let_repeat1 = 53, aux_sym_app_repeat1 = 54, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [sym_identifier] = "identifier", [sym_comment] = "comment", [anon_sym_section] = "section", [anon_sym_end] = "end", [anon_sym_variable] = "variable", [anon_sym_hypothesis] = "hypothesis", [anon_sym_SEMI] = ";", [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_DASH_GT] = "->", [anon_sym_u2192] = "\u2192", [anon_sym_axiom] = "axiom", [anon_sym_def] = "def", [sym_post_command] = "post_command", [sym_command] = "command", [sym_program] = "program", [sym_section] = "section", [sym_variable] = "variable", [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_variable_repeat1] = "variable_repeat1", [aux_sym_param_block_repeat1] = "param_block_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_section] = anon_sym_section, [anon_sym_end] = anon_sym_end, [anon_sym_variable] = anon_sym_variable, [anon_sym_hypothesis] = anon_sym_hypothesis, [anon_sym_SEMI] = anon_sym_SEMI, [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_DASH_GT] = anon_sym_DASH_GT, [anon_sym_u2192] = anon_sym_u2192, [anon_sym_axiom] = anon_sym_axiom, [anon_sym_def] = anon_sym_def, [sym_post_command] = sym_post_command, [sym_command] = sym_command, [sym_program] = sym_program, [sym_section] = sym_section, [sym_variable] = sym_variable, [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_variable_repeat1] = aux_sym_variable_repeat1, [aux_sym_param_block_repeat1] = aux_sym_param_block_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_section] = { .visible = true, .named = false, }, [anon_sym_end] = { .visible = true, .named = false, }, [anon_sym_variable] = { .visible = true, .named = false, }, [anon_sym_hypothesis] = { .visible = true, .named = false, }, [anon_sym_SEMI] = { .visible = true, .named = false, }, [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_DASH_GT] = { .visible = true, .named = false, }, [anon_sym_u2192] = { .visible = true, .named = false, }, [anon_sym_axiom] = { .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_section] = { .visible = true, .named = true, }, [sym_variable] = { .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_variable_repeat1] = { .visible = false, .named = false, }, [aux_sym_param_block_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] = 6, [17] = 11, [18] = 8, [19] = 9, [20] = 12, [21] = 21, [22] = 3, [23] = 5, [24] = 7, [25] = 10, [26] = 26, [27] = 27, [28] = 28, [29] = 29, [30] = 30, [31] = 31, [32] = 32, [33] = 33, [34] = 34, [35] = 35, [36] = 34, [37] = 31, [38] = 38, [39] = 30, [40] = 26, [41] = 27, [42] = 42, [43] = 43, [44] = 44, [45] = 45, [46] = 29, [47] = 47, [48] = 28, [49] = 49, [50] = 50, [51] = 51, [52] = 52, [53] = 53, [54] = 32, [55] = 38, [56] = 33, [57] = 35, [58] = 58, [59] = 59, [60] = 60, [61] = 59, [62] = 62, [63] = 63, [64] = 64, [65] = 65, [66] = 66, [67] = 66, [68] = 62, [69] = 69, [70] = 58, [71] = 71, [72] = 64, [73] = 65, [74] = 60, [75] = 69, [76] = 71, [77] = 77, [78] = 78, [79] = 79, [80] = 80, [81] = 77, [82] = 82, [83] = 80, [84] = 79, [85] = 85, [86] = 86, [87] = 87, [88] = 85, [89] = 86, [90] = 90, [91] = 91, [92] = 90, [93] = 93, [94] = 94, [95] = 95, [96] = 96, [97] = 97, [98] = 53, [99] = 99, [100] = 97, [101] = 101, [102] = 95, [103] = 94, [104] = 104, [105] = 105, [106] = 106, [107] = 107, [108] = 108, [109] = 104, [110] = 110, [111] = 111, [112] = 112, [113] = 113, [114] = 114, [115] = 115, [116] = 116, [117] = 117, [118] = 118, [119] = 119, [120] = 120, [121] = 121, [122] = 122, [123] = 120, [124] = 124, [125] = 125, [126] = 126, [127] = 127, [128] = 111, [129] = 125, [130] = 130, [131] = 121, [132] = 132, [133] = 133, [134] = 132, [135] = 122, [136] = 136, [137] = 137, [138] = 116, [139] = 119, [140] = 115, [141] = 141, [142] = 142, [143] = 136, [144] = 118, [145] = 113, [146] = 130, [147] = 110, [148] = 124, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: if (eof) ADVANCE(55); ADVANCE_MAP( '(', 74, ')', 76, '*', 77, ',', 89, '-', 6, ':', 75, ';', 73, '=', 7, '@', 27, '[', 8, 'a', 53, 'd', 17, 'e', 35, 'f', 40, 'h', 54, 'i', 36, 'l', 18, 's', 19, 'v', 10, 0x3bb, 81, 0x2192, 95, 0x21d2, 85, 0x220f, 86, 0x25a1, 78, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(0); if (('0' <= lookahead && lookahead <= '9') || (0x2080 <= lookahead && lookahead <= 0x2089)) ADVANCE(80); END_STATE(); case 1: if (lookahead == '\n') SKIP(1); if (lookahead == '-') ADVANCE(98); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') ADVANCE(99); if (lookahead != 0) ADVANCE(100); END_STATE(); case 2: ADVANCE_MAP( '(', 74, ')', 76, '*', 77, ',', 89, '-', 6, ':', 75, ';', 73, '=', 7, '[', 8, 0x2192, 95, 0x21d2, 85, 0x25a1, 78, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(2); if (('0' <= lookahead && lookahead <= '9') || (0x2080 <= lookahead && lookahead <= 0x2089)) ADVANCE(80); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 3: if (lookahead == '(') ADVANCE(74); if (lookahead == '*') ADVANCE(77); if (lookahead == '-') ADVANCE(6); if (lookahead == '[') ADVANCE(8); if (lookahead == 'e') ADVANCE(62); if (lookahead == 0x2192) ADVANCE(95); if (lookahead == 0x25a1) ADVANCE(78); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(3); if (('0' <= lookahead && lookahead <= '9') || (0x2080 <= lookahead && lookahead <= 0x2089)) ADVANCE(80); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 4: ADVANCE_MAP( '(', 74, '*', 77, '-', 5, '[', 8, 'f', 63, 'l', 58, 0x3bb, 81, 0x220f, 86, 0x25a1, 78, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(4); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 5: if (lookahead == '-') ADVANCE(67); END_STATE(); case 6: if (lookahead == '-') ADVANCE(67); if (lookahead == '>') ADVANCE(94); END_STATE(); case 7: if (lookahead == '>') ADVANCE(84); END_STATE(); case 8: if (lookahead == ']') ADVANCE(79); END_STATE(); case 9: if (lookahead == 'a') ADVANCE(12); END_STATE(); case 10: if (lookahead == 'a') ADVANCE(46); END_STATE(); case 11: if (lookahead == 'a') ADVANCE(32); END_STATE(); case 12: if (lookahead == 'b') ADVANCE(33); END_STATE(); case 13: if (lookahead == 'c') ADVANCE(30); END_STATE(); case 14: if (lookahead == 'c') ADVANCE(51); END_STATE(); case 15: if (lookahead == 'd') ADVANCE(69); END_STATE(); case 16: if (lookahead == 'd') ADVANCE(21); END_STATE(); case 17: if (lookahead == 'e') ADVANCE(23); END_STATE(); case 18: if (lookahead == 'e') ADVANCE(49); END_STATE(); case 19: if (lookahead == 'e') ADVANCE(14); END_STATE(); case 20: if (lookahead == 'e') ADVANCE(48); END_STATE(); case 21: if (lookahead == 'e') ADVANCE(101); END_STATE(); case 22: if (lookahead == 'e') ADVANCE(71); END_STATE(); case 23: if (lookahead == 'f') ADVANCE(97); END_STATE(); case 24: if (lookahead == 'h') ADVANCE(20); END_STATE(); case 25: if (lookahead == 'i') ADVANCE(41); END_STATE(); case 26: if (lookahead == 'i') ADVANCE(47); END_STATE(); case 27: if (lookahead == 'i') ADVANCE(39); END_STATE(); case 28: if (lookahead == 'i') ADVANCE(9); END_STATE(); case 29: if (lookahead == 'i') ADVANCE(43); END_STATE(); case 30: if (lookahead == 'l') ADVANCE(52); END_STATE(); case 31: if (lookahead == 'l') ADVANCE(87); END_STATE(); case 32: if (lookahead == 'l') ADVANCE(31); END_STATE(); case 33: if (lookahead == 'l') ADVANCE(22); END_STATE(); case 34: if (lookahead == 'm') ADVANCE(96); END_STATE(); case 35: if (lookahead == 'n') ADVANCE(15); END_STATE(); case 36: if (lookahead == 'n') ADVANCE(93); END_STATE(); case 37: if (lookahead == 'n') ADVANCE(82); END_STATE(); case 38: if (lookahead == 'n') ADVANCE(68); END_STATE(); case 39: if (lookahead == 'n') ADVANCE(13); END_STATE(); case 40: if (lookahead == 'o') ADVANCE(45); if (lookahead == 'u') ADVANCE(37); END_STATE(); case 41: if (lookahead == 'o') ADVANCE(34); END_STATE(); case 42: if (lookahead == 'o') ADVANCE(50); END_STATE(); case 43: if (lookahead == 'o') ADVANCE(38); END_STATE(); case 44: if (lookahead == 'p') ADVANCE(42); END_STATE(); case 45: if (lookahead == 'r') ADVANCE(11); END_STATE(); case 46: if (lookahead == 'r') ADVANCE(28); END_STATE(); case 47: if (lookahead == 's') ADVANCE(72); END_STATE(); case 48: if (lookahead == 's') ADVANCE(26); END_STATE(); case 49: if (lookahead == 't') ADVANCE(91); END_STATE(); case 50: if (lookahead == 't') ADVANCE(24); END_STATE(); case 51: if (lookahead == 't') ADVANCE(29); END_STATE(); case 52: if (lookahead == 'u') ADVANCE(16); END_STATE(); case 53: if (lookahead == 'x') ADVANCE(25); END_STATE(); case 54: if (lookahead == 'y') ADVANCE(44); END_STATE(); case 55: ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 56: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(60); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 57: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'd') ADVANCE(70); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 58: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(65); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 59: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(88); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 60: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(59); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 61: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(83); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 62: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(57); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 63: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(64); if (lookahead == 'u') ADVANCE(61); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 64: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(56); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 65: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(92); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 66: ACCEPT_TOKEN(sym_identifier); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 67: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && lookahead != '\n') ADVANCE(67); END_STATE(); case 68: ACCEPT_TOKEN(anon_sym_section); END_STATE(); case 69: ACCEPT_TOKEN(anon_sym_end); END_STATE(); case 70: ACCEPT_TOKEN(anon_sym_end); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 71: ACCEPT_TOKEN(anon_sym_variable); END_STATE(); case 72: ACCEPT_TOKEN(anon_sym_hypothesis); END_STATE(); case 73: ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 74: ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 75: ACCEPT_TOKEN(anon_sym_COLON); if (lookahead == '=') ADVANCE(90); END_STATE(); case 76: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 77: ACCEPT_TOKEN(sym_star); END_STATE(); case 78: ACCEPT_TOKEN(anon_sym_u25a1); END_STATE(); case 79: ACCEPT_TOKEN(anon_sym_LBRACK_RBRACK); END_STATE(); case 80: ACCEPT_TOKEN(aux_sym_sort_token1); if (('0' <= lookahead && lookahead <= '9') || (0x2080 <= lookahead && lookahead <= 0x2089)) ADVANCE(80); END_STATE(); case 81: ACCEPT_TOKEN(anon_sym_u03bb); END_STATE(); case 82: ACCEPT_TOKEN(anon_sym_fun); END_STATE(); case 83: ACCEPT_TOKEN(anon_sym_fun); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 84: ACCEPT_TOKEN(anon_sym_EQ_GT); END_STATE(); case 85: ACCEPT_TOKEN(anon_sym_u21d2); END_STATE(); case 86: ACCEPT_TOKEN(anon_sym_u220f); END_STATE(); case 87: ACCEPT_TOKEN(anon_sym_forall); END_STATE(); case 88: ACCEPT_TOKEN(anon_sym_forall); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 89: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 90: ACCEPT_TOKEN(anon_sym_COLON_EQ); END_STATE(); case 91: ACCEPT_TOKEN(anon_sym_let); END_STATE(); case 92: ACCEPT_TOKEN(anon_sym_let); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(66); END_STATE(); case 93: ACCEPT_TOKEN(anon_sym_in); END_STATE(); case 94: ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 95: ACCEPT_TOKEN(anon_sym_u2192); END_STATE(); case 96: ACCEPT_TOKEN(anon_sym_axiom); END_STATE(); case 97: ACCEPT_TOKEN(anon_sym_def); END_STATE(); case 98: ACCEPT_TOKEN(sym_post_command); if (lookahead == '-') ADVANCE(67); if (lookahead != 0 && lookahead != '\n') ADVANCE(100); END_STATE(); case 99: ACCEPT_TOKEN(sym_post_command); if (lookahead == '-') ADVANCE(98); if (lookahead == '\t' || (0x0b <= lookahead && lookahead <= '\r') || lookahead == ' ') ADVANCE(99); if (lookahead != 0 && (lookahead < '\t' || '\r' < lookahead)) ADVANCE(100); END_STATE(); case 100: ACCEPT_TOKEN(sym_post_command); if (lookahead != 0 && lookahead != '\n') ADVANCE(100); END_STATE(); case 101: 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 = 4}, [24] = {.lex_state = 4}, [25] = {.lex_state = 4}, [26] = {.lex_state = 2}, [27] = {.lex_state = 2}, [28] = {.lex_state = 2}, [29] = {.lex_state = 2}, [30] = {.lex_state = 0}, [31] = {.lex_state = 0}, [32] = {.lex_state = 2}, [33] = {.lex_state = 2}, [34] = {.lex_state = 0}, [35] = {.lex_state = 2}, [36] = {.lex_state = 0}, [37] = {.lex_state = 0}, [38] = {.lex_state = 2}, [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 = 0}, [46] = {.lex_state = 3}, [47] = {.lex_state = 0}, [48] = {.lex_state = 3}, [49] = {.lex_state = 0}, [50] = {.lex_state = 0}, [51] = {.lex_state = 0}, [52] = {.lex_state = 0}, [53] = {.lex_state = 0}, [54] = {.lex_state = 3}, [55] = {.lex_state = 3}, [56] = {.lex_state = 3}, [57] = {.lex_state = 3}, [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 = 0}, [72] = {.lex_state = 0}, [73] = {.lex_state = 0}, [74] = {.lex_state = 0}, [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 = 0}, [89] = {.lex_state = 0}, [90] = {.lex_state = 0}, [91] = {.lex_state = 0}, [92] = {.lex_state = 0}, [93] = {.lex_state = 0}, [94] = {.lex_state = 0}, [95] = {.lex_state = 0}, [96] = {.lex_state = 2}, [97] = {.lex_state = 0}, [98] = {.lex_state = 0}, [99] = {.lex_state = 2}, [100] = {.lex_state = 0}, [101] = {.lex_state = 0}, [102] = {.lex_state = 0}, [103] = {.lex_state = 0}, [104] = {.lex_state = 0}, [105] = {.lex_state = 2}, [106] = {.lex_state = 0}, [107] = {.lex_state = 0}, [108] = {.lex_state = 0}, [109] = {.lex_state = 0}, [110] = {.lex_state = 2}, [111] = {.lex_state = 0}, [112] = {.lex_state = 0}, [113] = {.lex_state = 0}, [114] = {.lex_state = 0}, [115] = {.lex_state = 2}, [116] = {.lex_state = 1}, [117] = {.lex_state = 0}, [118] = {.lex_state = 0}, [119] = {.lex_state = 2}, [120] = {.lex_state = 0}, [121] = {.lex_state = 0}, [122] = {.lex_state = 0}, [123] = {.lex_state = 0}, [124] = {.lex_state = 0}, [125] = {.lex_state = 0}, [126] = {.lex_state = 0}, [127] = {.lex_state = 0}, [128] = {.lex_state = 0}, [129] = {.lex_state = 0}, [130] = {.lex_state = 2}, [131] = {.lex_state = 0}, [132] = {.lex_state = 0}, [133] = {.lex_state = 2}, [134] = {.lex_state = 0}, [135] = {.lex_state = 0}, [136] = {.lex_state = 0}, [137] = {.lex_state = 0}, [138] = {.lex_state = 1}, [139] = {.lex_state = 2}, [140] = {.lex_state = 2}, [141] = {.lex_state = 0}, [142] = {.lex_state = 0}, [143] = {.lex_state = 0}, [144] = {.lex_state = 0}, [145] = {.lex_state = 0}, [146] = {.lex_state = 2}, [147] = {.lex_state = 2}, [148] = {.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_section] = ACTIONS(1), [anon_sym_end] = ACTIONS(1), [anon_sym_variable] = ACTIONS(1), [anon_sym_hypothesis] = ACTIONS(1), [anon_sym_SEMI] = ACTIONS(1), [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_DASH_GT] = ACTIONS(1), [anon_sym_u2192] = ACTIONS(1), [anon_sym_axiom] = ACTIONS(1), [anon_sym_def] = ACTIONS(1), [sym_command] = ACTIONS(1), }, [1] = { [sym_program] = STATE(141), [sym_section] = STATE(36), [sym_variable] = STATE(36), [sym_axiom] = STATE(36), [sym_definition] = STATE(36), [sym_preprocess] = STATE(36), [aux_sym_program_repeat1] = STATE(36), [sym_comment] = ACTIONS(3), [anon_sym_section] = ACTIONS(5), [anon_sym_variable] = ACTIONS(7), [anon_sym_hypothesis] = ACTIONS(7), [anon_sym_axiom] = ACTIONS(9), [anon_sym_def] = ACTIONS(11), [sym_command] = ACTIONS(13), }, }; static const uint16_t ts_small_parse_table[] = { [0] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_identifier, ACTIONS(17), 1, anon_sym_LPAREN, ACTIONS(19), 1, sym_star, ACTIONS(23), 1, anon_sym_u03bb, ACTIONS(25), 1, anon_sym_fun, ACTIONS(27), 1, anon_sym_u220f, ACTIONS(29), 1, anon_sym_forall, ACTIONS(31), 1, anon_sym_let, STATE(46), 1, sym_square, STATE(49), 1, sym_arrow, STATE(56), 1, sym_sort, STATE(98), 1, sym_app_term, STATE(112), 1, sym_expr, ACTIONS(21), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(41), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [57] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(135), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [114] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(117), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [171] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(120), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [228] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(50), 1, sym_expr, STATE(53), 1, sym_app_term, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [285] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(124), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [342] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(51), 1, sym_expr, STATE(53), 1, sym_app_term, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [399] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(43), 1, sym_expr, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [456] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(125), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [513] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(47), 1, sym_expr, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [570] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(42), 1, sym_expr, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [627] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(137), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [684] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(142), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [741] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(114), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [798] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_identifier, ACTIONS(17), 1, anon_sym_LPAREN, ACTIONS(19), 1, sym_star, ACTIONS(23), 1, anon_sym_u03bb, ACTIONS(25), 1, anon_sym_fun, ACTIONS(27), 1, anon_sym_u220f, ACTIONS(29), 1, anon_sym_forall, ACTIONS(31), 1, anon_sym_let, STATE(46), 1, sym_square, STATE(49), 1, sym_arrow, STATE(50), 1, sym_expr, STATE(56), 1, sym_sort, STATE(98), 1, sym_app_term, ACTIONS(21), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(41), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [855] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_identifier, ACTIONS(17), 1, anon_sym_LPAREN, ACTIONS(19), 1, sym_star, ACTIONS(23), 1, anon_sym_u03bb, ACTIONS(25), 1, anon_sym_fun, ACTIONS(27), 1, anon_sym_u220f, ACTIONS(29), 1, anon_sym_forall, ACTIONS(31), 1, anon_sym_let, STATE(46), 1, sym_square, STATE(47), 1, sym_expr, STATE(49), 1, sym_arrow, STATE(56), 1, sym_sort, STATE(98), 1, sym_app_term, ACTIONS(21), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(41), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [912] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_identifier, ACTIONS(17), 1, anon_sym_LPAREN, ACTIONS(19), 1, sym_star, ACTIONS(23), 1, anon_sym_u03bb, ACTIONS(25), 1, anon_sym_fun, ACTIONS(27), 1, anon_sym_u220f, ACTIONS(29), 1, anon_sym_forall, ACTIONS(31), 1, anon_sym_let, STATE(46), 1, sym_square, STATE(49), 1, sym_arrow, STATE(51), 1, sym_expr, STATE(56), 1, sym_sort, STATE(98), 1, sym_app_term, ACTIONS(21), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(41), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [969] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_identifier, ACTIONS(17), 1, anon_sym_LPAREN, ACTIONS(19), 1, sym_star, ACTIONS(23), 1, anon_sym_u03bb, ACTIONS(25), 1, anon_sym_fun, ACTIONS(27), 1, anon_sym_u220f, ACTIONS(29), 1, anon_sym_forall, ACTIONS(31), 1, anon_sym_let, STATE(43), 1, sym_expr, STATE(46), 1, sym_square, STATE(49), 1, sym_arrow, STATE(56), 1, sym_sort, STATE(98), 1, sym_app_term, ACTIONS(21), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(41), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [1026] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_identifier, ACTIONS(17), 1, anon_sym_LPAREN, ACTIONS(19), 1, sym_star, ACTIONS(23), 1, anon_sym_u03bb, ACTIONS(25), 1, anon_sym_fun, ACTIONS(27), 1, anon_sym_u220f, ACTIONS(29), 1, anon_sym_forall, ACTIONS(31), 1, anon_sym_let, STATE(42), 1, sym_expr, STATE(46), 1, sym_square, STATE(49), 1, sym_arrow, STATE(56), 1, sym_sort, STATE(98), 1, sym_app_term, ACTIONS(21), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(41), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [1083] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(87), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [1140] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(122), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [1197] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(123), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [1254] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(148), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [1311] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(31), 1, anon_sym_let, ACTIONS(33), 1, sym_identifier, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(41), 1, anon_sym_u03bb, ACTIONS(43), 1, anon_sym_fun, ACTIONS(45), 1, anon_sym_u220f, ACTIONS(47), 1, anon_sym_forall, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, STATE(49), 1, sym_arrow, STATE(53), 1, sym_app_term, STATE(129), 1, sym_expr, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(27), 2, sym_term, aux_sym_app_repeat1, STATE(52), 4, sym_labs, sym_pabs, sym_let, sym_app, [1368] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(49), 1, sym_identifier, ACTIONS(54), 1, anon_sym_LPAREN, ACTIONS(57), 1, sym_star, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, ACTIONS(60), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(26), 2, sym_term, aux_sym_app_repeat1, ACTIONS(52), 8, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1405] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(35), 1, anon_sym_LPAREN, ACTIONS(37), 1, sym_star, ACTIONS(63), 1, sym_identifier, STATE(29), 1, sym_square, STATE(33), 1, sym_sort, ACTIONS(39), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(26), 2, sym_term, aux_sym_app_repeat1, ACTIONS(65), 8, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1442] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(67), 14, sym_identifier, anon_sym_SEMI, 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, [1462] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(71), 1, aux_sym_sort_token1, ACTIONS(69), 13, sym_identifier, anon_sym_SEMI, 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, [1484] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(73), 1, anon_sym_section, ACTIONS(77), 1, anon_sym_axiom, ACTIONS(79), 1, anon_sym_def, ACTIONS(81), 1, sym_command, STATE(134), 1, sym_program, ACTIONS(75), 2, anon_sym_variable, anon_sym_hypothesis, STATE(34), 6, sym_section, sym_variable, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1515] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(83), 1, ts_builtin_sym_end, ACTIONS(85), 1, anon_sym_section, ACTIONS(91), 1, anon_sym_axiom, ACTIONS(94), 1, anon_sym_def, ACTIONS(97), 1, sym_command, ACTIONS(88), 2, anon_sym_variable, anon_sym_hypothesis, STATE(31), 6, sym_section, sym_variable, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1546] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(100), 13, sym_identifier, anon_sym_SEMI, 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, [1565] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(102), 13, sym_identifier, anon_sym_SEMI, 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, [1584] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(73), 1, anon_sym_section, ACTIONS(77), 1, anon_sym_axiom, ACTIONS(79), 1, anon_sym_def, ACTIONS(81), 1, sym_command, ACTIONS(104), 1, anon_sym_end, ACTIONS(75), 2, anon_sym_variable, anon_sym_hypothesis, STATE(37), 6, sym_section, sym_variable, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1615] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(69), 13, sym_identifier, anon_sym_SEMI, 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, [1634] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, anon_sym_section, ACTIONS(9), 1, anon_sym_axiom, ACTIONS(11), 1, anon_sym_def, ACTIONS(13), 1, sym_command, ACTIONS(104), 1, ts_builtin_sym_end, ACTIONS(7), 2, anon_sym_variable, anon_sym_hypothesis, STATE(31), 6, sym_section, sym_variable, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1665] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(83), 1, anon_sym_end, ACTIONS(106), 1, anon_sym_section, ACTIONS(112), 1, anon_sym_axiom, ACTIONS(115), 1, anon_sym_def, ACTIONS(118), 1, sym_command, ACTIONS(109), 2, anon_sym_variable, anon_sym_hypothesis, STATE(37), 6, sym_section, sym_variable, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1696] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(121), 13, sym_identifier, anon_sym_SEMI, 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, [1715] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(73), 1, anon_sym_section, ACTIONS(77), 1, anon_sym_axiom, ACTIONS(79), 1, anon_sym_def, ACTIONS(81), 1, sym_command, STATE(132), 1, sym_program, ACTIONS(75), 2, anon_sym_variable, anon_sym_hypothesis, STATE(34), 6, sym_section, sym_variable, sym_axiom, sym_definition, sym_preprocess, aux_sym_program_repeat1, [1746] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(123), 1, sym_identifier, ACTIONS(126), 1, anon_sym_end, ACTIONS(128), 1, anon_sym_LPAREN, ACTIONS(131), 1, sym_star, STATE(46), 1, sym_square, STATE(56), 1, sym_sort, ACTIONS(52), 2, anon_sym_DASH_GT, anon_sym_u2192, ACTIONS(134), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, STATE(40), 2, sym_term, aux_sym_app_repeat1, [1780] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_identifier, ACTIONS(17), 1, anon_sym_LPAREN, ACTIONS(19), 1, sym_star, ACTIONS(137), 1, anon_sym_end, STATE(46), 1, sym_square, STATE(56), 1, sym_sort, ACTIONS(21), 2, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, ACTIONS(65), 2, anon_sym_DASH_GT, anon_sym_u2192, STATE(40), 2, sym_term, aux_sym_app_repeat1, [1814] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(139), 9, anon_sym_end, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1829] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(141), 9, anon_sym_end, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1844] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(143), 9, anon_sym_end, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1859] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(147), 1, anon_sym_LPAREN, ACTIONS(150), 1, anon_sym_COLON, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, ACTIONS(145), 5, anon_sym_SEMI, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, [1880] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(154), 1, aux_sym_sort_token1, ACTIONS(152), 2, sym_identifier, anon_sym_end, ACTIONS(69), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [1899] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(156), 9, anon_sym_end, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1914] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(158), 2, sym_identifier, anon_sym_end, ACTIONS(67), 7, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, aux_sym_sort_token1, anon_sym_DASH_GT, anon_sym_u2192, [1931] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(160), 9, anon_sym_end, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1946] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(162), 9, anon_sym_end, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1961] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(164), 9, anon_sym_end, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1976] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(166), 9, anon_sym_end, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, anon_sym_DASH_GT, anon_sym_u2192, [1991] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(168), 2, anon_sym_DASH_GT, anon_sym_u2192, ACTIONS(160), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, [2007] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(170), 2, sym_identifier, anon_sym_end, ACTIONS(100), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [2023] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(172), 2, sym_identifier, anon_sym_end, ACTIONS(121), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [2039] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(174), 2, sym_identifier, anon_sym_end, ACTIONS(102), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [2055] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(152), 2, sym_identifier, anon_sym_end, ACTIONS(69), 6, anon_sym_LPAREN, sym_star, anon_sym_u25a1, anon_sym_LBRACK_RBRACK, anon_sym_DASH_GT, anon_sym_u2192, [2071] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(178), 1, anon_sym_COLON, STATE(104), 1, sym_ascription, ACTIONS(180), 2, anon_sym_EQ_GT, anon_sym_u21d2, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2092] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(182), 7, ts_builtin_sym_end, anon_sym_section, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2105] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(184), 7, ts_builtin_sym_end, anon_sym_section, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2118] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(182), 7, anon_sym_section, anon_sym_end, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2131] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(186), 7, anon_sym_section, anon_sym_end, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2144] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(190), 1, anon_sym_COLON, ACTIONS(188), 6, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, [2159] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(192), 7, ts_builtin_sym_end, anon_sym_section, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2172] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(194), 7, anon_sym_section, anon_sym_end, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2185] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(196), 7, anon_sym_section, anon_sym_end, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2198] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(196), 7, ts_builtin_sym_end, anon_sym_section, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2211] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(186), 7, ts_builtin_sym_end, anon_sym_section, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2224] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(198), 7, anon_sym_section, anon_sym_end, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2237] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(178), 1, anon_sym_COLON, STATE(109), 1, sym_ascription, ACTIONS(200), 2, anon_sym_EQ_GT, anon_sym_u21d2, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2258] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(202), 7, anon_sym_section, anon_sym_end, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2271] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(192), 7, anon_sym_section, anon_sym_end, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2284] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(194), 7, ts_builtin_sym_end, anon_sym_section, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2297] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(184), 7, anon_sym_section, anon_sym_end, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2310] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(198), 7, ts_builtin_sym_end, anon_sym_section, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2323] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(202), 7, ts_builtin_sym_end, anon_sym_section, anon_sym_variable, anon_sym_hypothesis, anon_sym_axiom, anon_sym_def, sym_command, [2336] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(178), 1, anon_sym_COLON, ACTIONS(204), 1, anon_sym_COMMA, STATE(128), 1, sym_ascription, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2356] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(206), 1, anon_sym_COLON, ACTIONS(208), 1, anon_sym_COLON_EQ, STATE(126), 1, sym_ascription, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2376] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(206), 1, anon_sym_COLON, ACTIONS(210), 1, anon_sym_COLON_EQ, STATE(136), 1, sym_ascription, STATE(80), 2, sym_param_block, aux_sym_variable_repeat1, [2396] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(206), 1, anon_sym_COLON, ACTIONS(212), 1, anon_sym_COLON_EQ, STATE(113), 1, sym_ascription, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2416] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(178), 1, anon_sym_COLON, ACTIONS(214), 1, anon_sym_COMMA, STATE(111), 1, sym_ascription, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2436] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(206), 1, anon_sym_COLON, ACTIONS(216), 1, anon_sym_COLON_EQ, STATE(127), 1, sym_ascription, STATE(78), 2, sym_param_block, aux_sym_variable_repeat1, [2456] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(206), 1, anon_sym_COLON, ACTIONS(218), 1, anon_sym_COLON_EQ, STATE(145), 1, sym_ascription, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2476] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(206), 1, anon_sym_COLON, ACTIONS(220), 1, anon_sym_COLON_EQ, STATE(143), 1, sym_ascription, STATE(83), 2, sym_param_block, aux_sym_variable_repeat1, [2496] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(178), 1, anon_sym_COLON, STATE(131), 1, sym_ascription, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2513] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(178), 1, anon_sym_COLON, STATE(144), 1, sym_ascription, STATE(85), 2, sym_param_block, aux_sym_variable_repeat1, [2530] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(222), 5, anon_sym_SEMI, anon_sym_EQ_GT, anon_sym_u21d2, anon_sym_COMMA, anon_sym_COLON_EQ, [2541] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(178), 1, anon_sym_COLON, STATE(121), 1, sym_ascription, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2558] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(178), 1, anon_sym_COLON, STATE(118), 1, sym_ascription, STATE(88), 2, sym_param_block, aux_sym_variable_repeat1, [2575] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(224), 1, anon_sym_SEMI, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2589] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(226), 1, anon_sym_LPAREN, ACTIONS(228), 1, anon_sym_in, STATE(93), 2, sym_binding, aux_sym_let_repeat1, [2603] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, ACTIONS(230), 1, anon_sym_SEMI, STATE(45), 2, sym_param_block, aux_sym_variable_repeat1, [2617] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(232), 1, anon_sym_LPAREN, ACTIONS(235), 1, anon_sym_in, STATE(93), 2, sym_binding, aux_sym_let_repeat1, [2631] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, STATE(90), 2, sym_param_block, aux_sym_variable_repeat1, [2642] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, STATE(58), 2, sym_param_block, aux_sym_variable_repeat1, [2653] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(237), 1, sym_identifier, ACTIONS(240), 1, anon_sym_COLON, STATE(96), 1, aux_sym_param_block_repeat1, [2666] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, STATE(81), 2, sym_param_block, aux_sym_variable_repeat1, [2677] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(160), 1, anon_sym_end, ACTIONS(242), 2, anon_sym_DASH_GT, anon_sym_u2192, [2688] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(244), 1, sym_identifier, ACTIONS(246), 1, anon_sym_COLON, STATE(96), 1, aux_sym_param_block_repeat1, [2701] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, STATE(77), 2, sym_param_block, aux_sym_variable_repeat1, [2712] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(226), 1, anon_sym_LPAREN, STATE(91), 2, sym_binding, aux_sym_let_repeat1, [2723] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, STATE(70), 2, sym_param_block, aux_sym_variable_repeat1, [2734] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(176), 1, anon_sym_LPAREN, STATE(92), 2, sym_param_block, aux_sym_variable_repeat1, [2745] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(248), 2, anon_sym_EQ_GT, anon_sym_u21d2, [2753] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(250), 1, sym_identifier, STATE(99), 1, aux_sym_param_block_repeat1, [2763] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(252), 2, anon_sym_LPAREN, anon_sym_in, [2771] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(254), 2, anon_sym_LPAREN, anon_sym_in, [2779] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(256), 2, anon_sym_LPAREN, anon_sym_in, [2787] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(258), 2, anon_sym_EQ_GT, anon_sym_u21d2, [2795] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(260), 1, sym_identifier, [2802] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(262), 1, anon_sym_COMMA, [2809] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(264), 1, anon_sym_end, [2816] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(266), 1, anon_sym_COLON_EQ, [2823] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, anon_sym_RPAREN, [2830] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(270), 1, sym_identifier, [2837] = 2, ACTIONS(272), 1, sym_comment, ACTIONS(274), 1, sym_post_command, [2844] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(276), 1, anon_sym_RPAREN, [2851] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(278), 1, anon_sym_SEMI, [2858] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(280), 1, sym_identifier, [2865] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(282), 1, anon_sym_RPAREN, [2872] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(284), 1, anon_sym_SEMI, [2879] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(286), 1, anon_sym_SEMI, [2886] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, anon_sym_RPAREN, [2893] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(290), 1, anon_sym_SEMI, [2900] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(292), 1, anon_sym_SEMI, [2907] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(294), 1, anon_sym_COLON_EQ, [2914] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(208), 1, anon_sym_COLON_EQ, [2921] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(296), 1, anon_sym_COMMA, [2928] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(298), 1, anon_sym_SEMI, [2935] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(300), 1, sym_identifier, [2942] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(302), 1, anon_sym_SEMI, [2949] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(304), 1, anon_sym_end, [2956] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(306), 1, sym_identifier, [2963] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(308), 1, anon_sym_end, [2970] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(310), 1, anon_sym_SEMI, [2977] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(212), 1, anon_sym_COLON_EQ, [2984] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(312), 1, anon_sym_RPAREN, [2991] = 2, ACTIONS(272), 1, sym_comment, ACTIONS(314), 1, sym_post_command, [2998] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(316), 1, sym_identifier, [3005] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(318), 1, sym_identifier, [3012] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(320), 1, ts_builtin_sym_end, [3019] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(322), 1, anon_sym_RPAREN, [3026] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(218), 1, anon_sym_COLON_EQ, [3033] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(324), 1, anon_sym_SEMI, [3040] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(326), 1, anon_sym_COLON_EQ, [3047] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(328), 1, sym_identifier, [3054] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(330), 1, sym_identifier, [3061] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(332), 1, anon_sym_SEMI, }; 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)] = 1254, [SMALL_STATE(25)] = 1311, [SMALL_STATE(26)] = 1368, [SMALL_STATE(27)] = 1405, [SMALL_STATE(28)] = 1442, [SMALL_STATE(29)] = 1462, [SMALL_STATE(30)] = 1484, [SMALL_STATE(31)] = 1515, [SMALL_STATE(32)] = 1546, [SMALL_STATE(33)] = 1565, [SMALL_STATE(34)] = 1584, [SMALL_STATE(35)] = 1615, [SMALL_STATE(36)] = 1634, [SMALL_STATE(37)] = 1665, [SMALL_STATE(38)] = 1696, [SMALL_STATE(39)] = 1715, [SMALL_STATE(40)] = 1746, [SMALL_STATE(41)] = 1780, [SMALL_STATE(42)] = 1814, [SMALL_STATE(43)] = 1829, [SMALL_STATE(44)] = 1844, [SMALL_STATE(45)] = 1859, [SMALL_STATE(46)] = 1880, [SMALL_STATE(47)] = 1899, [SMALL_STATE(48)] = 1914, [SMALL_STATE(49)] = 1931, [SMALL_STATE(50)] = 1946, [SMALL_STATE(51)] = 1961, [SMALL_STATE(52)] = 1976, [SMALL_STATE(53)] = 1991, [SMALL_STATE(54)] = 2007, [SMALL_STATE(55)] = 2023, [SMALL_STATE(56)] = 2039, [SMALL_STATE(57)] = 2055, [SMALL_STATE(58)] = 2071, [SMALL_STATE(59)] = 2092, [SMALL_STATE(60)] = 2105, [SMALL_STATE(61)] = 2118, [SMALL_STATE(62)] = 2131, [SMALL_STATE(63)] = 2144, [SMALL_STATE(64)] = 2159, [SMALL_STATE(65)] = 2172, [SMALL_STATE(66)] = 2185, [SMALL_STATE(67)] = 2198, [SMALL_STATE(68)] = 2211, [SMALL_STATE(69)] = 2224, [SMALL_STATE(70)] = 2237, [SMALL_STATE(71)] = 2258, [SMALL_STATE(72)] = 2271, [SMALL_STATE(73)] = 2284, [SMALL_STATE(74)] = 2297, [SMALL_STATE(75)] = 2310, [SMALL_STATE(76)] = 2323, [SMALL_STATE(77)] = 2336, [SMALL_STATE(78)] = 2356, [SMALL_STATE(79)] = 2376, [SMALL_STATE(80)] = 2396, [SMALL_STATE(81)] = 2416, [SMALL_STATE(82)] = 2436, [SMALL_STATE(83)] = 2456, [SMALL_STATE(84)] = 2476, [SMALL_STATE(85)] = 2496, [SMALL_STATE(86)] = 2513, [SMALL_STATE(87)] = 2530, [SMALL_STATE(88)] = 2541, [SMALL_STATE(89)] = 2558, [SMALL_STATE(90)] = 2575, [SMALL_STATE(91)] = 2589, [SMALL_STATE(92)] = 2603, [SMALL_STATE(93)] = 2617, [SMALL_STATE(94)] = 2631, [SMALL_STATE(95)] = 2642, [SMALL_STATE(96)] = 2653, [SMALL_STATE(97)] = 2666, [SMALL_STATE(98)] = 2677, [SMALL_STATE(99)] = 2688, [SMALL_STATE(100)] = 2701, [SMALL_STATE(101)] = 2712, [SMALL_STATE(102)] = 2723, [SMALL_STATE(103)] = 2734, [SMALL_STATE(104)] = 2745, [SMALL_STATE(105)] = 2753, [SMALL_STATE(106)] = 2763, [SMALL_STATE(107)] = 2771, [SMALL_STATE(108)] = 2779, [SMALL_STATE(109)] = 2787, [SMALL_STATE(110)] = 2795, [SMALL_STATE(111)] = 2802, [SMALL_STATE(112)] = 2809, [SMALL_STATE(113)] = 2816, [SMALL_STATE(114)] = 2823, [SMALL_STATE(115)] = 2830, [SMALL_STATE(116)] = 2837, [SMALL_STATE(117)] = 2844, [SMALL_STATE(118)] = 2851, [SMALL_STATE(119)] = 2858, [SMALL_STATE(120)] = 2865, [SMALL_STATE(121)] = 2872, [SMALL_STATE(122)] = 2879, [SMALL_STATE(123)] = 2886, [SMALL_STATE(124)] = 2893, [SMALL_STATE(125)] = 2900, [SMALL_STATE(126)] = 2907, [SMALL_STATE(127)] = 2914, [SMALL_STATE(128)] = 2921, [SMALL_STATE(129)] = 2928, [SMALL_STATE(130)] = 2935, [SMALL_STATE(131)] = 2942, [SMALL_STATE(132)] = 2949, [SMALL_STATE(133)] = 2956, [SMALL_STATE(134)] = 2963, [SMALL_STATE(135)] = 2970, [SMALL_STATE(136)] = 2977, [SMALL_STATE(137)] = 2984, [SMALL_STATE(138)] = 2991, [SMALL_STATE(139)] = 2998, [SMALL_STATE(140)] = 3005, [SMALL_STATE(141)] = 3012, [SMALL_STATE(142)] = 3019, [SMALL_STATE(143)] = 3026, [SMALL_STATE(144)] = 3033, [SMALL_STATE(145)] = 3040, [SMALL_STATE(146)] = 3047, [SMALL_STATE(147)] = 3054, [SMALL_STATE(148)] = 3061, }; 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}}, SHIFT(130), [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56), [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(102), [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(100), [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(101), [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(95), [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97), [49] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(33), [52] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), [54] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(5), [57] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(35), [60] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(28), [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), [65] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_app, 1, 0, 0), [67] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_square, 1, 0, 0), [69] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sort, 1, 0, 0), [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), [83] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), [85] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(130), [88] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(94), [91] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(115), [94] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(110), [97] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(138), [100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 3, 0, 0), [102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 1, 0, 0), [104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 1, 0, 0), [106] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(146), [109] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(103), [112] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(140), [115] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(147), [118] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(116), [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sort, 2, 0, 0), [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(56), [126] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), [128] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(23), [131] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(57), [134] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_app_repeat1, 2, 0, 0), SHIFT_REPEAT(48), [137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_app, 1, 0, 0), [139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pabs, 5, 0, 0), [141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_labs, 5, 0, 0), [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let, 5, 0, 0), [145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_repeat1, 2, 0, 0), [147] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_repeat1, 2, 0, 0), SHIFT_REPEAT(105), [150] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_variable_repeat1, 2, 0, 0), [152] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sort, 1, 0, 0), [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_labs, 4, 0, 0), [158] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_square, 1, 0, 0), [160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expr, 1, 0, 0), [162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arrow, 3, 0, 0), [164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pabs, 4, 0, 0), [166] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_app_term, 1, 0, 0), [168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), [170] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 3, 0, 0), [172] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sort, 2, 0, 0), [174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 1, 0, 0), [176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), [178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), [180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_axiom, 5, 0, 2), [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preprocess, 2, 0, 0), [186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_definition, 5, 0, 2), [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_block, 5, 0, 3), [190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_param_block, 5, 0, 3), [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_section, 5, 0, 0), [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable, 3, 0, 0), [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_definition, 6, 0, 2), [198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_definition, 7, 0, 2), [200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), [202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_axiom, 4, 0, 2), [204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), [206] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21), [208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), [210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), [214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), [216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), [220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), [222] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ascription, 2, 0, 1), [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), [226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), [230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), [232] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_repeat1, 2, 0, 0), SHIFT_REPEAT(133), [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_let_repeat1, 2, 0, 0), [237] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_block_repeat1, 2, 0, 0), SHIFT_REPEAT(96), [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_param_block_repeat1, 2, 0, 0), [242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), [244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), [248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), [250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), [252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding, 5, 0, 0), [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding, 6, 0, 0), [256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding, 7, 0, 0), [258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), [260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), [264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), [266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), [268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), [272] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), [274] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74), [276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), [282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), [284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), [286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), [294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), [298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), [300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), [302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), [304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), [306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), [308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), [312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), [314] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60), [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), [318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), [320] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), [322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), }; #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