diff --git a/grammar.js b/grammar.js index 0d5c632..7bc9b53 100644 --- a/grammar.js +++ b/grammar.js @@ -210,7 +210,11 @@ module.exports = grammar({ value_declaration_name: $ => $._name, - _expression: $ => + _expression: $ => $._expression4, + + _expression4: $ => choice($.expression_let, $._expression3), + + _expression3: $ => choice( $.expression_function, $.expression_if, @@ -240,6 +244,23 @@ module.exports = grammar({ $.expression_unit ), + expression_let: $ => + seq( + "let", + repeat1($.expression_let_value_declaration), + "in", + $._expression + ), + + expression_let_value_declaration: $ => + seq( + field("binder", $._pattern), + field("type_annotation", optional($.type_annotation)), + "=", + field("expression", $._expression), + ";" + ), + expression_right_pipe: $ => seq(field("lhs", $._expression2), "|>", field("rhs", $._expression1)), @@ -318,7 +339,7 @@ module.exports = grammar({ expression_effect_expression: $ => seq( - $._expression, + $._expression3, // `let` expressions should parse as `expression_effect_let` optional(seq(";", field("rest", $._expression_effect_statement))) ), diff --git a/queries/highlights.scm b/queries/highlights.scm index 33b2c6a..5008303 100644 --- a/queries/highlights.scm +++ b/queries/highlights.scm @@ -35,6 +35,7 @@ "do" "alias" "let" + "in" ] @keyword [ @@ -81,6 +82,7 @@ ; values (value_declaration_name) @function +(pattern_variable) @variable (expression_function ("->" @operator)) (expression_match_arm ("->" @operator)) ("<-" @operator) diff --git a/src/grammar.json b/src/grammar.json index 84a61f5..1f60479 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -1194,6 +1194,23 @@ "name": "_name" }, "_expression": { + "type": "SYMBOL", + "name": "_expression4" + }, + "_expression4": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "expression_let" + }, + { + "type": "SYMBOL", + "name": "_expression3" + } + ] + }, + "_expression3": { "type": "CHOICE", "members": [ { @@ -1301,6 +1318,75 @@ } ] }, + "expression_let": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "let" + }, + { + "type": "REPEAT1", + "content": { + "type": "SYMBOL", + "name": "expression_let_value_declaration" + } + }, + { + "type": "STRING", + "value": "in" + }, + { + "type": "SYMBOL", + "name": "_expression" + } + ] + }, + "expression_let_value_declaration": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "binder", + "content": { + "type": "SYMBOL", + "name": "_pattern" + } + }, + { + "type": "FIELD", + "name": "type_annotation", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_annotation" + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "STRING", + "value": "=" + }, + { + "type": "FIELD", + "name": "expression", + "content": { + "type": "SYMBOL", + "name": "_expression" + } + }, + { + "type": "STRING", + "value": ";" + } + ] + }, "expression_right_pipe": { "type": "SEQ", "members": [ @@ -1684,7 +1770,7 @@ "members": [ { "type": "SYMBOL", - "name": "_expression" + "name": "_expression3" }, { "type": "CHOICE", diff --git a/src/node-types.json b/src/node-types.json index 9afdfe1..fff0ae7 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -139,6 +139,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -241,6 +245,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -337,6 +345,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -480,6 +492,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -586,7 +602,7 @@ }, "children": { "multiple": false, - "required": true, + "required": false, "types": [ { "type": "expression_array", @@ -624,6 +640,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -725,6 +745,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -827,7 +851,7 @@ "fields": {}, "children": { "multiple": false, - "required": true, + "required": false, "types": [ { "type": "expression_array", @@ -865,6 +889,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -956,6 +984,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1106,6 +1138,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1192,6 +1228,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1278,6 +1318,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1318,6 +1362,221 @@ } } }, + { + "type": "expression_let", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "expression_array", + "named": true + }, + { + "type": "expression_call", + "named": true + }, + { + "type": "expression_constructor", + "named": true + }, + { + "type": "expression_effect", + "named": true + }, + { + "type": "expression_false", + "named": true + }, + { + "type": "expression_float", + "named": true + }, + { + "type": "expression_function", + "named": true + }, + { + "type": "expression_if", + "named": true + }, + { + "type": "expression_int", + "named": true + }, + { + "type": "expression_let", + "named": true + }, + { + "type": "expression_let_value_declaration", + "named": true + }, + { + "type": "expression_match", + "named": true + }, + { + "type": "expression_record", + "named": true + }, + { + "type": "expression_record_access", + "named": true + }, + { + "type": "expression_record_update", + "named": true + }, + { + "type": "expression_right_pipe", + "named": true + }, + { + "type": "expression_string", + "named": true + }, + { + "type": "expression_true", + "named": true + }, + { + "type": "expression_unit", + "named": true + }, + { + "type": "expression_variable", + "named": true + } + ] + } + }, + { + "type": "expression_let_value_declaration", + "named": true, + "fields": { + "binder": { + "multiple": false, + "required": true, + "types": [ + { + "type": "pattern_constructor", + "named": true + }, + { + "type": "pattern_unused", + "named": true + }, + { + "type": "pattern_variable", + "named": true + } + ] + }, + "expression": { + "multiple": true, + "required": true, + "types": [ + { + "type": "(", + "named": false + }, + { + "type": ")", + "named": false + }, + { + "type": "expression_array", + "named": true + }, + { + "type": "expression_call", + "named": true + }, + { + "type": "expression_constructor", + "named": true + }, + { + "type": "expression_effect", + "named": true + }, + { + "type": "expression_false", + "named": true + }, + { + "type": "expression_float", + "named": true + }, + { + "type": "expression_function", + "named": true + }, + { + "type": "expression_if", + "named": true + }, + { + "type": "expression_int", + "named": true + }, + { + "type": "expression_let", + "named": true + }, + { + "type": "expression_match", + "named": true + }, + { + "type": "expression_record", + "named": true + }, + { + "type": "expression_record_access", + "named": true + }, + { + "type": "expression_record_update", + "named": true + }, + { + "type": "expression_right_pipe", + "named": true + }, + { + "type": "expression_string", + "named": true + }, + { + "type": "expression_true", + "named": true + }, + { + "type": "expression_unit", + "named": true + }, + { + "type": "expression_variable", + "named": true + } + ] + }, + "type_annotation": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_annotation", + "named": true + } + ] + } + } + }, { "type": "expression_match", "named": true, @@ -1380,6 +1639,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1472,6 +1735,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1594,6 +1861,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1699,6 +1970,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1810,6 +2085,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1902,6 +2181,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -1988,6 +2271,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -2942,6 +3229,10 @@ "type": "expression_int", "named": true }, + { + "type": "expression_let", + "named": true + }, { "type": "expression_match", "named": true @@ -3123,6 +3414,10 @@ "type": "import", "named": false }, + { + "type": "in", + "named": false + }, { "type": "let", "named": false diff --git a/src/parser.c b/src/parser.c index b26b81d..fc7c2ef 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,15 +6,15 @@ #endif #define LANGUAGE_VERSION 13 -#define STATE_COUNT 367 +#define STATE_COUNT 380 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 142 +#define SYMBOL_COUNT 148 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 45 +#define TOKEN_COUNT 46 #define EXTERNAL_TOKEN_COUNT 0 -#define FIELD_COUNT 41 +#define FIELD_COUNT 42 #define MAX_ALIAS_SEQUENCE_LENGTH 9 -#define PRODUCTION_ID_COUNT 70 +#define PRODUCTION_ID_COUNT 72 enum { anon_sym_module = 1, @@ -36,128 +36,134 @@ enum { anon_sym_RBRACE = 17, anon_sym_COLON = 18, anon_sym_foreign = 19, - anon_sym_PIPE_GT = 20, - anon_sym_fn = 21, - anon_sym_if = 22, - anon_sym_then = 23, - anon_sym_else = 24, - anon_sym_match = 25, - anon_sym_with = 26, - anon_sym_end = 27, - anon_sym_do = 28, - anon_sym_LT_DASH = 29, - anon_sym_let = 30, - anon_sym_return = 31, - anon_sym_LBRACK = 32, - anon_sym_RBRACK = 33, - sym_expression_string = 34, - sym_expression_int = 35, - sym_expression_float = 36, - sym_expression_true = 37, - sym_expression_false = 38, - sym_expression_unit = 39, - sym__proper_name = 40, - sym__package_name = 41, - sym__name = 42, - sym__unused_name = 43, - sym_comment = 44, - sym_source_file = 45, - sym_module_header = 46, - sym_module_name = 47, - sym_module_import = 48, - sym_module_import_package = 49, - sym_module_import_alias = 50, - sym__exposing = 51, - sym_exposing_everything = 52, - sym_exposing_list = 53, - sym__exposing_list_item = 54, - sym_exposing_type = 55, - sym_exposing_type_name = 56, - sym_exposing_type_constructors = 57, - sym__everything = 58, - sym_exposing_value = 59, - sym__module_declaration = 60, - sym__type_declaration = 61, - sym_type_alias_declaration = 62, - sym_empty_type_declaration = 63, - sym_type_declaration = 64, - sym_type_declaration_name = 65, - sym_type_declaration_variables = 66, - sym_type_declaration_variable = 67, - sym_type_declaration_constructor = 68, - sym_type_declaration_constructor_name = 69, - sym_type_declaration_constructor_fields = 70, - sym__type = 71, - sym__type1 = 72, - sym_type_function = 73, - sym__type_parens = 74, - sym_type_closed_record = 75, - sym_type_open_record = 76, - sym_type_open_record_row_variable = 77, - sym_type_record_field = 78, - sym_type_record_field_label = 79, - sym_type_call = 80, - sym_type_call_arguments = 81, - sym_type_constructor = 82, - sym_type_constructor_proper_name = 83, - sym_type_variable = 84, - sym_type_annotation = 85, - sym_return_type_annotation = 86, - sym_foreign_value_declaration = 87, - sym_value_declaration = 88, - sym_value_declaration_name = 89, - sym__expression = 90, - sym__expression2 = 91, - sym__expression1 = 92, - sym__expression0 = 93, - sym_expression_right_pipe = 94, - sym_expression_function = 95, - sym_expression_function_parameter = 96, - sym_expression_if = 97, - sym_expression_match = 98, - sym_expression_effect = 99, - sym__expression_effect_statement = 100, - sym_expression_effect_bind = 101, - sym_expression_effect_let = 102, - sym_expression_effect_let_binder = 103, - sym_expression_effect_expression = 104, - sym_expression_effect_bind_name = 105, - sym_expression_effect_return = 106, - sym_expression_match_arm = 107, - sym__expression_parens = 108, - sym_expression_call = 109, - sym_expression_call_arguments = 110, - sym_expression_array = 111, - sym_expression_record = 112, - sym_expression_record_update = 113, - sym__expression_record_update_target = 114, - sym_expression_record_field = 115, - sym_expression_record_access = 116, - sym_expression_record_field_label = 117, - sym_expression_constructor = 118, - sym_expression_constructor_proper_name = 119, - sym_expression_variable = 120, - sym_expression_variable_name = 121, - sym__pattern = 122, - sym_pattern_constructor = 123, - sym_pattern_constructor_proper_name = 124, - sym_pattern_constructor_fields = 125, - sym_pattern_variable = 126, - sym_pattern_unused = 127, - sym_qualifier = 128, - aux_sym_source_file_repeat1 = 129, - aux_sym_source_file_repeat2 = 130, - aux_sym_module_name_repeat1 = 131, - aux_sym_exposing_list_repeat1 = 132, - aux_sym_type_declaration_repeat1 = 133, - aux_sym_type_declaration_variables_repeat1 = 134, - aux_sym_type_declaration_constructor_fields_repeat1 = 135, - aux_sym_type_closed_record_repeat1 = 136, - aux_sym_expression_function_repeat1 = 137, - aux_sym_expression_match_repeat1 = 138, - aux_sym_expression_call_arguments_repeat1 = 139, - aux_sym_expression_record_repeat1 = 140, - aux_sym_pattern_constructor_fields_repeat1 = 141, + anon_sym_let = 20, + anon_sym_in = 21, + anon_sym_PIPE_GT = 22, + anon_sym_fn = 23, + anon_sym_if = 24, + anon_sym_then = 25, + anon_sym_else = 26, + anon_sym_match = 27, + anon_sym_with = 28, + anon_sym_end = 29, + anon_sym_do = 30, + anon_sym_LT_DASH = 31, + anon_sym_return = 32, + anon_sym_LBRACK = 33, + anon_sym_RBRACK = 34, + sym_expression_string = 35, + sym_expression_int = 36, + sym_expression_float = 37, + sym_expression_true = 38, + sym_expression_false = 39, + sym_expression_unit = 40, + sym__proper_name = 41, + sym__package_name = 42, + sym__name = 43, + sym__unused_name = 44, + sym_comment = 45, + sym_source_file = 46, + sym_module_header = 47, + sym_module_name = 48, + sym_module_import = 49, + sym_module_import_package = 50, + sym_module_import_alias = 51, + sym__exposing = 52, + sym_exposing_everything = 53, + sym_exposing_list = 54, + sym__exposing_list_item = 55, + sym_exposing_type = 56, + sym_exposing_type_name = 57, + sym_exposing_type_constructors = 58, + sym__everything = 59, + sym_exposing_value = 60, + sym__module_declaration = 61, + sym__type_declaration = 62, + sym_type_alias_declaration = 63, + sym_empty_type_declaration = 64, + sym_type_declaration = 65, + sym_type_declaration_name = 66, + sym_type_declaration_variables = 67, + sym_type_declaration_variable = 68, + sym_type_declaration_constructor = 69, + sym_type_declaration_constructor_name = 70, + sym_type_declaration_constructor_fields = 71, + sym__type = 72, + sym__type1 = 73, + sym_type_function = 74, + sym__type_parens = 75, + sym_type_closed_record = 76, + sym_type_open_record = 77, + sym_type_open_record_row_variable = 78, + sym_type_record_field = 79, + sym_type_record_field_label = 80, + sym_type_call = 81, + sym_type_call_arguments = 82, + sym_type_constructor = 83, + sym_type_constructor_proper_name = 84, + sym_type_variable = 85, + sym_type_annotation = 86, + sym_return_type_annotation = 87, + sym_foreign_value_declaration = 88, + sym_value_declaration = 89, + sym_value_declaration_name = 90, + sym__expression = 91, + sym__expression4 = 92, + sym__expression3 = 93, + sym__expression2 = 94, + sym__expression1 = 95, + sym__expression0 = 96, + sym_expression_let = 97, + sym_expression_let_value_declaration = 98, + sym_expression_right_pipe = 99, + sym_expression_function = 100, + sym_expression_function_parameter = 101, + sym_expression_if = 102, + sym_expression_match = 103, + sym_expression_effect = 104, + sym__expression_effect_statement = 105, + sym_expression_effect_bind = 106, + sym_expression_effect_let = 107, + sym_expression_effect_let_binder = 108, + sym_expression_effect_expression = 109, + sym_expression_effect_bind_name = 110, + sym_expression_effect_return = 111, + sym_expression_match_arm = 112, + sym__expression_parens = 113, + sym_expression_call = 114, + sym_expression_call_arguments = 115, + sym_expression_array = 116, + sym_expression_record = 117, + sym_expression_record_update = 118, + sym__expression_record_update_target = 119, + sym_expression_record_field = 120, + sym_expression_record_access = 121, + sym_expression_record_field_label = 122, + sym_expression_constructor = 123, + sym_expression_constructor_proper_name = 124, + sym_expression_variable = 125, + sym_expression_variable_name = 126, + sym__pattern = 127, + sym_pattern_constructor = 128, + sym_pattern_constructor_proper_name = 129, + sym_pattern_constructor_fields = 130, + sym_pattern_variable = 131, + sym_pattern_unused = 132, + sym_qualifier = 133, + aux_sym_source_file_repeat1 = 134, + aux_sym_source_file_repeat2 = 135, + aux_sym_module_name_repeat1 = 136, + aux_sym_exposing_list_repeat1 = 137, + aux_sym_type_declaration_repeat1 = 138, + aux_sym_type_declaration_variables_repeat1 = 139, + aux_sym_type_declaration_constructor_fields_repeat1 = 140, + aux_sym_type_closed_record_repeat1 = 141, + aux_sym_expression_let_repeat1 = 142, + aux_sym_expression_function_repeat1 = 143, + aux_sym_expression_match_repeat1 = 144, + aux_sym_expression_call_arguments_repeat1 = 145, + aux_sym_expression_record_repeat1 = 146, + aux_sym_pattern_constructor_fields_repeat1 = 147, }; static const char * const ts_symbol_names[] = { @@ -181,6 +187,8 @@ static const char * const ts_symbol_names[] = { [anon_sym_RBRACE] = "}", [anon_sym_COLON] = ":", [anon_sym_foreign] = "foreign", + [anon_sym_let] = "let", + [anon_sym_in] = "in", [anon_sym_PIPE_GT] = "|>", [anon_sym_fn] = "fn", [anon_sym_if] = "if", @@ -191,7 +199,6 @@ static const char * const ts_symbol_names[] = { [anon_sym_end] = "end", [anon_sym_do] = "do", [anon_sym_LT_DASH] = "<-", - [anon_sym_let] = "let", [anon_sym_return] = "return", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", @@ -252,9 +259,13 @@ static const char * const ts_symbol_names[] = { [sym_value_declaration] = "value_declaration", [sym_value_declaration_name] = "value_declaration_name", [sym__expression] = "_expression", + [sym__expression4] = "_expression4", + [sym__expression3] = "_expression3", [sym__expression2] = "_expression2", [sym__expression1] = "_expression1", [sym__expression0] = "_expression0", + [sym_expression_let] = "expression_let", + [sym_expression_let_value_declaration] = "expression_let_value_declaration", [sym_expression_right_pipe] = "expression_right_pipe", [sym_expression_function] = "expression_function", [sym_expression_function_parameter] = "expression_function_parameter", @@ -298,6 +309,7 @@ static const char * const ts_symbol_names[] = { [aux_sym_type_declaration_variables_repeat1] = "type_declaration_variables_repeat1", [aux_sym_type_declaration_constructor_fields_repeat1] = "type_declaration_constructor_fields_repeat1", [aux_sym_type_closed_record_repeat1] = "type_closed_record_repeat1", + [aux_sym_expression_let_repeat1] = "expression_let_repeat1", [aux_sym_expression_function_repeat1] = "expression_function_repeat1", [aux_sym_expression_match_repeat1] = "expression_match_repeat1", [aux_sym_expression_call_arguments_repeat1] = "expression_call_arguments_repeat1", @@ -326,6 +338,8 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_foreign] = anon_sym_foreign, + [anon_sym_let] = anon_sym_let, + [anon_sym_in] = anon_sym_in, [anon_sym_PIPE_GT] = anon_sym_PIPE_GT, [anon_sym_fn] = anon_sym_fn, [anon_sym_if] = anon_sym_if, @@ -336,7 +350,6 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_end] = anon_sym_end, [anon_sym_do] = anon_sym_do, [anon_sym_LT_DASH] = anon_sym_LT_DASH, - [anon_sym_let] = anon_sym_let, [anon_sym_return] = anon_sym_return, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, @@ -397,9 +410,13 @@ static const TSSymbol ts_symbol_map[] = { [sym_value_declaration] = sym_value_declaration, [sym_value_declaration_name] = sym_value_declaration_name, [sym__expression] = sym__expression, + [sym__expression4] = sym__expression4, + [sym__expression3] = sym__expression3, [sym__expression2] = sym__expression2, [sym__expression1] = sym__expression1, [sym__expression0] = sym__expression0, + [sym_expression_let] = sym_expression_let, + [sym_expression_let_value_declaration] = sym_expression_let_value_declaration, [sym_expression_right_pipe] = sym_expression_right_pipe, [sym_expression_function] = sym_expression_function, [sym_expression_function_parameter] = sym_expression_function_parameter, @@ -443,6 +460,7 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym_type_declaration_variables_repeat1] = aux_sym_type_declaration_variables_repeat1, [aux_sym_type_declaration_constructor_fields_repeat1] = aux_sym_type_declaration_constructor_fields_repeat1, [aux_sym_type_closed_record_repeat1] = aux_sym_type_closed_record_repeat1, + [aux_sym_expression_let_repeat1] = aux_sym_expression_let_repeat1, [aux_sym_expression_function_repeat1] = aux_sym_expression_function_repeat1, [aux_sym_expression_match_repeat1] = aux_sym_expression_match_repeat1, [aux_sym_expression_call_arguments_repeat1] = aux_sym_expression_call_arguments_repeat1, @@ -531,6 +549,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_let] = { + .visible = true, + .named = false, + }, + [anon_sym_in] = { + .visible = true, + .named = false, + }, [anon_sym_PIPE_GT] = { .visible = true, .named = false, @@ -571,10 +597,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_let] = { - .visible = true, - .named = false, - }, [anon_sym_return] = { .visible = true, .named = false, @@ -815,6 +837,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, + [sym__expression4] = { + .visible = false, + .named = true, + }, + [sym__expression3] = { + .visible = false, + .named = true, + }, [sym__expression2] = { .visible = false, .named = true, @@ -827,6 +857,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, + [sym_expression_let] = { + .visible = true, + .named = true, + }, + [sym_expression_let_value_declaration] = { + .visible = true, + .named = true, + }, [sym_expression_right_pipe] = { .visible = true, .named = true, @@ -999,6 +1037,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [aux_sym_expression_let_repeat1] = { + .visible = false, + .named = false, + }, [aux_sym_expression_function_repeat1] = { .visible = false, .named = false, @@ -1029,40 +1071,41 @@ enum { field_arm = 5, field_bind_expression = 6, field_bind_name = 7, - field_body = 8, - field_condition = 9, - field_constructor = 10, - field_declaration = 11, - field_element = 12, - field_exports = 13, - field_expression = 14, - field_false_clause = 15, - field_field = 16, - field_fields = 17, - field_function = 18, - field_header = 19, - field_import = 20, - field_imports = 21, - field_label = 22, - field_let_binder = 23, - field_let_expression = 24, - field_lhs = 25, - field_match_arm_expression = 26, - field_match_arm_pattern = 27, - field_module_name = 28, - field_name = 29, - field_package = 30, - field_parameter = 31, - field_pattern = 32, - field_rest = 33, - field_return_type = 34, - field_rhs = 35, - field_target = 36, - field_true_clause = 37, - field_type_annotation = 38, - field_value = 39, - field_variable = 40, - field_variables = 41, + field_binder = 8, + field_body = 9, + field_condition = 10, + field_constructor = 11, + field_declaration = 12, + field_element = 13, + field_exports = 14, + field_expression = 15, + field_false_clause = 16, + field_field = 17, + field_fields = 18, + field_function = 19, + field_header = 20, + field_import = 21, + field_imports = 22, + field_label = 23, + field_let_binder = 24, + field_let_expression = 25, + field_lhs = 26, + field_match_arm_expression = 27, + field_match_arm_pattern = 28, + field_module_name = 29, + field_name = 30, + field_package = 31, + field_parameter = 32, + field_pattern = 33, + field_rest = 34, + field_return_type = 35, + field_rhs = 36, + field_target = 37, + field_true_clause = 38, + field_type_annotation = 39, + field_value = 40, + field_variable = 41, + field_variables = 42, }; static const char * const ts_field_names[] = { @@ -1074,6 +1117,7 @@ static const char * const ts_field_names[] = { [field_arm] = "arm", [field_bind_expression] = "bind_expression", [field_bind_name] = "bind_name", + [field_binder] = "binder", [field_body] = "body", [field_condition] = "condition", [field_constructor] = "constructor", @@ -1154,32 +1198,34 @@ static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [41] = {.index = 87, .length = 4}, [42] = {.index = 91, .length = 2}, [43] = {.index = 93, .length = 3}, - [44] = {.index = 96, .length = 1}, - [45] = {.index = 97, .length = 2}, - [46] = {.index = 99, .length = 1}, - [47] = {.index = 100, .length = 3}, - [48] = {.index = 103, .length = 2}, + [44] = {.index = 96, .length = 2}, + [45] = {.index = 98, .length = 1}, + [46] = {.index = 99, .length = 2}, + [47] = {.index = 101, .length = 1}, + [48] = {.index = 102, .length = 3}, [49] = {.index = 105, .length = 2}, - [50] = {.index = 107, .length = 1}, - [51] = {.index = 108, .length = 5}, - [52] = {.index = 113, .length = 3}, - [53] = {.index = 116, .length = 2}, - [54] = {.index = 118, .length = 2}, - [55] = {.index = 120, .length = 3}, - [56] = {.index = 123, .length = 3}, - [57] = {.index = 126, .length = 3}, - [58] = {.index = 129, .length = 2}, - [59] = {.index = 131, .length = 4}, - [60] = {.index = 135, .length = 3}, - [61] = {.index = 138, .length = 3}, - [62] = {.index = 141, .length = 2}, + [50] = {.index = 107, .length = 2}, + [51] = {.index = 109, .length = 1}, + [52] = {.index = 110, .length = 5}, + [53] = {.index = 115, .length = 3}, + [54] = {.index = 118, .length = 3}, + [55] = {.index = 121, .length = 2}, + [56] = {.index = 123, .length = 2}, + [57] = {.index = 125, .length = 3}, + [58] = {.index = 128, .length = 3}, + [59] = {.index = 131, .length = 3}, + [60] = {.index = 134, .length = 2}, + [61] = {.index = 136, .length = 4}, + [62] = {.index = 140, .length = 3}, [63] = {.index = 143, .length = 3}, - [64] = {.index = 146, .length = 4}, - [65] = {.index = 150, .length = 3}, - [66] = {.index = 153, .length = 4}, - [67] = {.index = 157, .length = 4}, - [68] = {.index = 161, .length = 3}, - [69] = {.index = 164, .length = 5}, + [64] = {.index = 146, .length = 2}, + [65] = {.index = 148, .length = 3}, + [66] = {.index = 151, .length = 4}, + [67] = {.index = 155, .length = 3}, + [68] = {.index = 158, .length = 4}, + [69] = {.index = 162, .length = 4}, + [70] = {.index = 166, .length = 3}, + [71] = {.index = 169, .length = 5}, }; static const TSFieldMapEntry ts_field_map_entries[] = { @@ -1323,99 +1369,106 @@ static const TSFieldMapEntry ts_field_map_entries[] = { {field_field, 2}, {field_field, 3}, [96] = + {field_binder, 0}, + {field_expression, 2}, + [98] = {field_body, 4}, - [97] = + [99] = {field_arm, 3}, {field_expression, 1}, - [99] = + [101] = {field_rest, 2}, - [100] = + [102] = {field_element, 1}, {field_element, 2}, {field_element, 3}, - [103] = + [105] = {field_argument, 1}, {field_argument, 2}, - [105] = + [107] = {field_parameter, 1}, {field_return_type, 4}, - [107] = + [109] = {field_field, 3}, - [108] = + [110] = {field_constructor, 4}, {field_constructor, 5}, {field_constructor, 6}, {field_name, 1}, {field_variables, 2}, - [113] = + [115] = {field_field, 3}, {field_field, 4}, {field_target, 1}, - [116] = + [118] = + {field_binder, 0}, + {field_expression, 3}, + {field_type_annotation, 1}, + [121] = {field_body, 5}, {field_return_type, 3}, - [118] = + [123] = {field_body, 5}, {field_parameter, 2}, - [120] = + [125] = {field_condition, 1}, {field_false_clause, 5}, {field_true_clause, 3}, - [123] = + [128] = {field_argument, 1}, {field_argument, 2}, {field_argument, 3}, - [126] = + [131] = {field_parameter, 1}, {field_parameter, 2}, {field_return_type, 5}, - [129] = + [134] = {field_field, 3}, {field_field, 4}, - [131] = + [136] = {field_field, 3}, {field_field, 4}, {field_field, 5}, {field_target, 1}, - [135] = + [140] = {field_body, 6}, {field_parameter, 2}, {field_return_type, 4}, - [138] = + [143] = {field_body, 6}, {field_parameter, 2}, {field_parameter, 3}, - [141] = + [146] = {field_match_arm_expression, 3}, {field_match_arm_pattern, 1}, - [143] = + [148] = {field_bind_expression, 2}, {field_bind_name, 0}, {field_rest, 4}, - [146] = + [151] = {field_parameter, 1}, {field_parameter, 2}, {field_parameter, 3}, {field_return_type, 6}, - [150] = + [155] = {field_field, 3}, {field_field, 4}, {field_field, 5}, - [153] = + [158] = {field_body, 7}, {field_parameter, 2}, {field_parameter, 3}, {field_return_type, 5}, - [157] = + [162] = {field_body, 7}, {field_parameter, 2}, {field_parameter, 3}, {field_parameter, 4}, - [161] = + [166] = {field_let_binder, 1}, {field_let_expression, 3}, {field_rest, 5}, - [164] = + [169] = {field_body, 8}, {field_parameter, 2}, {field_parameter, 3}, @@ -4544,744 +4597,766 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(73); + if (eof) ADVANCE(74); if (lookahead == '"') ADVANCE(4); - if (lookahead == '(') ADVANCE(82); - if (lookahead == ')') ADVANCE(83); - if (lookahead == ',') ADVANCE(84); + if (lookahead == '(') ADVANCE(83); + if (lookahead == ')') ADVANCE(84); + if (lookahead == ',') ADVANCE(85); if (lookahead == '-') ADVANCE(8); - if (lookahead == '.') ADVANCE(78); - if (lookahead == ':') ADVANCE(94); - if (lookahead == ';') ADVANCE(76); + if (lookahead == '.') ADVANCE(79); + if (lookahead == ':') ADVANCE(95); + if (lookahead == ';') ADVANCE(77); if (lookahead == '<') ADVANCE(9); - if (lookahead == '=') ADVANCE(89); - if (lookahead == '[') ADVANCE(115); - if (lookahead == ']') ADVANCE(116); - if (lookahead == '_') ADVANCE(167); - if (lookahead == 'a') ADVANCE(38); - if (lookahead == 'd') ADVANCE(45); - if (lookahead == 'e') ADVANCE(37); - if (lookahead == 'f') ADVANCE(12); - if (lookahead == 'i') ADVANCE(27); - if (lookahead == 'l') ADVANCE(18); - if (lookahead == 'm') ADVANCE(14); - if (lookahead == 'r') ADVANCE(26); - if (lookahead == 't') ADVANCE(32); - if (lookahead == 'u') ADVANCE(44); - if (lookahead == 'w') ADVANCE(35); - if (lookahead == '{') ADVANCE(92); - if (lookahead == '|') ADVANCE(90); - if (lookahead == '}') ADVANCE(93); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(118); + if (lookahead == '=') ADVANCE(90); + if (lookahead == '[') ADVANCE(118); + if (lookahead == ']') ADVANCE(119); + if (lookahead == '_') ADVANCE(171); + if (lookahead == 'a') ADVANCE(39); + if (lookahead == 'd') ADVANCE(46); + if (lookahead == 'e') ADVANCE(38); + if (lookahead == 'f') ADVANCE(13); + if (lookahead == 'i') ADVANCE(28); + if (lookahead == 'l') ADVANCE(19); + if (lookahead == 'm') ADVANCE(15); + if (lookahead == 'r') ADVANCE(27); + if (lookahead == 't') ADVANCE(33); + if (lookahead == 'u') ADVANCE(45); + if (lookahead == 'w') ADVANCE(36); + if (lookahead == '{') ADVANCE(93); + if (lookahead == '|') ADVANCE(91); + if (lookahead == '}') ADVANCE(94); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121); if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(0) - if (sym__proper_name_character_set_1(lookahead)) ADVANCE(126); + if (sym__proper_name_character_set_1(lookahead)) ADVANCE(129); END_STATE(); case 1: if (lookahead == '"') ADVANCE(4); - if (lookahead == '(') ADVANCE(82); - if (lookahead == ')') ADVANCE(83); - if (lookahead == ',') ADVANCE(84); + if (lookahead == '(') ADVANCE(83); + if (lookahead == ')') ADVANCE(84); + if (lookahead == ',') ADVANCE(85); if (lookahead == '-') ADVANCE(8); - if (lookahead == '.') ADVANCE(77); - if (lookahead == ':') ADVANCE(94); - if (lookahead == ';') ADVANCE(76); + if (lookahead == '.') ADVANCE(78); + if (lookahead == ':') ADVANCE(95); + if (lookahead == ';') ADVANCE(77); if (lookahead == '<') ADVANCE(9); - if (lookahead == '=') ADVANCE(89); - if (lookahead == '[') ADVANCE(115); - if (lookahead == 'd') ADVANCE(148); - if (lookahead == 'f') ADVANCE(128); - if (lookahead == 'i') ADVANCE(138); - if (lookahead == 'l') ADVANCE(132); - if (lookahead == 'm') ADVANCE(130); - if (lookahead == 'r') ADVANCE(137); - if (lookahead == 't') ADVANCE(153); - if (lookahead == 'u') ADVANCE(145); - if (lookahead == '{') ADVANCE(92); - if (lookahead == '|') ADVANCE(90); - if (lookahead == '}') ADVANCE(93); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(118); + if (lookahead == '=') ADVANCE(90); + if (lookahead == '[') ADVANCE(118); + if (lookahead == 'd') ADVANCE(152); + if (lookahead == 'f') ADVANCE(131); + if (lookahead == 'i') ADVANCE(141); + if (lookahead == 'l') ADVANCE(135); + if (lookahead == 'm') ADVANCE(133); + if (lookahead == 'r') ADVANCE(140); + if (lookahead == 't') ADVANCE(157); + if (lookahead == 'u') ADVANCE(148); + if (lookahead == '{') ADVANCE(93); + if (lookahead == '|') ADVANCE(91); + if (lookahead == '}') ADVANCE(94); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121); if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(1) - if (sym__proper_name_character_set_1(lookahead)) ADVANCE(126); - if (sym__name_character_set_1(lookahead)) ADVANCE(166); + if (sym__proper_name_character_set_1(lookahead)) ADVANCE(129); + if (sym__name_character_set_1(lookahead)) ADVANCE(170); END_STATE(); case 2: if (lookahead == '"') ADVANCE(4); - if (lookahead == '(') ADVANCE(82); - if (lookahead == ')') ADVANCE(83); + if (lookahead == '(') ADVANCE(83); + if (lookahead == ')') ADVANCE(84); if (lookahead == '-') ADVANCE(7); - if (lookahead == '.') ADVANCE(11); - if (lookahead == '[') ADVANCE(115); - if (lookahead == ']') ADVANCE(116); - if (lookahead == 'd') ADVANCE(148); - if (lookahead == 'f') ADVANCE(128); - if (lookahead == 'i') ADVANCE(138); - if (lookahead == 'm') ADVANCE(130); - if (lookahead == 't') ADVANCE(153); - if (lookahead == 'u') ADVANCE(145); - if (lookahead == '{') ADVANCE(92); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(118); + if (lookahead == '.') ADVANCE(12); + if (lookahead == '[') ADVANCE(118); + if (lookahead == ']') ADVANCE(119); + if (lookahead == 'd') ADVANCE(152); + if (lookahead == 'f') ADVANCE(131); + if (lookahead == 'i') ADVANCE(141); + if (lookahead == 'l') ADVANCE(135); + if (lookahead == 'm') ADVANCE(133); + if (lookahead == 't') ADVANCE(157); + if (lookahead == 'u') ADVANCE(148); + if (lookahead == '{') ADVANCE(93); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121); if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(2) - if (sym__proper_name_character_set_1(lookahead)) ADVANCE(126); - if (sym__name_character_set_1(lookahead)) ADVANCE(166); + if (sym__proper_name_character_set_1(lookahead)) ADVANCE(129); + if (sym__name_character_set_1(lookahead)) ADVANCE(170); END_STATE(); case 3: if (lookahead == '"') ADVANCE(4); - if (lookahead == '(') ADVANCE(82); + if (lookahead == '(') ADVANCE(83); if (lookahead == '-') ADVANCE(7); - if (lookahead == '[') ADVANCE(115); - if (lookahead == 'f') ADVANCE(129); - if (lookahead == 't') ADVANCE(153); - if (lookahead == 'u') ADVANCE(145); - if (lookahead == '{') ADVANCE(92); - if (lookahead == '}') ADVANCE(93); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(118); + if (lookahead == '[') ADVANCE(118); + if (lookahead == 'f') ADVANCE(132); + if (lookahead == 't') ADVANCE(157); + if (lookahead == 'u') ADVANCE(148); + if (lookahead == '{') ADVANCE(93); + if (lookahead == '}') ADVANCE(94); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121); if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(3) - if (sym__proper_name_character_set_1(lookahead)) ADVANCE(126); - if (sym__name_character_set_1(lookahead)) ADVANCE(166); + if (sym__proper_name_character_set_1(lookahead)) ADVANCE(129); + if (sym__name_character_set_1(lookahead)) ADVANCE(170); END_STATE(); case 4: - if (lookahead == '"') ADVANCE(117); + if (lookahead == '"') ADVANCE(120); if (lookahead != 0) ADVANCE(4); END_STATE(); case 5: - if (lookahead == '(') ADVANCE(82); - if (lookahead == ')') ADVANCE(83); - if (lookahead == ',') ADVANCE(84); + if (lookahead == '(') ADVANCE(83); + if (lookahead == ')') ADVANCE(84); + if (lookahead == ',') ADVANCE(85); if (lookahead == '-') ADVANCE(7); - if (lookahead == '.') ADVANCE(77); - if (lookahead == ';') ADVANCE(76); - if (lookahead == '=') ADVANCE(89); - if (lookahead == ']') ADVANCE(116); - if (lookahead == 'a') ADVANCE(55); - if (lookahead == 'e') ADVANCE(37); - if (lookahead == 't') ADVANCE(31); - if (lookahead == 'w') ADVANCE(35); - if (lookahead == '|') ADVANCE(90); - if (lookahead == '}') ADVANCE(93); + if (lookahead == '.') ADVANCE(78); + if (lookahead == ';') ADVANCE(77); + if (lookahead == '=') ADVANCE(90); + if (lookahead == ']') ADVANCE(119); + if (lookahead == 'a') ADVANCE(56); + if (lookahead == 'e') ADVANCE(38); + if (lookahead == 't') ADVANCE(32); + if (lookahead == 'w') ADVANCE(36); + if (lookahead == '|') ADVANCE(91); + if (lookahead == '}') ADVANCE(94); if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(5) END_STATE(); case 6: - if (lookahead == '(') ADVANCE(82); - if (lookahead == ')') ADVANCE(83); + if (lookahead == '(') ADVANCE(83); + if (lookahead == ')') ADVANCE(84); if (lookahead == '-') ADVANCE(7); - if (lookahead == '.') ADVANCE(11); - if (lookahead == '_') ADVANCE(167); - if (lookahead == '{') ADVANCE(92); - if (lookahead == '}') ADVANCE(93); + if (lookahead == '.') ADVANCE(12); + if (lookahead == '_') ADVANCE(171); + if (lookahead == '{') ADVANCE(93); + if (lookahead == '}') ADVANCE(94); if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(6) - if (sym__proper_name_character_set_1(lookahead)) ADVANCE(126); - if (sym__name_character_set_1(lookahead)) ADVANCE(166); + if (sym__proper_name_character_set_1(lookahead)) ADVANCE(129); + if (sym__name_character_set_1(lookahead)) ADVANCE(170); END_STATE(); case 7: - if (lookahead == '-') ADVANCE(168); + if (lookahead == '-') ADVANCE(172); END_STATE(); case 8: - if (lookahead == '-') ADVANCE(168); - if (lookahead == '>') ADVANCE(91); + if (lookahead == '-') ADVANCE(172); + if (lookahead == '>') ADVANCE(92); END_STATE(); case 9: - if (lookahead == '-') ADVANCE(110); + if (lookahead == '-') ADVANCE(115); END_STATE(); case 10: if (lookahead == '-') ADVANCE(7); + if (lookahead == '_') ADVANCE(171); + if (lookahead == 'i') ADVANCE(151); if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(10) - if (sym__package_name_character_set_1(lookahead)) ADVANCE(127); + if (sym__proper_name_character_set_1(lookahead)) ADVANCE(129); + if (sym__name_character_set_1(lookahead)) ADVANCE(170); END_STATE(); case 11: - if (lookahead == '.') ADVANCE(85); + if (lookahead == '-') ADVANCE(7); + if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(11) + if (sym__package_name_character_set_1(lookahead)) ADVANCE(130); END_STATE(); case 12: - if (lookahead == 'a') ADVANCE(40); - if (lookahead == 'n') ADVANCE(98); - if (lookahead == 'o') ADVANCE(52); + if (lookahead == '.') ADVANCE(86); END_STATE(); case 13: - if (lookahead == 'a') ADVANCE(56); + if (lookahead == 'a') ADVANCE(41); + if (lookahead == 'n') ADVANCE(103); + if (lookahead == 'o') ADVANCE(53); END_STATE(); case 14: - if (lookahead == 'a') ADVANCE(61); - if (lookahead == 'o') ADVANCE(17); + if (lookahead == 'a') ADVANCE(57); END_STATE(); case 15: - if (lookahead == 'c') ADVANCE(30); + if (lookahead == 'a') ADVANCE(62); + if (lookahead == 'o') ADVANCE(18); END_STATE(); case 16: - if (lookahead == 'd') ADVANCE(107); + if (lookahead == 'c') ADVANCE(31); END_STATE(); case 17: - if (lookahead == 'd') ADVANCE(67); + if (lookahead == 'd') ADVANCE(112); END_STATE(); case 18: - if (lookahead == 'e') ADVANCE(60); + if (lookahead == 'd') ADVANCE(68); END_STATE(); case 19: - if (lookahead == 'e') ADVANCE(103); + if (lookahead == 'e') ADVANCE(61); END_STATE(); case 20: - if (lookahead == 'e') ADVANCE(120); + if (lookahead == 'e') ADVANCE(108); END_STATE(); case 21: - if (lookahead == 'e') ADVANCE(86); + if (lookahead == 'e') ADVANCE(123); END_STATE(); case 22: - if (lookahead == 'e') ADVANCE(122); + if (lookahead == 'e') ADVANCE(87); END_STATE(); case 23: - if (lookahead == 'e') ADVANCE(74); + if (lookahead == 'e') ADVANCE(125); END_STATE(); case 24: - if (lookahead == 'e') ADVANCE(41); + if (lookahead == 'e') ADVANCE(75); END_STATE(); case 25: - if (lookahead == 'e') ADVANCE(34); + if (lookahead == 'e') ADVANCE(42); END_STATE(); case 26: - if (lookahead == 'e') ADVANCE(66); + if (lookahead == 'e') ADVANCE(35); END_STATE(); case 27: - if (lookahead == 'f') ADVANCE(100); - if (lookahead == 'm') ADVANCE(50); + if (lookahead == 'e') ADVANCE(67); END_STATE(); case 28: - if (lookahead == 'g') ADVANCE(43); + if (lookahead == 'f') ADVANCE(105); + if (lookahead == 'm') ADVANCE(51); + if (lookahead == 'n') ADVANCE(100); END_STATE(); case 29: - if (lookahead == 'h') ADVANCE(106); + if (lookahead == 'g') ADVANCE(44); END_STATE(); case 30: - if (lookahead == 'h') ADVANCE(104); + if (lookahead == 'h') ADVANCE(111); END_STATE(); case 31: - if (lookahead == 'h') ADVANCE(24); + if (lookahead == 'h') ADVANCE(109); END_STATE(); case 32: - if (lookahead == 'h') ADVANCE(24); - if (lookahead == 'r') ADVANCE(69); - if (lookahead == 'y') ADVANCE(49); + if (lookahead == 'h') ADVANCE(25); END_STATE(); case 33: - if (lookahead == 'i') ADVANCE(13); + if (lookahead == 'h') ADVANCE(25); + if (lookahead == 'r') ADVANCE(70); + if (lookahead == 'y') ADVANCE(50); END_STATE(); case 34: - if (lookahead == 'i') ADVANCE(28); + if (lookahead == 'i') ADVANCE(14); END_STATE(); case 35: - if (lookahead == 'i') ADVANCE(62); + if (lookahead == 'i') ADVANCE(29); END_STATE(); case 36: if (lookahead == 'i') ADVANCE(63); END_STATE(); case 37: - if (lookahead == 'l') ADVANCE(58); - if (lookahead == 'n') ADVANCE(16); - if (lookahead == 'x') ADVANCE(48); + if (lookahead == 'i') ADVANCE(64); END_STATE(); case 38: - if (lookahead == 'l') ADVANCE(33); - if (lookahead == 's') ADVANCE(81); + if (lookahead == 'l') ADVANCE(59); + if (lookahead == 'n') ADVANCE(17); + if (lookahead == 'x') ADVANCE(49); END_STATE(); case 39: - if (lookahead == 'l') ADVANCE(23); + if (lookahead == 'l') ADVANCE(34); + if (lookahead == 's') ADVANCE(82); END_STATE(); case 40: - if (lookahead == 'l') ADVANCE(59); + if (lookahead == 'l') ADVANCE(24); END_STATE(); case 41: - if (lookahead == 'n') ADVANCE(102); + if (lookahead == 'l') ADVANCE(60); END_STATE(); case 42: - if (lookahead == 'n') ADVANCE(113); + if (lookahead == 'n') ADVANCE(107); END_STATE(); case 43: - if (lookahead == 'n') ADVANCE(95); + if (lookahead == 'n') ADVANCE(116); END_STATE(); case 44: - if (lookahead == 'n') ADVANCE(36); + if (lookahead == 'n') ADVANCE(96); END_STATE(); case 45: - if (lookahead == 'o') ADVANCE(108); + if (lookahead == 'n') ADVANCE(37); END_STATE(); case 46: - if (lookahead == 'o') ADVANCE(53); + if (lookahead == 'o') ADVANCE(113); END_STATE(); case 47: if (lookahead == 'o') ADVANCE(54); END_STATE(); case 48: - if (lookahead == 'p') ADVANCE(46); + if (lookahead == 'o') ADVANCE(55); END_STATE(); case 49: - if (lookahead == 'p') ADVANCE(21); + if (lookahead == 'p') ADVANCE(47); END_STATE(); case 50: - if (lookahead == 'p') ADVANCE(47); + if (lookahead == 'p') ADVANCE(22); END_STATE(); case 51: - if (lookahead == 'r') ADVANCE(42); + if (lookahead == 'p') ADVANCE(48); END_STATE(); case 52: - if (lookahead == 'r') ADVANCE(25); + if (lookahead == 'r') ADVANCE(43); END_STATE(); case 53: - if (lookahead == 'r') ADVANCE(65); + if (lookahead == 'r') ADVANCE(26); END_STATE(); case 54: - if (lookahead == 'r') ADVANCE(64); + if (lookahead == 'r') ADVANCE(66); END_STATE(); case 55: - if (lookahead == 's') ADVANCE(81); + if (lookahead == 'r') ADVANCE(65); END_STATE(); case 56: - if (lookahead == 's') ADVANCE(88); + if (lookahead == 's') ADVANCE(82); END_STATE(); case 57: - if (lookahead == 's') ADVANCE(75); + if (lookahead == 's') ADVANCE(89); END_STATE(); case 58: - if (lookahead == 's') ADVANCE(19); + if (lookahead == 's') ADVANCE(76); END_STATE(); case 59: - if (lookahead == 's') ADVANCE(22); + if (lookahead == 's') ADVANCE(20); END_STATE(); case 60: - if (lookahead == 't') ADVANCE(111); + if (lookahead == 's') ADVANCE(23); END_STATE(); case 61: - if (lookahead == 't') ADVANCE(15); + if (lookahead == 't') ADVANCE(98); END_STATE(); case 62: - if (lookahead == 't') ADVANCE(29); + if (lookahead == 't') ADVANCE(16); END_STATE(); case 63: - if (lookahead == 't') ADVANCE(124); + if (lookahead == 't') ADVANCE(30); END_STATE(); case 64: - if (lookahead == 't') ADVANCE(79); + if (lookahead == 't') ADVANCE(127); END_STATE(); case 65: - if (lookahead == 't') ADVANCE(57); + if (lookahead == 't') ADVANCE(80); END_STATE(); case 66: - if (lookahead == 't') ADVANCE(68); + if (lookahead == 't') ADVANCE(58); END_STATE(); case 67: - if (lookahead == 'u') ADVANCE(39); + if (lookahead == 't') ADVANCE(69); END_STATE(); case 68: - if (lookahead == 'u') ADVANCE(51); + if (lookahead == 'u') ADVANCE(40); END_STATE(); case 69: - if (lookahead == 'u') ADVANCE(20); + if (lookahead == 'u') ADVANCE(52); END_STATE(); case 70: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(119); + if (lookahead == 'u') ADVANCE(21); END_STATE(); case 71: - if (eof) ADVANCE(73); - if (lookahead == '-') ADVANCE(7); - if (lookahead == 'f') ADVANCE(149); - if (lookahead == 'i') ADVANCE(144); - if (lookahead == 't') ADVANCE(165); - if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(71) - if (sym__package_name_character_set_1(lookahead)) ADVANCE(166); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(122); END_STATE(); case 72: - if (eof) ADVANCE(73); + if (eof) ADVANCE(74); if (lookahead == '-') ADVANCE(7); - if (lookahead == 'f') ADVANCE(149); - if (lookahead == 't') ADVANCE(165); + if (lookahead == 'f') ADVANCE(153); + if (lookahead == 'i') ADVANCE(147); + if (lookahead == 't') ADVANCE(169); if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(72) - if (sym__package_name_character_set_1(lookahead)) ADVANCE(166); + if (sym__package_name_character_set_1(lookahead)) ADVANCE(170); END_STATE(); case 73: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (eof) ADVANCE(74); + if (lookahead == '-') ADVANCE(7); + if (lookahead == 'f') ADVANCE(153); + if (lookahead == 't') ADVANCE(169); + if (anon_sym_LPAREN_character_set_1(lookahead)) SKIP(73) + if (sym__package_name_character_set_1(lookahead)) ADVANCE(170); END_STATE(); case 74: - ACCEPT_TOKEN(anon_sym_module); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 75: - ACCEPT_TOKEN(anon_sym_exports); + ACCEPT_TOKEN(anon_sym_module); END_STATE(); case 76: - ACCEPT_TOKEN(anon_sym_SEMI); + ACCEPT_TOKEN(anon_sym_exports); END_STATE(); case 77: - ACCEPT_TOKEN(anon_sym_DOT); + ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 78: ACCEPT_TOKEN(anon_sym_DOT); - if (lookahead == '.') ADVANCE(85); END_STATE(); case 79: - ACCEPT_TOKEN(anon_sym_import); + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == '.') ADVANCE(86); END_STATE(); case 80: ACCEPT_TOKEN(anon_sym_import); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); END_STATE(); case 81: - ACCEPT_TOKEN(anon_sym_as); + ACCEPT_TOKEN(anon_sym_import); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 82: - ACCEPT_TOKEN(anon_sym_LPAREN); + ACCEPT_TOKEN(anon_sym_as); END_STATE(); case 83: - ACCEPT_TOKEN(anon_sym_RPAREN); + ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 84: - ACCEPT_TOKEN(anon_sym_COMMA); + ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 85: - ACCEPT_TOKEN(anon_sym_DOT_DOT); + ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 86: - ACCEPT_TOKEN(anon_sym_type); + ACCEPT_TOKEN(anon_sym_DOT_DOT); END_STATE(); case 87: ACCEPT_TOKEN(anon_sym_type); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); END_STATE(); case 88: - ACCEPT_TOKEN(anon_sym_alias); + ACCEPT_TOKEN(anon_sym_type); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 89: - ACCEPT_TOKEN(anon_sym_EQ); + ACCEPT_TOKEN(anon_sym_alias); END_STATE(); case 90: - ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '>') ADVANCE(97); + ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); case 91: - ACCEPT_TOKEN(anon_sym_DASH_GT); + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '>') ADVANCE(102); END_STATE(); case 92: - ACCEPT_TOKEN(anon_sym_LBRACE); + ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 93: - ACCEPT_TOKEN(anon_sym_RBRACE); + ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 94: - ACCEPT_TOKEN(anon_sym_COLON); + ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 95: - ACCEPT_TOKEN(anon_sym_foreign); + ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 96: ACCEPT_TOKEN(anon_sym_foreign); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); END_STATE(); case 97: - ACCEPT_TOKEN(anon_sym_PIPE_GT); + ACCEPT_TOKEN(anon_sym_foreign); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 98: - ACCEPT_TOKEN(anon_sym_fn); + ACCEPT_TOKEN(anon_sym_let); END_STATE(); case 99: - ACCEPT_TOKEN(anon_sym_fn); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(anon_sym_let); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 100: - ACCEPT_TOKEN(anon_sym_if); + ACCEPT_TOKEN(anon_sym_in); END_STATE(); case 101: - ACCEPT_TOKEN(anon_sym_if); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(anon_sym_in); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 102: - ACCEPT_TOKEN(anon_sym_then); + ACCEPT_TOKEN(anon_sym_PIPE_GT); END_STATE(); case 103: - ACCEPT_TOKEN(anon_sym_else); + ACCEPT_TOKEN(anon_sym_fn); END_STATE(); case 104: - ACCEPT_TOKEN(anon_sym_match); + ACCEPT_TOKEN(anon_sym_fn); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 105: - ACCEPT_TOKEN(anon_sym_match); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(anon_sym_if); END_STATE(); case 106: - ACCEPT_TOKEN(anon_sym_with); + ACCEPT_TOKEN(anon_sym_if); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 107: - ACCEPT_TOKEN(anon_sym_end); + ACCEPT_TOKEN(anon_sym_then); END_STATE(); case 108: - ACCEPT_TOKEN(anon_sym_do); + ACCEPT_TOKEN(anon_sym_else); END_STATE(); case 109: - ACCEPT_TOKEN(anon_sym_do); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(anon_sym_match); END_STATE(); case 110: - ACCEPT_TOKEN(anon_sym_LT_DASH); + ACCEPT_TOKEN(anon_sym_match); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 111: - ACCEPT_TOKEN(anon_sym_let); + ACCEPT_TOKEN(anon_sym_with); END_STATE(); case 112: - ACCEPT_TOKEN(anon_sym_let); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(anon_sym_end); END_STATE(); case 113: - ACCEPT_TOKEN(anon_sym_return); + ACCEPT_TOKEN(anon_sym_do); END_STATE(); case 114: - ACCEPT_TOKEN(anon_sym_return); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(anon_sym_do); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 115: - ACCEPT_TOKEN(anon_sym_LBRACK); + ACCEPT_TOKEN(anon_sym_LT_DASH); END_STATE(); case 116: - ACCEPT_TOKEN(anon_sym_RBRACK); + ACCEPT_TOKEN(anon_sym_return); END_STATE(); case 117: - ACCEPT_TOKEN(sym_expression_string); + ACCEPT_TOKEN(anon_sym_return); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 118: - ACCEPT_TOKEN(sym_expression_int); - if (lookahead == '.') ADVANCE(70); - if (('0' <= lookahead && lookahead <= '9') || - lookahead == '_') ADVANCE(118); + ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 119: - ACCEPT_TOKEN(sym_expression_float); - if (('0' <= lookahead && lookahead <= '9') || - lookahead == '_') ADVANCE(119); + ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 120: - ACCEPT_TOKEN(sym_expression_true); + ACCEPT_TOKEN(sym_expression_string); END_STATE(); case 121: - ACCEPT_TOKEN(sym_expression_true); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(sym_expression_int); + if (lookahead == '.') ADVANCE(71); + if (('0' <= lookahead && lookahead <= '9') || + lookahead == '_') ADVANCE(121); END_STATE(); case 122: - ACCEPT_TOKEN(sym_expression_false); + ACCEPT_TOKEN(sym_expression_float); + if (('0' <= lookahead && lookahead <= '9') || + lookahead == '_') ADVANCE(122); END_STATE(); case 123: - ACCEPT_TOKEN(sym_expression_false); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(sym_expression_true); END_STATE(); case 124: - ACCEPT_TOKEN(sym_expression_unit); + ACCEPT_TOKEN(sym_expression_true); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 125: - ACCEPT_TOKEN(sym_expression_unit); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(sym_expression_false); END_STATE(); case 126: - ACCEPT_TOKEN(sym__proper_name); - if (sym__name_character_set_2(lookahead)) ADVANCE(126); + ACCEPT_TOKEN(sym_expression_false); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 127: - ACCEPT_TOKEN(sym__package_name); - if (sym__package_name_character_set_2(lookahead)) ADVANCE(127); + ACCEPT_TOKEN(sym_expression_unit); END_STATE(); case 128: - ACCEPT_TOKEN(sym__name); - if (lookahead == 'a') ADVANCE(143); - if (lookahead == 'n') ADVANCE(99); - if (sym__name_character_set_3(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(sym_expression_unit); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 129: - ACCEPT_TOKEN(sym__name); - if (lookahead == 'a') ADVANCE(143); - if (sym__name_character_set_3(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(sym__proper_name); + if (sym__name_character_set_2(lookahead)) ADVANCE(129); END_STATE(); case 130: - ACCEPT_TOKEN(sym__name); - if (lookahead == 'a') ADVANCE(159); - if (sym__name_character_set_3(lookahead)) ADVANCE(166); + ACCEPT_TOKEN(sym__package_name); + if (sym__package_name_character_set_2(lookahead)) ADVANCE(130); END_STATE(); case 131: ACCEPT_TOKEN(sym__name); - if (lookahead == 'c') ADVANCE(140); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'a') ADVANCE(146); + if (lookahead == 'n') ADVANCE(104); + if (sym__name_character_set_3(lookahead)) ADVANCE(170); END_STATE(); case 132: ACCEPT_TOKEN(sym__name); - if (lookahead == 'e') ADVANCE(158); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'a') ADVANCE(146); + if (sym__name_character_set_3(lookahead)) ADVANCE(170); END_STATE(); case 133: ACCEPT_TOKEN(sym__name); - if (lookahead == 'e') ADVANCE(121); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'a') ADVANCE(163); + if (sym__name_character_set_3(lookahead)) ADVANCE(170); END_STATE(); case 134: ACCEPT_TOKEN(sym__name); - if (lookahead == 'e') ADVANCE(123); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'c') ADVANCE(143); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 135: ACCEPT_TOKEN(sym__name); - if (lookahead == 'e') ADVANCE(87); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'e') ADVANCE(162); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 136: ACCEPT_TOKEN(sym__name); - if (lookahead == 'e') ADVANCE(141); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'e') ADVANCE(124); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 137: ACCEPT_TOKEN(sym__name); - if (lookahead == 'e') ADVANCE(162); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'e') ADVANCE(126); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 138: ACCEPT_TOKEN(sym__name); - if (lookahead == 'f') ADVANCE(101); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'e') ADVANCE(88); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 139: ACCEPT_TOKEN(sym__name); - if (lookahead == 'g') ADVANCE(147); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'e') ADVANCE(144); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 140: ACCEPT_TOKEN(sym__name); - if (lookahead == 'h') ADVANCE(105); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'e') ADVANCE(166); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 141: ACCEPT_TOKEN(sym__name); - if (lookahead == 'i') ADVANCE(139); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'f') ADVANCE(106); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 142: ACCEPT_TOKEN(sym__name); - if (lookahead == 'i') ADVANCE(160); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'g') ADVANCE(150); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 143: ACCEPT_TOKEN(sym__name); - if (lookahead == 'l') ADVANCE(157); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'h') ADVANCE(110); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 144: ACCEPT_TOKEN(sym__name); - if (lookahead == 'm') ADVANCE(152); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'i') ADVANCE(142); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 145: ACCEPT_TOKEN(sym__name); - if (lookahead == 'n') ADVANCE(142); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'i') ADVANCE(164); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 146: ACCEPT_TOKEN(sym__name); - if (lookahead == 'n') ADVANCE(114); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'l') ADVANCE(161); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 147: ACCEPT_TOKEN(sym__name); - if (lookahead == 'n') ADVANCE(96); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'm') ADVANCE(156); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 148: ACCEPT_TOKEN(sym__name); - if (lookahead == 'o') ADVANCE(109); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'n') ADVANCE(145); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 149: ACCEPT_TOKEN(sym__name); - if (lookahead == 'o') ADVANCE(155); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'n') ADVANCE(117); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 150: ACCEPT_TOKEN(sym__name); - if (lookahead == 'o') ADVANCE(156); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'n') ADVANCE(97); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 151: ACCEPT_TOKEN(sym__name); - if (lookahead == 'p') ADVANCE(135); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'n') ADVANCE(101); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 152: ACCEPT_TOKEN(sym__name); - if (lookahead == 'p') ADVANCE(150); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'o') ADVANCE(114); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 153: ACCEPT_TOKEN(sym__name); - if (lookahead == 'r') ADVANCE(163); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'o') ADVANCE(159); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 154: ACCEPT_TOKEN(sym__name); - if (lookahead == 'r') ADVANCE(146); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'o') ADVANCE(160); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 155: ACCEPT_TOKEN(sym__name); - if (lookahead == 'r') ADVANCE(136); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'p') ADVANCE(138); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 156: ACCEPT_TOKEN(sym__name); - if (lookahead == 'r') ADVANCE(161); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'p') ADVANCE(154); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 157: ACCEPT_TOKEN(sym__name); - if (lookahead == 's') ADVANCE(134); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'r') ADVANCE(167); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 158: ACCEPT_TOKEN(sym__name); - if (lookahead == 't') ADVANCE(112); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'r') ADVANCE(149); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 159: ACCEPT_TOKEN(sym__name); - if (lookahead == 't') ADVANCE(131); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'r') ADVANCE(139); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 160: ACCEPT_TOKEN(sym__name); - if (lookahead == 't') ADVANCE(125); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 'r') ADVANCE(165); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 161: ACCEPT_TOKEN(sym__name); - if (lookahead == 't') ADVANCE(80); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 's') ADVANCE(137); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 162: ACCEPT_TOKEN(sym__name); - if (lookahead == 't') ADVANCE(164); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 't') ADVANCE(99); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 163: ACCEPT_TOKEN(sym__name); - if (lookahead == 'u') ADVANCE(133); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 't') ADVANCE(134); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 164: ACCEPT_TOKEN(sym__name); - if (lookahead == 'u') ADVANCE(154); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 't') ADVANCE(128); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 165: ACCEPT_TOKEN(sym__name); - if (lookahead == 'y') ADVANCE(151); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 't') ADVANCE(81); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 166: ACCEPT_TOKEN(sym__name); - if (sym__name_character_set_2(lookahead)) ADVANCE(166); + if (lookahead == 't') ADVANCE(168); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 167: - ACCEPT_TOKEN(sym__unused_name); - if (sym__name_character_set_2(lookahead)) ADVANCE(167); + ACCEPT_TOKEN(sym__name); + if (lookahead == 'u') ADVANCE(136); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); END_STATE(); case 168: + ACCEPT_TOKEN(sym__name); + if (lookahead == 'u') ADVANCE(158); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); + END_STATE(); + case 169: + ACCEPT_TOKEN(sym__name); + if (lookahead == 'y') ADVANCE(155); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); + END_STATE(); + case 170: + ACCEPT_TOKEN(sym__name); + if (sym__name_character_set_2(lookahead)) ADVANCE(170); + END_STATE(); + case 171: + ACCEPT_TOKEN(sym__unused_name); + if (sym__name_character_set_2(lookahead)) ADVANCE(171); + END_STATE(); + case 172: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && - lookahead != '\n') ADVANCE(168); + lookahead != '\n') ADVANCE(172); END_STATE(); default: return false; @@ -5322,19 +5397,19 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [30] = {.lex_state = 2}, [31] = {.lex_state = 2}, [32] = {.lex_state = 2}, - [33] = {.lex_state = 3}, - [34] = {.lex_state = 3}, - [35] = {.lex_state = 71}, - [36] = {.lex_state = 71}, - [37] = {.lex_state = 6}, + [33] = {.lex_state = 2}, + [34] = {.lex_state = 2}, + [35] = {.lex_state = 2}, + [36] = {.lex_state = 3}, + [37] = {.lex_state = 3}, [38] = {.lex_state = 6}, [39] = {.lex_state = 6}, - [40] = {.lex_state = 6}, + [40] = {.lex_state = 72}, [41] = {.lex_state = 6}, [42] = {.lex_state = 6}, [43] = {.lex_state = 6}, [44] = {.lex_state = 6}, - [45] = {.lex_state = 6}, + [45] = {.lex_state = 72}, [46] = {.lex_state = 6}, [47] = {.lex_state = 6}, [48] = {.lex_state = 6}, @@ -5345,174 +5420,174 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [53] = {.lex_state = 6}, [54] = {.lex_state = 6}, [55] = {.lex_state = 6}, - [56] = {.lex_state = 5}, + [56] = {.lex_state = 6}, [57] = {.lex_state = 6}, - [58] = {.lex_state = 5}, + [58] = {.lex_state = 6}, [59] = {.lex_state = 5}, - [60] = {.lex_state = 5}, + [60] = {.lex_state = 6}, [61] = {.lex_state = 5}, - [62] = {.lex_state = 72}, + [62] = {.lex_state = 5}, [63] = {.lex_state = 5}, [64] = {.lex_state = 5}, - [65] = {.lex_state = 5}, + [65] = {.lex_state = 0}, [66] = {.lex_state = 5}, [67] = {.lex_state = 5}, [68] = {.lex_state = 5}, [69] = {.lex_state = 5}, [70] = {.lex_state = 5}, [71] = {.lex_state = 5}, - [72] = {.lex_state = 0}, + [72] = {.lex_state = 5}, [73] = {.lex_state = 5}, - [74] = {.lex_state = 5}, + [74] = {.lex_state = 0}, [75] = {.lex_state = 5}, - [76] = {.lex_state = 72}, - [77] = {.lex_state = 5}, - [78] = {.lex_state = 0}, - [79] = {.lex_state = 5}, - [80] = {.lex_state = 5}, + [76] = {.lex_state = 5}, + [77] = {.lex_state = 73}, + [78] = {.lex_state = 5}, + [79] = {.lex_state = 73}, + [80] = {.lex_state = 73}, [81] = {.lex_state = 5}, [82] = {.lex_state = 5}, - [83] = {.lex_state = 72}, + [83] = {.lex_state = 5}, [84] = {.lex_state = 5}, [85] = {.lex_state = 5}, - [86] = {.lex_state = 0}, - [87] = {.lex_state = 0}, - [88] = {.lex_state = 0}, + [86] = {.lex_state = 5}, + [87] = {.lex_state = 5}, + [88] = {.lex_state = 5}, [89] = {.lex_state = 0}, - [90] = {.lex_state = 6}, - [91] = {.lex_state = 6}, - [92] = {.lex_state = 6}, + [90] = {.lex_state = 0}, + [91] = {.lex_state = 10}, + [92] = {.lex_state = 10}, [93] = {.lex_state = 0}, - [94] = {.lex_state = 0}, - [95] = {.lex_state = 0}, - [96] = {.lex_state = 0}, - [97] = {.lex_state = 6}, - [98] = {.lex_state = 0}, + [94] = {.lex_state = 6}, + [95] = {.lex_state = 6}, + [96] = {.lex_state = 6}, + [97] = {.lex_state = 0}, + [98] = {.lex_state = 6}, [99] = {.lex_state = 0}, [100] = {.lex_state = 0}, - [101] = {.lex_state = 6}, - [102] = {.lex_state = 0}, + [101] = {.lex_state = 0}, + [102] = {.lex_state = 6}, [103] = {.lex_state = 0}, - [104] = {.lex_state = 6}, + [104] = {.lex_state = 0}, [105] = {.lex_state = 6}, - [106] = {.lex_state = 6}, + [106] = {.lex_state = 0}, [107] = {.lex_state = 0}, [108] = {.lex_state = 0}, - [109] = {.lex_state = 6}, - [110] = {.lex_state = 6}, - [111] = {.lex_state = 1}, - [112] = {.lex_state = 0}, + [109] = {.lex_state = 0}, + [110] = {.lex_state = 0}, + [111] = {.lex_state = 6}, + [112] = {.lex_state = 6}, [113] = {.lex_state = 6}, - [114] = {.lex_state = 6}, + [114] = {.lex_state = 0}, [115] = {.lex_state = 0}, - [116] = {.lex_state = 1}, - [117] = {.lex_state = 0}, + [116] = {.lex_state = 6}, + [117] = {.lex_state = 6}, [118] = {.lex_state = 0}, - [119] = {.lex_state = 0}, - [120] = {.lex_state = 0}, - [121] = {.lex_state = 71}, - [122] = {.lex_state = 6}, + [119] = {.lex_state = 1}, + [120] = {.lex_state = 72}, + [121] = {.lex_state = 1}, + [122] = {.lex_state = 0}, [123] = {.lex_state = 0}, [124] = {.lex_state = 0}, - [125] = {.lex_state = 0}, - [126] = {.lex_state = 0}, + [125] = {.lex_state = 6}, + [126] = {.lex_state = 6}, [127] = {.lex_state = 0}, - [128] = {.lex_state = 5}, - [129] = {.lex_state = 1}, + [128] = {.lex_state = 0}, + [129] = {.lex_state = 0}, [130] = {.lex_state = 0}, [131] = {.lex_state = 0}, - [132] = {.lex_state = 0}, - [133] = {.lex_state = 0}, + [132] = {.lex_state = 6}, + [133] = {.lex_state = 5}, [134] = {.lex_state = 0}, - [135] = {.lex_state = 5}, + [135] = {.lex_state = 0}, [136] = {.lex_state = 0}, - [137] = {.lex_state = 0}, - [138] = {.lex_state = 0}, + [137] = {.lex_state = 5}, + [138] = {.lex_state = 1}, [139] = {.lex_state = 0}, [140] = {.lex_state = 0}, - [141] = {.lex_state = 6}, + [141] = {.lex_state = 0}, [142] = {.lex_state = 0}, - [143] = {.lex_state = 5}, + [143] = {.lex_state = 0}, [144] = {.lex_state = 0}, [145] = {.lex_state = 0}, [146] = {.lex_state = 0}, [147] = {.lex_state = 0}, - [148] = {.lex_state = 71}, + [148] = {.lex_state = 0}, [149] = {.lex_state = 0}, - [150] = {.lex_state = 5}, - [151] = {.lex_state = 6}, - [152] = {.lex_state = 71}, - [153] = {.lex_state = 0}, - [154] = {.lex_state = 71}, - [155] = {.lex_state = 0}, - [156] = {.lex_state = 71}, - [157] = {.lex_state = 71}, + [150] = {.lex_state = 6}, + [151] = {.lex_state = 0}, + [152] = {.lex_state = 5}, + [153] = {.lex_state = 72}, + [154] = {.lex_state = 0}, + [155] = {.lex_state = 5}, + [156] = {.lex_state = 0}, + [157] = {.lex_state = 0}, [158] = {.lex_state = 0}, - [159] = {.lex_state = 0}, - [160] = {.lex_state = 71}, - [161] = {.lex_state = 0}, + [159] = {.lex_state = 72}, + [160] = {.lex_state = 0}, + [161] = {.lex_state = 72}, [162] = {.lex_state = 0}, - [163] = {.lex_state = 71}, - [164] = {.lex_state = 0}, + [163] = {.lex_state = 72}, + [164] = {.lex_state = 72}, [165] = {.lex_state = 0}, - [166] = {.lex_state = 0}, + [166] = {.lex_state = 72}, [167] = {.lex_state = 0}, - [168] = {.lex_state = 71}, - [169] = {.lex_state = 71}, + [168] = {.lex_state = 72}, + [169] = {.lex_state = 72}, [170] = {.lex_state = 0}, - [171] = {.lex_state = 72}, + [171] = {.lex_state = 0}, [172] = {.lex_state = 0}, [173] = {.lex_state = 0}, - [174] = {.lex_state = 72}, - [175] = {.lex_state = 72}, - [176] = {.lex_state = 72}, + [174] = {.lex_state = 6}, + [175] = {.lex_state = 0}, + [176] = {.lex_state = 0}, [177] = {.lex_state = 72}, - [178] = {.lex_state = 0}, - [179] = {.lex_state = 6}, - [180] = {.lex_state = 6}, - [181] = {.lex_state = 1}, - [182] = {.lex_state = 72}, - [183] = {.lex_state = 72}, + [178] = {.lex_state = 73}, + [179] = {.lex_state = 73}, + [180] = {.lex_state = 0}, + [181] = {.lex_state = 0}, + [182] = {.lex_state = 6}, + [183] = {.lex_state = 73}, [184] = {.lex_state = 0}, - [185] = {.lex_state = 6}, - [186] = {.lex_state = 0}, - [187] = {.lex_state = 0}, - [188] = {.lex_state = 0}, - [189] = {.lex_state = 6}, + [185] = {.lex_state = 10}, + [186] = {.lex_state = 6}, + [187] = {.lex_state = 6}, + [188] = {.lex_state = 73}, + [189] = {.lex_state = 0}, [190] = {.lex_state = 6}, - [191] = {.lex_state = 6}, - [192] = {.lex_state = 72}, - [193] = {.lex_state = 0}, - [194] = {.lex_state = 72}, - [195] = {.lex_state = 72}, - [196] = {.lex_state = 72}, - [197] = {.lex_state = 0}, + [191] = {.lex_state = 0}, + [192] = {.lex_state = 0}, + [193] = {.lex_state = 73}, + [194] = {.lex_state = 73}, + [195] = {.lex_state = 0}, + [196] = {.lex_state = 1}, + [197] = {.lex_state = 10}, [198] = {.lex_state = 6}, - [199] = {.lex_state = 72}, - [200] = {.lex_state = 0}, - [201] = {.lex_state = 6}, - [202] = {.lex_state = 72}, + [199] = {.lex_state = 73}, + [200] = {.lex_state = 6}, + [201] = {.lex_state = 73}, + [202] = {.lex_state = 73}, [203] = {.lex_state = 6}, - [204] = {.lex_state = 0}, + [204] = {.lex_state = 6}, [205] = {.lex_state = 0}, [206] = {.lex_state = 6}, - [207] = {.lex_state = 0}, + [207] = {.lex_state = 73}, [208] = {.lex_state = 0}, - [209] = {.lex_state = 0}, - [210] = {.lex_state = 0}, + [209] = {.lex_state = 73}, + [210] = {.lex_state = 73}, [211] = {.lex_state = 0}, - [212] = {.lex_state = 0}, + [212] = {.lex_state = 73}, [213] = {.lex_state = 0}, - [214] = {.lex_state = 0}, - [215] = {.lex_state = 6}, + [214] = {.lex_state = 6}, + [215] = {.lex_state = 0}, [216] = {.lex_state = 0}, [217] = {.lex_state = 0}, [218] = {.lex_state = 0}, - [219] = {.lex_state = 6}, + [219] = {.lex_state = 0}, [220] = {.lex_state = 0}, [221] = {.lex_state = 0}, [222] = {.lex_state = 0}, - [223] = {.lex_state = 0}, + [223] = {.lex_state = 6}, [224] = {.lex_state = 0}, [225] = {.lex_state = 0}, [226] = {.lex_state = 0}, @@ -5521,11 +5596,11 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [229] = {.lex_state = 0}, [230] = {.lex_state = 0}, [231] = {.lex_state = 0}, - [232] = {.lex_state = 0}, - [233] = {.lex_state = 0}, + [232] = {.lex_state = 6}, + [233] = {.lex_state = 6}, [234] = {.lex_state = 0}, - [235] = {.lex_state = 6}, - [236] = {.lex_state = 0}, + [235] = {.lex_state = 0}, + [236] = {.lex_state = 6}, [237] = {.lex_state = 0}, [238] = {.lex_state = 0}, [239] = {.lex_state = 0}, @@ -5546,11 +5621,11 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [254] = {.lex_state = 0}, [255] = {.lex_state = 0}, [256] = {.lex_state = 0}, - [257] = {.lex_state = 6}, + [257] = {.lex_state = 0}, [258] = {.lex_state = 0}, [259] = {.lex_state = 0}, [260] = {.lex_state = 0}, - [261] = {.lex_state = 6}, + [261] = {.lex_state = 0}, [262] = {.lex_state = 0}, [263] = {.lex_state = 0}, [264] = {.lex_state = 0}, @@ -5562,39 +5637,39 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [270] = {.lex_state = 0}, [271] = {.lex_state = 0}, [272] = {.lex_state = 0}, - [273] = {.lex_state = 6}, - [274] = {.lex_state = 0}, - [275] = {.lex_state = 6}, - [276] = {.lex_state = 6}, + [273] = {.lex_state = 0}, + [274] = {.lex_state = 6}, + [275] = {.lex_state = 0}, + [276] = {.lex_state = 0}, [277] = {.lex_state = 0}, - [278] = {.lex_state = 6}, + [278] = {.lex_state = 0}, [279] = {.lex_state = 0}, [280] = {.lex_state = 0}, [281] = {.lex_state = 0}, [282] = {.lex_state = 0}, [283] = {.lex_state = 0}, - [284] = {.lex_state = 0}, + [284] = {.lex_state = 6}, [285] = {.lex_state = 0}, [286] = {.lex_state = 0}, [287] = {.lex_state = 0}, [288] = {.lex_state = 0}, [289] = {.lex_state = 0}, [290] = {.lex_state = 0}, - [291] = {.lex_state = 0}, + [291] = {.lex_state = 6}, [292] = {.lex_state = 0}, [293] = {.lex_state = 0}, [294] = {.lex_state = 0}, [295] = {.lex_state = 0}, [296] = {.lex_state = 0}, - [297] = {.lex_state = 6}, - [298] = {.lex_state = 0}, - [299] = {.lex_state = 0}, + [297] = {.lex_state = 0}, + [298] = {.lex_state = 6}, + [299] = {.lex_state = 6}, [300] = {.lex_state = 0}, [301] = {.lex_state = 0}, [302] = {.lex_state = 0}, [303] = {.lex_state = 0}, [304] = {.lex_state = 0}, - [305] = {.lex_state = 0}, + [305] = {.lex_state = 6}, [306] = {.lex_state = 0}, [307] = {.lex_state = 0}, [308] = {.lex_state = 0}, @@ -5637,7 +5712,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [345] = {.lex_state = 0}, [346] = {.lex_state = 0}, [347] = {.lex_state = 0}, - [348] = {.lex_state = 0}, + [348] = {.lex_state = 2}, [349] = {.lex_state = 0}, [350] = {.lex_state = 0}, [351] = {.lex_state = 0}, @@ -5645,17 +5720,30 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [353] = {.lex_state = 0}, [354] = {.lex_state = 0}, [355] = {.lex_state = 0}, - [356] = {.lex_state = 10}, + [356] = {.lex_state = 0}, [357] = {.lex_state = 0}, [358] = {.lex_state = 0}, [359] = {.lex_state = 0}, [360] = {.lex_state = 0}, [361] = {.lex_state = 0}, [362] = {.lex_state = 0}, - [363] = {.lex_state = 2}, + [363] = {.lex_state = 0}, [364] = {.lex_state = 0}, [365] = {.lex_state = 0}, [366] = {.lex_state = 0}, + [367] = {.lex_state = 11}, + [368] = {.lex_state = 0}, + [369] = {.lex_state = 0}, + [370] = {.lex_state = 0}, + [371] = {.lex_state = 0}, + [372] = {.lex_state = 0}, + [373] = {.lex_state = 0}, + [374] = {.lex_state = 0}, + [375] = {.lex_state = 0}, + [376] = {.lex_state = 0}, + [377] = {.lex_state = 0}, + [378] = {.lex_state = 0}, + [379] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -5680,6 +5768,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), [anon_sym_foreign] = ACTIONS(1), + [anon_sym_let] = ACTIONS(1), + [anon_sym_in] = ACTIONS(1), [anon_sym_PIPE_GT] = ACTIONS(1), [anon_sym_fn] = ACTIONS(1), [anon_sym_if] = ACTIONS(1), @@ -5690,7 +5780,6 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_end] = ACTIONS(1), [anon_sym_do] = ACTIONS(1), [anon_sym_LT_DASH] = ACTIONS(1), - [anon_sym_let] = ACTIONS(1), [anon_sym_return] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), @@ -5705,8 +5794,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(3), }, [1] = { - [sym_source_file] = STATE(366), - [sym_module_header] = STATE(35), + [sym_source_file] = STATE(379), + [sym_module_header] = STATE(40), [anon_sym_module] = ACTIONS(5), [sym_comment] = ACTIONS(3), }, @@ -5721,15 +5810,15 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, anon_sym_LBRACE, ACTIONS(11), 1, - anon_sym_fn, + anon_sym_let, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, - anon_sym_do, + anon_sym_match, ACTIONS(19), 1, - anon_sym_let, + anon_sym_do, ACTIONS(21), 1, anon_sym_return, ACTIONS(23), 1, @@ -5738,21 +5827,21 @@ static const uint16_t ts_small_parse_table[] = { sym__proper_name, ACTIONS(31), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, - STATE(333), 1, + STATE(375), 1, sym_expression_effect_bind_name, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -5760,19 +5849,19 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(295), 5, - sym__expression, + STATE(297), 5, + sym__expression3, sym_expression_function, sym_expression_if, sym_expression_match, sym_expression_effect, - STATE(357), 5, + STATE(351), 5, sym__expression_effect_statement, sym_expression_effect_bind, sym_expression_effect_let, sym_expression_effect_expression, sym_expression_effect_return, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -5789,15 +5878,15 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, anon_sym_LBRACE, ACTIONS(11), 1, - anon_sym_fn, + anon_sym_let, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, - anon_sym_do, + anon_sym_match, ACTIONS(19), 1, - anon_sym_let, + anon_sym_do, ACTIONS(21), 1, anon_sym_return, ACTIONS(23), 1, @@ -5806,21 +5895,21 @@ static const uint16_t ts_small_parse_table[] = { sym__proper_name, ACTIONS(31), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, - STATE(333), 1, + STATE(375), 1, sym_expression_effect_bind_name, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -5828,19 +5917,19 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(295), 5, - sym__expression, + STATE(297), 5, + sym__expression3, sym_expression_function, sym_expression_if, sym_expression_match, sym_expression_effect, - STATE(328), 5, + STATE(376), 5, sym__expression_effect_statement, sym_expression_effect_bind, sym_expression_effect_let, sym_expression_effect_expression, sym_expression_effect_return, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -5857,15 +5946,15 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, anon_sym_LBRACE, ACTIONS(11), 1, - anon_sym_fn, + anon_sym_let, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, - anon_sym_do, + anon_sym_match, ACTIONS(19), 1, - anon_sym_let, + anon_sym_do, ACTIONS(21), 1, anon_sym_return, ACTIONS(23), 1, @@ -5874,21 +5963,21 @@ static const uint16_t ts_small_parse_table[] = { sym__proper_name, ACTIONS(31), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, - STATE(333), 1, + STATE(375), 1, sym_expression_effect_bind_name, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -5896,19 +5985,19 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(295), 5, - sym__expression, + STATE(297), 5, + sym__expression3, sym_expression_function, sym_expression_if, sym_expression_match, sym_expression_effect, - STATE(365), 5, + STATE(328), 5, sym__expression_effect_statement, sym_expression_effect_bind, sym_expression_effect_let, sym_expression_effect_expression, sym_expression_effect_return, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -5925,15 +6014,15 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, anon_sym_LBRACE, ACTIONS(11), 1, - anon_sym_fn, + anon_sym_let, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, - anon_sym_do, + anon_sym_match, ACTIONS(19), 1, - anon_sym_let, + anon_sym_do, ACTIONS(21), 1, anon_sym_return, ACTIONS(23), 1, @@ -5942,21 +6031,21 @@ static const uint16_t ts_small_parse_table[] = { sym__proper_name, ACTIONS(31), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, - STATE(333), 1, + STATE(375), 1, sym_expression_effect_bind_name, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -5964,19 +6053,19 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(295), 5, - sym__expression, + STATE(297), 5, + sym__expression3, sym_expression_function, sym_expression_if, sym_expression_match, sym_expression_effect, - STATE(336), 5, + STATE(378), 5, sym__expression_effect_statement, sym_expression_effect_bind, sym_expression_effect_let, sym_expression_effect_expression, sym_expression_effect_return, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -5985,42 +6074,44 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [364] = 20, + [364] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, ACTIONS(33), 1, - anon_sym_RPAREN, + anon_sym_let, ACTIONS(35), 1, + anon_sym_RBRACK, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6028,13 +6119,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(242), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6043,42 +6128,53 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [442] = 20, + STATE(258), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [448] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, - sym__name, + ACTIONS(33), 1, + anon_sym_let, ACTIONS(37), 1, + sym__name, + ACTIONS(39), 1, anon_sym_RPAREN, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6086,13 +6182,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(242), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6101,42 +6191,53 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [520] = 20, + STATE(258), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [532] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - ACTIONS(39), 1, + ACTIONS(41), 1, anon_sym_RBRACK, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6144,13 +6245,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(242), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6159,42 +6254,53 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [598] = 20, + STATE(270), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [616] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_RBRACK, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6202,13 +6308,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(266), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6217,42 +6317,53 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [676] = 20, + STATE(258), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [700] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - ACTIONS(43), 1, + ACTIONS(45), 1, anon_sym_RPAREN, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6260,13 +6371,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(210), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6275,42 +6380,53 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [754] = 20, + STATE(258), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [784] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - ACTIONS(45), 1, - anon_sym_RBRACK, - STATE(73), 1, + ACTIONS(47), 1, + anon_sym_RPAREN, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6318,13 +6434,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(242), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6333,40 +6443,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [832] = 19, + STATE(221), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [868] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6374,13 +6495,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(311), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6389,40 +6504,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [907] = 19, + STATE(365), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [949] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6430,13 +6556,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(319), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6445,40 +6565,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [982] = 19, + STATE(115), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1030] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6486,13 +6617,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(305), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6501,40 +6626,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1057] = 19, + STATE(321), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1111] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6542,13 +6678,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(242), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6557,40 +6687,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1132] = 19, + STATE(104), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1192] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6598,13 +6739,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(107), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6613,40 +6748,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1207] = 19, + STATE(114), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1273] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6654,13 +6800,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(98), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6669,40 +6809,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1282] = 19, + STATE(103), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1354] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6710,13 +6861,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(334), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6725,40 +6870,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1357] = 19, + STATE(334), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1435] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6766,13 +6922,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(93), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6781,40 +6931,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1432] = 19, + STATE(332), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1516] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6822,13 +6983,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(99), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6837,40 +6992,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1507] = 19, + STATE(107), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1597] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6878,13 +7044,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(100), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6893,40 +7053,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1582] = 19, + STATE(326), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1678] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6934,13 +7105,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(103), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -6949,40 +7114,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1657] = 19, + STATE(109), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1759] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -6990,13 +7166,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(335), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7005,40 +7175,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1732] = 19, + STATE(106), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1840] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -7046,13 +7227,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(325), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7061,40 +7236,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1807] = 19, + STATE(338), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [1921] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -7102,13 +7288,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(361), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7117,40 +7297,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1882] = 19, + STATE(101), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [2002] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -7158,13 +7349,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(102), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7173,40 +7358,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [1957] = 19, + STATE(352), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [2083] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -7214,13 +7410,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(96), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7229,40 +7419,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [2032] = 19, + STATE(286), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [2164] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -7270,13 +7471,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(321), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7285,40 +7480,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [2107] = 19, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, + STATE(315), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [2245] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -7326,13 +7532,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(348), 5, - sym__expression, - sym_expression_function, - sym_expression_if, - sym_expression_match, - sym_expression_effect, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7341,40 +7541,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [2182] = 19, + STATE(354), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [2326] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -7382,13 +7593,68 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(108), 5, + STATE(66), 8, + sym__expression0, + sym__expression_parens, + sym_expression_call, + sym_expression_array, + sym_expression_record, + sym_expression_record_update, + sym_expression_record_access, + sym_expression_variable, + STATE(100), 8, sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, sym_expression_function, sym_expression_if, sym_expression_match, sym_expression_effect, - STATE(82), 8, + [2407] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(9), 1, + anon_sym_LBRACE, + ACTIONS(13), 1, + anon_sym_fn, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, + anon_sym_do, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(29), 1, + sym__proper_name, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, + sym__name, + STATE(68), 1, + sym_expression_variable_name, + STATE(93), 1, + sym_expression_constructor_proper_name, + STATE(187), 1, + sym_qualifier, + ACTIONS(25), 2, + sym_expression_string, + sym_expression_float, + STATE(65), 2, + sym__expression1, + sym_expression_constructor, + STATE(97), 2, + sym__expression2, + sym_expression_right_pipe, + ACTIONS(27), 4, + sym_expression_int, + sym_expression_true, + sym_expression_false, + sym_expression_unit, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7397,40 +7663,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [2257] = 19, + STATE(99), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [2488] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -7438,13 +7715,68 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(279), 5, + STATE(66), 8, + sym__expression0, + sym__expression_parens, + sym_expression_call, + sym_expression_array, + sym_expression_record, + sym_expression_record_update, + sym_expression_record_access, + sym_expression_variable, + STATE(258), 8, sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, sym_expression_function, sym_expression_if, sym_expression_match, sym_expression_effect, - STATE(82), 8, + [2569] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(9), 1, + anon_sym_LBRACE, + ACTIONS(13), 1, + anon_sym_fn, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, + anon_sym_do, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(29), 1, + sym__proper_name, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, + sym__name, + STATE(68), 1, + sym_expression_variable_name, + STATE(93), 1, + sym_expression_constructor_proper_name, + STATE(187), 1, + sym_qualifier, + ACTIONS(25), 2, + sym_expression_string, + sym_expression_float, + STATE(65), 2, + sym__expression1, + sym_expression_constructor, + STATE(97), 2, + sym__expression2, + sym_expression_right_pipe, + ACTIONS(27), 4, + sym_expression_int, + sym_expression_true, + sym_expression_false, + sym_expression_unit, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7453,40 +7785,51 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [2332] = 19, + STATE(349), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [2650] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, anon_sym_LPAREN, ACTIONS(9), 1, anon_sym_LBRACE, - ACTIONS(11), 1, - anon_sym_fn, ACTIONS(13), 1, - anon_sym_if, + anon_sym_fn, ACTIONS(15), 1, - anon_sym_match, + anon_sym_if, ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, anon_sym_do, ACTIONS(23), 1, anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(78), 2, + STATE(65), 2, sym__expression1, sym_expression_constructor, - STATE(89), 2, + STATE(97), 2, sym__expression2, sym_expression_right_pipe, ACTIONS(27), 4, @@ -7494,13 +7837,68 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(338), 5, + STATE(66), 8, + sym__expression0, + sym__expression_parens, + sym_expression_call, + sym_expression_array, + sym_expression_record, + sym_expression_record_update, + sym_expression_record_access, + sym_expression_variable, + STATE(373), 8, sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, sym_expression_function, sym_expression_if, sym_expression_match, sym_expression_effect, - STATE(82), 8, + [2731] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(9), 1, + anon_sym_LBRACE, + ACTIONS(13), 1, + anon_sym_fn, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_match, + ACTIONS(19), 1, + anon_sym_do, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(29), 1, + sym__proper_name, + ACTIONS(33), 1, + anon_sym_let, + ACTIONS(37), 1, + sym__name, + STATE(68), 1, + sym_expression_variable_name, + STATE(93), 1, + sym_expression_constructor_proper_name, + STATE(187), 1, + sym_qualifier, + ACTIONS(25), 2, + sym_expression_string, + sym_expression_float, + STATE(65), 2, + sym__expression1, + sym_expression_constructor, + STATE(97), 2, + sym__expression2, + sym_expression_right_pipe, + ACTIONS(27), 4, + sym_expression_int, + sym_expression_true, + sym_expression_false, + sym_expression_unit, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7509,7 +7907,16 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [2407] = 17, + STATE(374), 8, + sym__expression, + sym__expression4, + sym__expression3, + sym_expression_let, + sym_expression_function, + sym_expression_if, + sym_expression_match, + sym_expression_effect, + [2812] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -7520,26 +7927,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(47), 1, - anon_sym_RBRACE, ACTIONS(49), 1, + anon_sym_RBRACE, + ACTIONS(51), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, - STATE(256), 1, + STATE(268), 1, sym_expression_record_field, - STATE(355), 1, - sym__expression_record_update_target, STATE(360), 1, + sym__expression_record_update_target, + STATE(361), 1, sym_expression_record_field_label, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(254), 2, + STATE(273), 2, sym__expression1, sym_expression_constructor, ACTIONS(27), 4, @@ -7547,7 +7954,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7556,7 +7963,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [2471] = 13, + [2876] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -7567,18 +7974,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, ACTIONS(29), 1, sym__proper_name, - ACTIONS(35), 1, + ACTIONS(37), 1, sym__name, - STATE(73), 1, + STATE(68), 1, sym_expression_variable_name, - STATE(88), 1, + STATE(93), 1, sym_expression_constructor_proper_name, - STATE(201), 1, + STATE(187), 1, sym_qualifier, ACTIONS(25), 2, sym_expression_string, sym_expression_float, - STATE(72), 2, + STATE(74), 2, sym__expression1, sym_expression_constructor, ACTIONS(27), 4, @@ -7586,7 +7993,7 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_true, sym_expression_false, sym_expression_unit, - STATE(82), 8, + STATE(66), 8, sym__expression0, sym__expression_parens, sym_expression_call, @@ -7595,81 +8002,27 @@ static const uint16_t ts_small_parse_table[] = { sym_expression_record_update, sym_expression_record_access, sym_expression_variable, - [2523] = 9, + [2928] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - ts_builtin_sym_end, ACTIONS(53), 1, - anon_sym_import, + anon_sym_LPAREN, ACTIONS(55), 1, - anon_sym_type, + anon_sym_RPAREN, ACTIONS(57), 1, - anon_sym_foreign, + anon_sym_LBRACE, ACTIONS(59), 1, + sym__proper_name, + ACTIONS(61), 1, sym__name, - STATE(267), 1, - sym_value_declaration_name, - STATE(36), 2, - sym_module_import, - aux_sym_source_file_repeat1, - STATE(83), 8, - sym__module_declaration, - sym__type_declaration, - sym_type_alias_declaration, - sym_empty_type_declaration, - sym_type_declaration, - sym_foreign_value_declaration, - sym_value_declaration, - aux_sym_source_file_repeat2, - [2559] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(53), 1, - anon_sym_import, - ACTIONS(55), 1, - anon_sym_type, - ACTIONS(57), 1, - anon_sym_foreign, - ACTIONS(59), 1, - sym__name, - ACTIONS(61), 1, - ts_builtin_sym_end, - STATE(267), 1, - sym_value_declaration_name, - STATE(121), 2, - sym_module_import, - aux_sym_source_file_repeat1, - STATE(62), 8, - sym__module_declaration, - sym__type_declaration, - sym_type_alias_declaration, - sym_empty_type_declaration, - sym_type_declaration, - sym_foreign_value_declaration, - sym_value_declaration, - aux_sym_source_file_repeat2, - [2595] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(63), 1, - anon_sym_LPAREN, - ACTIONS(65), 1, - anon_sym_RPAREN, - ACTIONS(67), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, - sym__proper_name, - ACTIONS(71), 1, - sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(287), 7, + STATE(302), 7, sym__type, sym__type1, sym_type_function, @@ -7677,27 +8030,27 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2633] = 10, + [2966] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - ACTIONS(73), 1, + ACTIONS(63), 1, anon_sym_RPAREN, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(287), 7, + STATE(302), 7, sym__type, sym__type1, sym_type_function, @@ -7705,27 +8058,54 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2671] = 10, + [3004] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, - anon_sym_LPAREN, + ACTIONS(65), 1, + ts_builtin_sym_end, ACTIONS(67), 1, - anon_sym_LBRACE, + anon_sym_import, ACTIONS(69), 1, - sym__proper_name, + anon_sym_type, ACTIONS(71), 1, + anon_sym_foreign, + ACTIONS(73), 1, + sym__name, + STATE(219), 1, + sym_value_declaration_name, + STATE(45), 2, + sym_module_import, + aux_sym_source_file_repeat1, + STATE(79), 8, + sym__module_declaration, + sym__type_declaration, + sym_type_alias_declaration, + sym_empty_type_declaration, + sym_type_declaration, + sym_foreign_value_declaration, + sym_value_declaration, + aux_sym_source_file_repeat2, + [3040] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_LBRACE, + ACTIONS(59), 1, + sym__proper_name, + ACTIONS(61), 1, sym__name, ACTIONS(75), 1, anon_sym_RPAREN, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(287), 7, + STATE(302), 7, sym__type, sym__type1, sym_type_function, @@ -7733,27 +8113,27 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2709] = 10, + [3078] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, ACTIONS(77), 1, anon_sym_RPAREN, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(287), 7, + STATE(302), 7, sym__type, sym__type1, sym_type_function, @@ -7761,27 +8141,27 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2747] = 10, + [3116] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, ACTIONS(79), 1, anon_sym_RPAREN, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(287), 7, + STATE(302), 7, sym__type, sym__type1, sym_type_function, @@ -7789,27 +8169,27 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2785] = 10, + [3154] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, ACTIONS(81), 1, anon_sym_RPAREN, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(252), 7, + STATE(260), 7, sym__type, sym__type1, sym_type_function, @@ -7817,27 +8197,54 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2823] = 10, + [3192] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, - anon_sym_LPAREN, ACTIONS(67), 1, - anon_sym_LBRACE, + anon_sym_import, ACTIONS(69), 1, - sym__proper_name, + anon_sym_type, ACTIONS(71), 1, + anon_sym_foreign, + ACTIONS(73), 1, sym__name, ACTIONS(83), 1, + ts_builtin_sym_end, + STATE(219), 1, + sym_value_declaration_name, + STATE(120), 2, + sym_module_import, + aux_sym_source_file_repeat1, + STATE(80), 8, + sym__module_declaration, + sym__type_declaration, + sym_type_alias_declaration, + sym_empty_type_declaration, + sym_type_declaration, + sym_foreign_value_declaration, + sym_value_declaration, + aux_sym_source_file_repeat2, + [3228] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_LBRACE, + ACTIONS(59), 1, + sym__proper_name, + ACTIONS(61), 1, + sym__name, + ACTIONS(85), 1, anon_sym_RPAREN, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(287), 7, + STATE(302), 7, sym__type, sym__type1, sym_type_function, @@ -7845,25 +8252,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2861] = 9, + [3266] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(165), 7, + STATE(225), 7, sym__type, sym__type1, sym_type_function, @@ -7871,25 +8278,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2896] = 9, + [3301] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(322), 7, + STATE(189), 7, sym__type, sym__type1, sym_type_function, @@ -7897,25 +8304,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2931] = 9, + [3336] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(280), 7, + STATE(158), 7, sym__type, sym__type1, sym_type_function, @@ -7923,25 +8330,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [2966] = 9, + [3371] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(237), 7, + STATE(342), 7, sym__type, sym__type1, sym_type_function, @@ -7949,25 +8356,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [3001] = 9, + [3406] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(354), 7, + STATE(156), 7, sym__type, sym__type1, sym_type_function, @@ -7975,25 +8382,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [3036] = 9, + [3441] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(170), 7, + STATE(335), 7, sym__type, sym__type1, sym_type_function, @@ -8001,25 +8408,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [3071] = 9, + [3476] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(287), 7, + STATE(238), 7, sym__type, sym__type1, sym_type_function, @@ -8027,25 +8434,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [3106] = 9, + [3511] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(200), 7, + STATE(171), 7, sym__type, sym__type1, sym_type_function, @@ -8053,25 +8460,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [3141] = 9, + [3546] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(323), 7, + STATE(302), 7, sym__type, sym__type1, sym_type_function, @@ -8079,25 +8486,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [3176] = 9, + [3581] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(155), 7, + STATE(283), 7, sym__type, sym__type1, sym_type_function, @@ -8105,25 +8512,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [3211] = 9, + [3616] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(146), 7, + STATE(372), 7, sym__type, sym__type1, sym_type_function, @@ -8131,25 +8538,25 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [3246] = 9, + [3651] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(63), 1, + ACTIONS(53), 1, anon_sym_LPAREN, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(221), 7, + STATE(165), 7, sym__type, sym__type1, sym_type_function, @@ -8157,12 +8564,12 @@ static const uint16_t ts_small_parse_table[] = { sym_type_closed_record, sym_type_open_record, sym_type_call, - [3281] = 3, + [3686] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(87), 1, + ACTIONS(89), 1, anon_sym_PIPE, - ACTIONS(85), 13, + ACTIONS(87), 13, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8176,36 +8583,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3303] = 9, + [3708] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(67), 1, + ACTIONS(57), 1, anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(59), 1, sym__proper_name, - ACTIONS(71), 1, + ACTIONS(61), 1, sym__name, - ACTIONS(89), 1, + ACTIONS(91), 1, anon_sym_LPAREN, - STATE(118), 1, + STATE(128), 1, sym_type_constructor_proper_name, - STATE(301), 1, + STATE(314), 1, sym_qualifier, - STATE(112), 2, + STATE(118), 2, sym_type_constructor, sym_type_variable, - STATE(353), 5, + STATE(322), 5, sym__type1, sym__type_parens, sym_type_closed_record, sym_type_open_record, sym_type_call, - [3336] = 3, + [3741] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(93), 1, + ACTIONS(95), 1, anon_sym_PIPE, - ACTIONS(91), 12, + ACTIONS(93), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8218,14 +8625,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3357] = 3, + [3762] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(97), 1, + ACTIONS(99), 1, + anon_sym_DOT, + ACTIONS(101), 1, anon_sym_PIPE, - ACTIONS(95), 12, + ACTIONS(97), 11, anon_sym_SEMI, - anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, @@ -8236,12 +8644,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3378] = 3, + [3785] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(101), 1, + ACTIONS(105), 1, anon_sym_PIPE, - ACTIONS(99), 12, + ACTIONS(103), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8254,12 +8662,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3399] = 3, + [3806] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(105), 1, + ACTIONS(109), 1, anon_sym_PIPE, - ACTIONS(103), 12, + ACTIONS(107), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8272,55 +8680,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3420] = 7, + [3827] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_type, - ACTIONS(57), 1, - anon_sym_foreign, - ACTIONS(59), 1, - sym__name, - ACTIONS(107), 1, - ts_builtin_sym_end, - STATE(267), 1, - sym_value_declaration_name, - STATE(76), 8, - sym__module_declaration, - sym__type_declaration, - sym_type_alias_declaration, - sym_empty_type_declaration, - sym_type_declaration, - sym_foreign_value_declaration, - sym_value_declaration, - aux_sym_source_file_repeat2, - [3449] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(111), 1, - anon_sym_PIPE, - ACTIONS(109), 12, - anon_sym_SEMI, - anon_sym_DOT, + ACTIONS(113), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_PIPE_GT, - anon_sym_then, - anon_sym_else, - anon_sym_with, - anon_sym_end, - anon_sym_RBRACK, - [3470] = 3, - ACTIONS(3), 1, - sym_comment, ACTIONS(115), 1, anon_sym_PIPE, - ACTIONS(113), 12, + STATE(61), 1, + sym_expression_call_arguments, + ACTIONS(111), 10, anon_sym_SEMI, - anon_sym_DOT, - anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACE, @@ -8330,14 +8700,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3491] = 3, + [3852] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(119), 1, + anon_sym_DOT, + ACTIONS(121), 1, anon_sym_PIPE, - ACTIONS(117), 12, + ACTIONS(117), 11, anon_sym_SEMI, - anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, @@ -8348,12 +8719,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3512] = 3, + [3875] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(123), 1, + ACTIONS(125), 1, anon_sym_PIPE, - ACTIONS(121), 12, + ACTIONS(123), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8366,12 +8737,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3533] = 3, + [3896] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(127), 1, + ACTIONS(129), 1, anon_sym_PIPE, - ACTIONS(125), 12, + ACTIONS(127), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8384,12 +8755,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3554] = 3, + [3917] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(131), 1, + ACTIONS(133), 1, anon_sym_PIPE, - ACTIONS(129), 12, + ACTIONS(131), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8402,15 +8773,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3575] = 4, + [3938] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(135), 1, - anon_sym_DOT, ACTIONS(137), 1, anon_sym_PIPE, - ACTIONS(133), 11, + ACTIONS(135), 12, anon_sym_SEMI, + anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, @@ -8421,7 +8791,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3598] = 3, + [3959] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(141), 1, @@ -8439,7 +8809,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3619] = 3, + [3980] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(145), 1, @@ -8457,17 +8827,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3640] = 5, + [4001] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(149), 1, - anon_sym_LPAREN, - ACTIONS(151), 1, anon_sym_PIPE, - STATE(75), 1, - sym_expression_call_arguments, - ACTIONS(147), 10, + ACTIONS(147), 12, anon_sym_SEMI, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACE, @@ -8477,15 +8845,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3665] = 3, + [4022] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(155), 1, + ACTIONS(113), 1, + anon_sym_LPAREN, + ACTIONS(153), 1, anon_sym_PIPE, - ACTIONS(153), 12, + STATE(61), 1, + sym_expression_call_arguments, + ACTIONS(151), 10, anon_sym_SEMI, - anon_sym_DOT, - anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACE, @@ -8495,12 +8865,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3686] = 3, + [4047] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(159), 1, + ACTIONS(157), 1, anon_sym_PIPE, - ACTIONS(157), 12, + ACTIONS(155), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8513,12 +8883,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3707] = 3, + [4068] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(163), 1, + ACTIONS(161), 1, anon_sym_PIPE, - ACTIONS(161), 12, + ACTIONS(159), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8531,20 +8901,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3728] = 7, + [4089] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(165), 1, + ACTIONS(163), 1, ts_builtin_sym_end, - ACTIONS(167), 1, + ACTIONS(165), 1, anon_sym_type, - ACTIONS(170), 1, + ACTIONS(168), 1, anon_sym_foreign, - ACTIONS(173), 1, + ACTIONS(171), 1, sym__name, - STATE(267), 1, + STATE(219), 1, sym_value_declaration_name, - STATE(76), 8, + STATE(77), 8, sym__module_declaration, sym__type_declaration, sym_type_alias_declaration, @@ -8553,12 +8923,12 @@ static const uint16_t ts_small_parse_table[] = { sym_foreign_value_declaration, sym_value_declaration, aux_sym_source_file_repeat2, - [3757] = 3, + [4118] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(178), 1, + ACTIONS(176), 1, anon_sym_PIPE, - ACTIONS(176), 12, + ACTIONS(174), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8571,17 +8941,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3778] = 5, + [4139] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(149), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, + ACTIONS(69), 1, + anon_sym_type, + ACTIONS(71), 1, + anon_sym_foreign, + ACTIONS(73), 1, + sym__name, + ACTIONS(178), 1, + ts_builtin_sym_end, + STATE(219), 1, + sym_value_declaration_name, + STATE(77), 8, + sym__module_declaration, + sym__type_declaration, + sym_type_alias_declaration, + sym_empty_type_declaration, + sym_type_declaration, + sym_foreign_value_declaration, + sym_value_declaration, + aux_sym_source_file_repeat2, + [4168] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(69), 1, + anon_sym_type, + ACTIONS(71), 1, + anon_sym_foreign, + ACTIONS(73), 1, + sym__name, + ACTIONS(180), 1, + ts_builtin_sym_end, + STATE(219), 1, + sym_value_declaration_name, + STATE(77), 8, + sym__module_declaration, + sym__type_declaration, + sym_type_alias_declaration, + sym_empty_type_declaration, + sym_type_declaration, + sym_foreign_value_declaration, + sym_value_declaration, + aux_sym_source_file_repeat2, + [4197] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(184), 1, anon_sym_PIPE, - STATE(75), 1, - sym_expression_call_arguments, - ACTIONS(180), 10, + ACTIONS(182), 12, anon_sym_SEMI, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACE, @@ -8591,12 +9003,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3803] = 3, + [4218] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(186), 1, + ACTIONS(188), 1, anon_sym_PIPE, - ACTIONS(184), 12, + ACTIONS(186), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8609,12 +9021,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3824] = 3, + [4239] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(190), 1, + ACTIONS(192), 1, anon_sym_PIPE, - ACTIONS(188), 12, + ACTIONS(190), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8627,12 +9039,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3845] = 3, + [4260] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(194), 1, + ACTIONS(196), 1, anon_sym_PIPE, - ACTIONS(192), 12, + ACTIONS(194), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8645,15 +9057,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3866] = 4, + [4281] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(198), 1, - anon_sym_DOT, ACTIONS(200), 1, anon_sym_PIPE, - ACTIONS(196), 11, + ACTIONS(198), 12, anon_sym_SEMI, + anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, @@ -8664,34 +9075,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3889] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(55), 1, - anon_sym_type, - ACTIONS(57), 1, - anon_sym_foreign, - ACTIONS(59), 1, - sym__name, - ACTIONS(202), 1, - ts_builtin_sym_end, - STATE(267), 1, - sym_value_declaration_name, - STATE(76), 8, - sym__module_declaration, - sym__type_declaration, - sym_type_alias_declaration, - sym_empty_type_declaration, - sym_type_declaration, - sym_foreign_value_declaration, - sym_value_declaration, - aux_sym_source_file_repeat2, - [3918] = 3, + [4302] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(206), 1, + ACTIONS(204), 1, anon_sym_PIPE, - ACTIONS(204), 12, + ACTIONS(202), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8704,12 +9093,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3939] = 3, + [4323] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(210), 1, + ACTIONS(208), 1, anon_sym_PIPE, - ACTIONS(208), 12, + ACTIONS(206), 12, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, @@ -8722,13 +9111,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3960] = 3, + [4344] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(137), 1, + ACTIONS(212), 1, anon_sym_PIPE, - ACTIONS(133), 11, + ACTIONS(210), 12, anon_sym_SEMI, + anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, @@ -8739,12 +9129,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [3980] = 3, + [4365] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(214), 1, + ACTIONS(216), 1, anon_sym_PIPE, - ACTIONS(212), 11, + ACTIONS(214), 11, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -8756,12 +9146,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4000] = 3, + [4385] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(218), 1, + ACTIONS(101), 1, anon_sym_PIPE, - ACTIONS(216), 11, + ACTIONS(97), 11, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -8773,107 +9163,177 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4020] = 4, + [4405] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(218), 1, + anon_sym_in, + ACTIONS(220), 1, + sym__proper_name, + ACTIONS(223), 1, + sym__name, + ACTIONS(226), 1, + sym__unused_name, + STATE(131), 1, + sym_pattern_constructor_proper_name, + STATE(287), 1, + sym_qualifier, + STATE(91), 2, + sym_expression_let_value_declaration, + aux_sym_expression_let_repeat1, + STATE(213), 4, + sym__pattern, + sym_pattern_constructor, + sym_pattern_variable, + sym_pattern_unused, + [4437] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(229), 1, + anon_sym_in, + ACTIONS(231), 1, + sym__proper_name, + ACTIONS(233), 1, + sym__name, + ACTIONS(235), 1, + sym__unused_name, + STATE(131), 1, + sym_pattern_constructor_proper_name, + STATE(287), 1, + sym_qualifier, + STATE(91), 2, + sym_expression_let_value_declaration, + aux_sym_expression_let_repeat1, + STATE(213), 4, + sym__pattern, + sym_pattern_constructor, + sym_pattern_variable, + sym_pattern_unused, + [4469] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(222), 1, + ACTIONS(239), 1, anon_sym_PIPE, - ACTIONS(224), 1, - anon_sym_PIPE_GT, - ACTIONS(220), 9, + ACTIONS(237), 11, anon_sym_SEMI, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACE, + anon_sym_PIPE_GT, anon_sym_then, anon_sym_else, anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4041] = 9, + [4489] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(226), 1, - anon_sym_RPAREN, - ACTIONS(228), 1, + ACTIONS(231), 1, sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, + ACTIONS(235), 1, sym__unused_name, - STATE(115), 1, + ACTIONS(241), 1, + anon_sym_RPAREN, + ACTIONS(243), 1, + sym__name, + STATE(131), 1, sym_pattern_constructor_proper_name, - STATE(223), 1, + STATE(215), 1, sym_expression_function_parameter, - STATE(292), 1, + STATE(287), 1, sym_qualifier, - STATE(193), 4, + STATE(205), 4, sym__pattern, sym_pattern_constructor, sym_pattern_variable, sym_pattern_unused, - [4072] = 9, + [4520] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(228), 1, + ACTIONS(231), 1, sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, + ACTIONS(235), 1, sym__unused_name, - ACTIONS(234), 1, + ACTIONS(243), 1, + sym__name, + ACTIONS(245), 1, anon_sym_RPAREN, - STATE(115), 1, + STATE(131), 1, sym_pattern_constructor_proper_name, - STATE(288), 1, - sym_expression_function_parameter, - STATE(292), 1, + STATE(287), 1, sym_qualifier, - STATE(193), 4, + STATE(306), 1, + sym_expression_function_parameter, + STATE(205), 4, sym__pattern, sym_pattern_constructor, sym_pattern_variable, sym_pattern_unused, - [4103] = 9, + [4551] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(228), 1, + ACTIONS(231), 1, sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, + ACTIONS(235), 1, sym__unused_name, - ACTIONS(236), 1, - anon_sym_RPAREN, - STATE(115), 1, + ACTIONS(243), 1, + sym__name, + STATE(131), 1, sym_pattern_constructor_proper_name, - STATE(288), 1, - sym_expression_function_parameter, - STATE(292), 1, + STATE(287), 1, sym_qualifier, - STATE(193), 4, + STATE(92), 2, + sym_expression_let_value_declaration, + aux_sym_expression_let_repeat1, + STATE(213), 4, sym__pattern, sym_pattern_constructor, sym_pattern_variable, sym_pattern_unused, - [4134] = 2, + [4580] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(238), 10, + ACTIONS(249), 1, + anon_sym_PIPE, + ACTIONS(251), 1, + anon_sym_PIPE_GT, + ACTIONS(247), 9, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PIPE, anon_sym_RBRACE, anon_sym_then, anon_sym_else, anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4150] = 2, + [4601] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(231), 1, + sym__proper_name, + ACTIONS(235), 1, + sym__unused_name, + ACTIONS(243), 1, + sym__name, + ACTIONS(253), 1, + anon_sym_RPAREN, + STATE(131), 1, + sym_pattern_constructor_proper_name, + STATE(287), 1, + sym_qualifier, + STATE(306), 1, + sym_expression_function_parameter, + STATE(205), 4, + sym__pattern, + sym_pattern_constructor, + sym_pattern_variable, + sym_pattern_unused, + [4632] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(240), 10, + ACTIONS(255), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -8884,10 +9344,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4166] = 2, + [4648] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(242), 10, + ACTIONS(257), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -8898,10 +9358,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4182] = 2, + [4664] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(244), 10, + ACTIONS(259), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -8912,30 +9372,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4198] = 8, + [4680] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(228), 1, + ACTIONS(231), 1, sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, + ACTIONS(235), 1, sym__unused_name, - STATE(115), 1, + ACTIONS(243), 1, + sym__name, + STATE(131), 1, sym_pattern_constructor_proper_name, - STATE(292), 1, + STATE(287), 1, sym_qualifier, - STATE(320), 1, + STATE(333), 1, sym_expression_effect_let_binder, - STATE(211), 4, + STATE(253), 4, sym__pattern, sym_pattern_constructor, sym_pattern_variable, sym_pattern_unused, - [4226] = 2, + [4708] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(246), 10, + ACTIONS(261), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -8946,10 +9406,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4242] = 2, + [4724] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(248), 10, + ACTIONS(263), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -8960,10 +9420,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4258] = 2, + [4740] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(231), 1, + sym__proper_name, + ACTIONS(235), 1, + sym__unused_name, + ACTIONS(243), 1, + sym__name, + ACTIONS(265), 1, + anon_sym_RPAREN, + STATE(131), 1, + sym_pattern_constructor_proper_name, + STATE(287), 1, + sym_qualifier, + STATE(246), 4, + sym__pattern, + sym_pattern_constructor, + sym_pattern_variable, + sym_pattern_unused, + [4768] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(250), 10, + ACTIONS(267), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -8974,30 +9454,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4274] = 8, + [4784] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(228), 1, - sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, - sym__unused_name, - ACTIONS(252), 1, + ACTIONS(269), 10, + anon_sym_SEMI, anon_sym_RPAREN, - STATE(115), 1, - sym_pattern_constructor_proper_name, - STATE(292), 1, - sym_qualifier, - STATE(283), 4, - sym__pattern, - sym_pattern_constructor, - sym_pattern_variable, - sym_pattern_unused, - [4302] = 2, + anon_sym_COMMA, + anon_sym_PIPE, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_else, + anon_sym_with, + anon_sym_end, + anon_sym_RBRACK, + [4800] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(271), 10, + anon_sym_SEMI, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_PIPE, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_else, + anon_sym_with, + anon_sym_end, + anon_sym_RBRACK, + [4816] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(254), 10, + ACTIONS(273), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -9008,10 +9496,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4318] = 2, + [4832] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(256), 10, + ACTIONS(275), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -9022,70 +9510,70 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4334] = 8, + [4848] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(228), 1, + ACTIONS(231), 1, sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, + ACTIONS(235), 1, sym__unused_name, - ACTIONS(258), 1, - anon_sym_RPAREN, - STATE(115), 1, + ACTIONS(243), 1, + sym__name, + STATE(131), 1, sym_pattern_constructor_proper_name, - STATE(292), 1, + STATE(287), 1, sym_qualifier, - STATE(245), 4, + STATE(306), 1, + sym_expression_function_parameter, + STATE(205), 4, sym__pattern, sym_pattern_constructor, sym_pattern_variable, sym_pattern_unused, - [4362] = 8, + [4876] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(228), 1, + ACTIONS(231), 1, sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, + ACTIONS(235), 1, sym__unused_name, - ACTIONS(260), 1, + ACTIONS(243), 1, + sym__name, + ACTIONS(277), 1, anon_sym_RPAREN, - STATE(115), 1, + STATE(131), 1, sym_pattern_constructor_proper_name, - STATE(292), 1, + STATE(287), 1, sym_qualifier, - STATE(283), 4, + STATE(309), 4, sym__pattern, sym_pattern_constructor, sym_pattern_variable, sym_pattern_unused, - [4390] = 8, + [4904] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(228), 1, + ACTIONS(231), 1, sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, + ACTIONS(235), 1, sym__unused_name, - STATE(115), 1, + ACTIONS(243), 1, + sym__name, + ACTIONS(279), 1, + anon_sym_RPAREN, + STATE(131), 1, sym_pattern_constructor_proper_name, - STATE(288), 1, - sym_expression_function_parameter, - STATE(292), 1, + STATE(287), 1, sym_qualifier, - STATE(193), 4, + STATE(309), 4, sym__pattern, sym_pattern_constructor, sym_pattern_variable, sym_pattern_unused, - [4418] = 2, + [4932] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(262), 10, + ACTIONS(281), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -9096,10 +9584,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4434] = 2, + [4948] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(264), 10, + ACTIONS(283), 10, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, @@ -9110,141 +9598,112 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, anon_sym_end, anon_sym_RBRACK, - [4450] = 7, + [4964] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(228), 1, + ACTIONS(231), 1, sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, + ACTIONS(235), 1, sym__unused_name, - STATE(115), 1, + ACTIONS(243), 1, + sym__name, + STATE(131), 1, sym_pattern_constructor_proper_name, - STATE(292), 1, + STATE(287), 1, sym_qualifier, - STATE(283), 4, + STATE(337), 4, sym__pattern, sym_pattern_constructor, sym_pattern_variable, sym_pattern_unused, - [4475] = 7, + [4989] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(228), 1, + ACTIONS(231), 1, sym__proper_name, - ACTIONS(230), 1, - sym__name, - ACTIONS(232), 1, + ACTIONS(235), 1, sym__unused_name, - STATE(115), 1, + ACTIONS(243), 1, + sym__name, + STATE(131), 1, sym_pattern_constructor_proper_name, - STATE(292), 1, + STATE(287), 1, sym_qualifier, - STATE(339), 4, + STATE(309), 4, sym__pattern, sym_pattern_constructor, sym_pattern_variable, sym_pattern_unused, - [4500] = 3, + [5014] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(135), 1, - anon_sym_DOT, - ACTIONS(266), 7, - anon_sym_SEMI, + ACTIONS(287), 1, anon_sym_LPAREN, + STATE(140), 1, + sym_type_call_arguments, + ACTIONS(285), 6, + anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4516] = 4, + [5032] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_LPAREN, - STATE(130), 1, - sym_type_call_arguments, - ACTIONS(268), 6, + ACTIONS(99), 1, + anon_sym_DOT, + ACTIONS(289), 7, anon_sym_SEMI, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4534] = 6, + [5048] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(272), 1, - anon_sym_RPAREN, - ACTIONS(274), 1, - sym__proper_name, - ACTIONS(276), 1, + ACTIONS(291), 1, + ts_builtin_sym_end, + ACTIONS(293), 1, + anon_sym_import, + STATE(120), 2, + sym_module_import, + aux_sym_source_file_repeat1, + ACTIONS(296), 3, + anon_sym_type, + anon_sym_foreign, sym__name, - STATE(149), 1, - sym_exposing_type_name, - STATE(299), 3, - sym__exposing_list_item, - sym_exposing_type, - sym_exposing_value, - [4555] = 6, + [5067] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(274), 1, - sym__proper_name, - ACTIONS(276), 1, - sym__name, - ACTIONS(278), 1, - anon_sym_RPAREN, - STATE(149), 1, - sym_exposing_type_name, - STATE(299), 3, - sym__exposing_list_item, - sym_exposing_type, - sym_exposing_value, - [4576] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(280), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_pattern_constructor_fields, - ACTIONS(282), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_DASH_GT, - anon_sym_COLON, - [4593] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(135), 1, - anon_sym_DOT, - ACTIONS(284), 6, - anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_DOT, + ACTIONS(298), 6, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_COLON, - [4608] = 4, + [5082] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(280), 1, + ACTIONS(300), 1, anon_sym_LPAREN, - STATE(164), 1, + STATE(175), 1, sym_pattern_constructor_fields, - ACTIONS(286), 5, + ACTIONS(302), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_COLON, - [4625] = 2, + [5099] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 7, + ACTIONS(304), 7, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -9252,65 +9711,81 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4638] = 6, + [5112] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(290), 1, + ACTIONS(306), 1, anon_sym_SEMI, - ACTIONS(292), 1, + ACTIONS(308), 1, anon_sym_as, - ACTIONS(294), 1, + ACTIONS(310), 1, anon_sym_LPAREN, - STATE(342), 1, + STATE(356), 1, sym__everything, - STATE(312), 3, + STATE(327), 3, sym__exposing, sym_exposing_everything, sym_exposing_list, - [4659] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(296), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_DASH_GT, - anon_sym_RBRACE, - [4672] = 5, + [5133] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(298), 1, - ts_builtin_sym_end, - ACTIONS(300), 1, - anon_sym_import, - STATE(121), 2, - sym_module_import, - aux_sym_source_file_repeat1, - ACTIONS(303), 3, - anon_sym_type, - anon_sym_foreign, + ACTIONS(312), 1, + anon_sym_DOT_DOT, + ACTIONS(314), 1, + sym__proper_name, + ACTIONS(316), 1, sym__name, - [4691] = 6, + STATE(167), 1, + sym_exposing_type_name, + STATE(247), 3, + sym__exposing_list_item, + sym_exposing_type, + sym_exposing_value, + [5154] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(274), 1, + ACTIONS(314), 1, sym__proper_name, - ACTIONS(276), 1, + ACTIONS(316), 1, sym__name, - ACTIONS(305), 1, - anon_sym_DOT_DOT, - STATE(149), 1, + ACTIONS(318), 1, + anon_sym_RPAREN, + STATE(167), 1, sym_exposing_type_name, - STATE(226), 3, + STATE(292), 3, sym__exposing_list_item, sym_exposing_type, sym_exposing_value, - [4712] = 2, + [5175] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(310), 1, + anon_sym_LPAREN, + ACTIONS(320), 1, + anon_sym_SEMI, + ACTIONS(322), 1, + anon_sym_as, + STATE(356), 1, + sym__everything, + STATE(353), 3, + sym__exposing, + sym_exposing_everything, + sym_exposing_list, + [5196] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(324), 7, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_DASH_GT, + anon_sym_RBRACE, + [5209] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(266), 7, + ACTIONS(289), 7, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -9318,10 +9793,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4725] = 2, + [5222] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(307), 7, + ACTIONS(326), 7, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -9329,1931 +9804,1986 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4738] = 6, + [5235] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(294), 1, + ACTIONS(300), 1, anon_sym_LPAREN, - ACTIONS(309), 1, + STATE(170), 1, + sym_pattern_constructor_fields, + ACTIONS(328), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_DASH_GT, + anon_sym_COLON, + [5252] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(314), 1, + sym__proper_name, + ACTIONS(316), 1, + sym__name, + ACTIONS(330), 1, + anon_sym_RPAREN, + STATE(167), 1, + sym_exposing_type_name, + STATE(292), 3, + sym__exposing_list_item, + sym_exposing_type, + sym_exposing_value, + [5273] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(334), 1, + anon_sym_DOT, + STATE(152), 1, + aux_sym_module_name_repeat1, + ACTIONS(332), 4, + anon_sym_exports, anon_sym_SEMI, - ACTIONS(311), 1, anon_sym_as, - STATE(342), 1, - sym__everything, - STATE(314), 3, - sym__exposing, - sym_exposing_everything, - sym_exposing_list, - [4759] = 2, + anon_sym_LPAREN, + [5289] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(338), 1, + anon_sym_DASH_GT, + ACTIONS(336), 5, + anon_sym_SEMI, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_RBRACE, + [5303] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(313), 6, + ACTIONS(340), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4771] = 2, + [5315] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(315), 6, + ACTIONS(342), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4783] = 4, + [5327] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(319), 1, + ACTIONS(334), 1, anon_sym_DOT, - STATE(135), 1, + STATE(133), 1, aux_sym_module_name_repeat1, - ACTIONS(317), 4, + ACTIONS(344), 4, anon_sym_exports, anon_sym_SEMI, anon_sym_as, anon_sym_LPAREN, - [4799] = 3, + [5343] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(321), 1, + ACTIONS(346), 1, anon_sym_LT_DASH, - ACTIONS(125), 5, + ACTIONS(103), 5, anon_sym_SEMI, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RBRACE, anon_sym_PIPE_GT, - [4813] = 2, + [5357] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(323), 6, + ACTIONS(348), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4825] = 2, + [5369] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(325), 6, + ACTIONS(350), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4837] = 5, + [5381] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(294), 1, + ACTIONS(298), 6, anon_sym_LPAREN, - ACTIONS(327), 1, - anon_sym_SEMI, - STATE(342), 1, - sym__everything, - STATE(359), 3, - sym__exposing, - sym_exposing_everything, - sym_exposing_list, - [4855] = 2, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_DASH_GT, + anon_sym_COLON, + [5393] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(329), 6, + ACTIONS(352), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4867] = 2, + [5405] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(331), 6, + ACTIONS(354), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4879] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(319), 1, - anon_sym_DOT, - STATE(143), 1, - aux_sym_module_name_repeat1, - ACTIONS(333), 4, - anon_sym_exports, - anon_sym_SEMI, - anon_sym_as, - anon_sym_LPAREN, - [4895] = 2, + [5417] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(335), 6, + ACTIONS(356), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4907] = 2, + [5429] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(337), 6, + ACTIONS(358), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4919] = 5, + [5441] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(294), 1, + ACTIONS(310), 1, anon_sym_LPAREN, - ACTIONS(339), 1, + ACTIONS(360), 1, anon_sym_SEMI, - STATE(342), 1, + STATE(356), 1, sym__everything, - STATE(324), 3, + STATE(358), 3, sym__exposing, sym_exposing_everything, sym_exposing_list, - [4937] = 2, + [5459] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(284), 6, + ACTIONS(310), 1, anon_sym_LPAREN, + ACTIONS(362), 1, + anon_sym_SEMI, + STATE(356), 1, + sym__everything, + STATE(336), 3, + sym__exposing, + sym_exposing_everything, + sym_exposing_list, + [5477] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(364), 6, + anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, - anon_sym_COLON, - [4949] = 3, + anon_sym_RBRACE, + [5489] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(343), 1, - anon_sym_DASH_GT, - ACTIONS(341), 5, + ACTIONS(366), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, + anon_sym_DASH_GT, anon_sym_RBRACE, - [4963] = 5, + [5501] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(274), 1, + ACTIONS(314), 1, sym__proper_name, - ACTIONS(276), 1, + ACTIONS(316), 1, sym__name, - STATE(149), 1, + STATE(167), 1, sym_exposing_type_name, - STATE(299), 3, + STATE(292), 3, sym__exposing_list_item, sym_exposing_type, sym_exposing_value, - [4981] = 2, + [5519] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(345), 6, + ACTIONS(368), 6, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_RBRACE, - [4993] = 4, + [5531] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(349), 1, + ACTIONS(372), 1, anon_sym_DOT, - STATE(143), 1, + STATE(152), 1, aux_sym_module_name_repeat1, - ACTIONS(347), 4, + ACTIONS(370), 4, anon_sym_exports, anon_sym_SEMI, anon_sym_as, anon_sym_LPAREN, - [5009] = 2, + [5547] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(352), 6, - anon_sym_SEMI, + ACTIONS(375), 1, + ts_builtin_sym_end, + ACTIONS(377), 4, + anon_sym_import, + anon_sym_type, + anon_sym_foreign, + sym__name, + [5560] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(379), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, - anon_sym_RBRACE, - [5021] = 2, + anon_sym_COLON, + [5571] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(354), 6, + ACTIONS(370), 5, + anon_sym_exports, anon_sym_SEMI, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_DASH_GT, - anon_sym_RBRACE, - [5033] = 2, + anon_sym_DOT, + anon_sym_as, + anon_sym_LPAREN, + [5582] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(356), 5, + ACTIONS(381), 5, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_RBRACE, - [5044] = 2, + [5593] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(286), 5, + ACTIONS(383), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_COLON, - [5055] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(358), 1, - ts_builtin_sym_end, - ACTIONS(360), 4, - anon_sym_import, - anon_sym_type, - anon_sym_foreign, - sym__name, - [5068] = 5, + [5604] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(362), 1, - anon_sym_LPAREN, - STATE(272), 1, - sym_exposing_type_constructors, - STATE(274), 1, - sym__everything, - ACTIONS(364), 2, + ACTIONS(385), 5, + anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, - [5085] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(347), 5, - anon_sym_exports, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_as, - anon_sym_LPAREN, - [5096] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(366), 1, + anon_sym_EQ, anon_sym_RBRACE, - ACTIONS(368), 1, - sym__name, - STATE(246), 1, - sym_type_record_field, - STATE(341), 1, - sym_type_record_field_label, - STATE(343), 1, - sym_type_open_record_row_variable, - [5115] = 3, + [5615] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(370), 1, + ACTIONS(387), 1, ts_builtin_sym_end, - ACTIONS(372), 4, + ACTIONS(389), 4, anon_sym_import, anon_sym_type, anon_sym_foreign, sym__name, - [5128] = 4, + [5628] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(294), 1, - anon_sym_LPAREN, - STATE(342), 1, - sym__everything, - STATE(344), 3, - sym__exposing, - sym_exposing_everything, - sym_exposing_list, - [5143] = 3, + ACTIONS(391), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_DASH_GT, + anon_sym_COLON, + [5639] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(374), 1, + ACTIONS(393), 1, ts_builtin_sym_end, - ACTIONS(376), 4, + ACTIONS(395), 4, anon_sym_import, anon_sym_type, anon_sym_foreign, sym__name, - [5156] = 2, + [5652] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(378), 5, - anon_sym_SEMI, + ACTIONS(397), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, - anon_sym_RBRACE, - [5167] = 3, + anon_sym_DASH_GT, + anon_sym_COLON, + [5663] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(380), 1, + ACTIONS(399), 1, ts_builtin_sym_end, - ACTIONS(382), 4, + ACTIONS(401), 4, anon_sym_import, anon_sym_type, anon_sym_foreign, sym__name, - [5180] = 3, + [5676] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(384), 1, + ACTIONS(403), 1, ts_builtin_sym_end, - ACTIONS(386), 4, + ACTIONS(405), 4, anon_sym_import, anon_sym_type, anon_sym_foreign, sym__name, - [5193] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(388), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_DASH_GT, - anon_sym_COLON, - [5204] = 2, + [5689] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(390), 5, + ACTIONS(407), 5, + anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, - anon_sym_DASH_GT, - anon_sym_COLON, - [5215] = 3, + anon_sym_RBRACE, + [5700] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(392), 1, + ACTIONS(409), 1, ts_builtin_sym_end, - ACTIONS(394), 4, + ACTIONS(411), 4, anon_sym_import, anon_sym_type, anon_sym_foreign, sym__name, - [5228] = 2, + [5713] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(396), 5, + ACTIONS(413), 1, + anon_sym_LPAREN, + STATE(303), 1, + sym_exposing_type_constructors, + STATE(310), 1, + sym__everything, + ACTIONS(415), 2, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_EQ, - anon_sym_DASH_GT, - anon_sym_COLON, - [5239] = 2, + [5730] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(398), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_DASH_GT, - anon_sym_COLON, - [5250] = 3, + ACTIONS(417), 1, + ts_builtin_sym_end, + ACTIONS(419), 4, + anon_sym_import, + anon_sym_type, + anon_sym_foreign, + sym__name, + [5743] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(400), 1, + ACTIONS(421), 1, ts_builtin_sym_end, - ACTIONS(402), 4, + ACTIONS(423), 4, anon_sym_import, anon_sym_type, anon_sym_foreign, sym__name, - [5263] = 2, + [5756] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(404), 5, + ACTIONS(302), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_COLON, - [5274] = 2, + [5767] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(406), 5, + ACTIONS(425), 5, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_RBRACE, - [5285] = 2, + [5778] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(427), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_DASH_GT, + anon_sym_COLON, + [5789] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(310), 1, + anon_sym_LPAREN, + STATE(356), 1, + sym__everything, + STATE(357), 3, + sym__exposing, + sym_exposing_everything, + sym_exposing_list, + [5804] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(429), 1, + anon_sym_RBRACE, + ACTIONS(431), 1, + sym__name, + STATE(255), 1, + sym_type_record_field, + STATE(339), 1, + sym_type_open_record_row_variable, + STATE(366), 1, + sym_type_record_field_label, + [5823] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(408), 5, + ACTIONS(433), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_COLON, - [5296] = 2, + [5834] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(410), 5, + ACTIONS(435), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_COLON, - [5307] = 3, + [5845] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(412), 1, + ACTIONS(437), 1, ts_builtin_sym_end, - ACTIONS(414), 4, + ACTIONS(439), 4, anon_sym_import, anon_sym_type, anon_sym_foreign, sym__name, - [5320] = 3, + [5858] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(416), 1, + ACTIONS(441), 1, ts_builtin_sym_end, - ACTIONS(418), 4, - anon_sym_import, + ACTIONS(443), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5333] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(420), 5, - anon_sym_SEMI, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_RBRACE, - [5344] = 3, + [5870] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(422), 1, + ACTIONS(445), 1, ts_builtin_sym_end, - ACTIONS(424), 3, + ACTIONS(447), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5356] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(428), 1, - anon_sym_COMMA, - STATE(172), 1, - aux_sym_expression_call_arguments_repeat1, - ACTIONS(426), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - [5370] = 5, + [5882] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(431), 1, + ACTIONS(449), 1, anon_sym_LPAREN, - ACTIONS(433), 1, + ACTIONS(451), 1, sym__proper_name, - STATE(119), 1, + STATE(127), 1, sym_module_name, - STATE(282), 1, + STATE(288), 1, sym_module_import_package, - [5386] = 3, + [5898] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(435), 1, - ts_builtin_sym_end, - ACTIONS(437), 3, - anon_sym_type, - anon_sym_foreign, + ACTIONS(453), 1, + anon_sym_SEMI, + ACTIONS(455), 1, + anon_sym_LPAREN, + ACTIONS(457), 1, + anon_sym_EQ, + STATE(304), 1, + sym_type_declaration_variables, + [5914] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(459), 1, + anon_sym_RBRACE, + ACTIONS(461), 1, sym__name, - [5398] = 3, + STATE(282), 1, + sym_type_record_field, + STATE(366), 1, + sym_type_record_field_label, + [5930] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(439), 1, + ACTIONS(463), 1, ts_builtin_sym_end, - ACTIONS(441), 3, + ACTIONS(465), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5410] = 3, + [5942] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(443), 1, - ts_builtin_sym_end, - ACTIONS(445), 3, - anon_sym_type, - anon_sym_foreign, + ACTIONS(467), 1, + anon_sym_PIPE, + ACTIONS(469), 1, + sym__proper_name, + STATE(192), 1, + sym_type_declaration_constructor_name, + STATE(259), 1, + sym_type_declaration_constructor, + [5958] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(471), 2, + anon_sym_in, + sym__name, + ACTIONS(473), 2, + sym__proper_name, + sym__unused_name, + [5970] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(475), 1, + anon_sym_RBRACE, + ACTIONS(477), 1, + sym__name, + STATE(281), 1, + sym_expression_record_field, + STATE(361), 1, + sym_expression_record_field_label, + [5986] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(479), 1, + sym__proper_name, + ACTIONS(481), 1, sym__name, - [5422] = 3, + STATE(86), 1, + sym_expression_variable_name, + STATE(89), 1, + sym_expression_constructor_proper_name, + [6002] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(447), 1, + ACTIONS(483), 1, ts_builtin_sym_end, - ACTIONS(449), 3, + ACTIONS(485), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5434] = 5, + [6014] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(451), 1, + ACTIONS(487), 4, anon_sym_SEMI, - ACTIONS(453), 1, - anon_sym_LPAREN, - ACTIONS(455), 1, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_EQ, - STATE(298), 1, - sym_type_declaration_variables, - [5450] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(457), 1, - anon_sym_RBRACE, - ACTIONS(459), 1, - sym__name, - STATE(306), 1, - sym_expression_record_field, - STATE(360), 1, - sym_expression_record_field_label, - [5466] = 5, + [6024] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(461), 1, - anon_sym_RBRACE, - ACTIONS(463), 1, sym__name, - STATE(281), 1, + ACTIONS(489), 1, + anon_sym_RBRACE, + STATE(282), 1, sym_type_record_field, - STATE(341), 1, + STATE(366), 1, sym_type_record_field_label, - [5482] = 3, + [6040] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(85), 1, - anon_sym_EQ, - ACTIONS(125), 3, - anon_sym_DOT, + ACTIONS(491), 1, + anon_sym_PIPE, + ACTIONS(494), 1, + anon_sym_end, + STATE(191), 2, + sym_expression_match_arm, + aux_sym_expression_match_repeat1, + [6054] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(498), 1, anon_sym_LPAREN, + STATE(300), 1, + sym_type_declaration_constructor_fields, + ACTIONS(496), 2, + anon_sym_SEMI, anon_sym_PIPE, - [5494] = 3, + [6068] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(465), 1, + ACTIONS(500), 1, ts_builtin_sym_end, - ACTIONS(467), 3, + ACTIONS(502), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5506] = 3, + [6080] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(469), 1, + ACTIONS(504), 1, ts_builtin_sym_end, - ACTIONS(471), 3, + ACTIONS(506), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5518] = 5, + [6092] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(473), 1, - anon_sym_PIPE, - ACTIONS(475), 1, + ACTIONS(469), 1, sym__proper_name, - STATE(186), 1, + ACTIONS(508), 1, + anon_sym_PIPE, + STATE(192), 1, sym_type_declaration_constructor_name, - STATE(225), 1, + STATE(275), 1, sym_type_declaration_constructor, - [5534] = 5, + [6108] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, + ACTIONS(87), 1, + anon_sym_EQ, + ACTIONS(103), 3, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_PIPE, + [6120] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(510), 2, + anon_sym_in, sym__name, + ACTIONS(512), 2, + sym__proper_name, + sym__unused_name, + [6132] = 5, + ACTIONS(3), 1, + sym_comment, ACTIONS(477), 1, + sym__name, + ACTIONS(514), 1, anon_sym_RBRACE, STATE(281), 1, - sym_type_record_field, - STATE(341), 1, - sym_type_record_field_label, - [5550] = 4, + sym_expression_record_field, + STATE(361), 1, + sym_expression_record_field_label, + [6148] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(481), 1, - anon_sym_LPAREN, - STATE(286), 1, - sym_type_declaration_constructor_fields, - ACTIONS(479), 2, - anon_sym_SEMI, - anon_sym_PIPE, - [5564] = 4, + ACTIONS(516), 1, + ts_builtin_sym_end, + ACTIONS(518), 3, + anon_sym_type, + anon_sym_foreign, + sym__name, + [6160] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(483), 1, - anon_sym_PIPE, - ACTIONS(486), 1, - anon_sym_end, - STATE(187), 2, - sym_expression_match_arm, - aux_sym_expression_match_repeat1, - [5578] = 4, + ACTIONS(477), 1, + sym__name, + ACTIONS(520), 1, + anon_sym_RBRACE, + STATE(281), 1, + sym_expression_record_field, + STATE(361), 1, + sym_expression_record_field_label, + [6176] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(488), 1, - anon_sym_PIPE, - ACTIONS(490), 1, - anon_sym_end, - STATE(187), 2, - sym_expression_match_arm, - aux_sym_expression_match_repeat1, - [5592] = 5, + ACTIONS(522), 1, + ts_builtin_sym_end, + ACTIONS(524), 3, + anon_sym_type, + anon_sym_foreign, + sym__name, + [6188] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(459), 1, + ACTIONS(526), 1, + ts_builtin_sym_end, + ACTIONS(528), 3, + anon_sym_type, + anon_sym_foreign, sym__name, - ACTIONS(492), 1, + [6200] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(461), 1, + sym__name, + ACTIONS(530), 1, anon_sym_RBRACE, - STATE(306), 1, - sym_expression_record_field, - STATE(360), 1, - sym_expression_record_field_label, - [5608] = 5, + STATE(282), 1, + sym_type_record_field, + STATE(366), 1, + sym_type_record_field_label, + [6216] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, + ACTIONS(461), 1, sym__name, - ACTIONS(494), 1, + ACTIONS(532), 1, anon_sym_RBRACE, - STATE(281), 1, + STATE(282), 1, sym_type_record_field, - STATE(341), 1, + STATE(366), 1, sym_type_record_field_label, - [5624] = 5, + [6232] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(459), 1, + ACTIONS(536), 1, + anon_sym_COLON, + STATE(318), 1, + sym_type_annotation, + ACTIONS(534), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [6246] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(477), 1, sym__name, - ACTIONS(496), 1, + ACTIONS(538), 1, anon_sym_RBRACE, - STATE(306), 1, + STATE(281), 1, sym_expression_record_field, - STATE(360), 1, + STATE(361), 1, sym_expression_record_field_label, - [5640] = 3, + [6262] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(498), 1, + ACTIONS(540), 1, ts_builtin_sym_end, - ACTIONS(500), 3, + ACTIONS(542), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5652] = 4, + [6274] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(504), 1, - anon_sym_COLON, - STATE(310), 1, - sym_type_annotation, - ACTIONS(502), 2, - anon_sym_RPAREN, + ACTIONS(546), 1, anon_sym_COMMA, - [5666] = 3, + STATE(208), 1, + aux_sym_expression_call_arguments_repeat1, + ACTIONS(544), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + [6288] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(506), 1, + ACTIONS(549), 1, ts_builtin_sym_end, - ACTIONS(508), 3, + ACTIONS(551), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5678] = 3, + [6300] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(510), 1, + ACTIONS(553), 1, ts_builtin_sym_end, - ACTIONS(512), 3, + ACTIONS(555), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5690] = 3, + [6312] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(514), 1, + ACTIONS(557), 1, + anon_sym_PIPE, + ACTIONS(559), 1, + anon_sym_end, + STATE(191), 2, + sym_expression_match_arm, + aux_sym_expression_match_repeat1, + [6326] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(561), 1, ts_builtin_sym_end, - ACTIONS(516), 3, + ACTIONS(563), 3, anon_sym_type, anon_sym_foreign, sym__name, - [5702] = 5, + [6338] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(475), 1, - sym__proper_name, - ACTIONS(518), 1, - anon_sym_PIPE, - STATE(186), 1, - sym_type_declaration_constructor_name, - STATE(239), 1, - sym_type_declaration_constructor, - [5718] = 5, + ACTIONS(536), 1, + anon_sym_COLON, + ACTIONS(565), 1, + anon_sym_EQ, + STATE(363), 1, + sym_type_annotation, + [6351] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(459), 1, + ACTIONS(477), 1, sym__name, - ACTIONS(520), 1, - anon_sym_RBRACE, - STATE(306), 1, + STATE(241), 1, sym_expression_record_field, - STATE(360), 1, + STATE(361), 1, sym_expression_record_field_label, - [5734] = 3, + [6364] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(522), 1, - ts_builtin_sym_end, - ACTIONS(524), 3, - anon_sym_type, - anon_sym_foreign, - sym__name, - [5746] = 2, + ACTIONS(567), 1, + anon_sym_RPAREN, + ACTIONS(569), 1, + anon_sym_COMMA, + STATE(249), 1, + aux_sym_expression_function_repeat1, + [6377] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(526), 4, + ACTIONS(557), 1, + anon_sym_PIPE, + STATE(211), 2, + sym_expression_match_arm, + aux_sym_expression_match_repeat1, + [6388] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(571), 3, anon_sym_SEMI, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_EQ, - [5756] = 5, + [6397] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(528), 1, + ACTIONS(573), 1, + anon_sym_alias, + ACTIONS(575), 1, sym__proper_name, - ACTIONS(530), 1, - sym__name, - STATE(61), 1, - sym_expression_variable_name, - STATE(87), 1, - sym_expression_constructor_proper_name, - [5772] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(532), 1, - ts_builtin_sym_end, - ACTIONS(534), 3, - anon_sym_type, - anon_sym_foreign, - sym__name, - [5784] = 5, + STATE(181), 1, + sym_type_declaration_name, + [6410] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, - sym__name, ACTIONS(536), 1, - anon_sym_RBRACE, - STATE(281), 1, - sym_type_record_field, - STATE(341), 1, - sym_type_record_field_label, - [5800] = 2, + anon_sym_COLON, + ACTIONS(577), 1, + anon_sym_EQ, + STATE(359), 1, + sym_type_annotation, + [6423] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(538), 3, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_PIPE, - [5809] = 4, + ACTIONS(43), 1, + anon_sym_RBRACK, + ACTIONS(579), 1, + anon_sym_COMMA, + STATE(208), 1, + aux_sym_expression_call_arguments_repeat1, + [6436] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(45), 1, - anon_sym_RBRACK, - ACTIONS(540), 1, + ACTIONS(581), 1, + anon_sym_RPAREN, + ACTIONS(583), 1, anon_sym_COMMA, - STATE(172), 1, + STATE(262), 1, aux_sym_expression_call_arguments_repeat1, - [5822] = 4, + [6449] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, + ACTIONS(85), 1, + anon_sym_RPAREN, + ACTIONS(585), 1, + anon_sym_COMMA, + STATE(267), 1, + aux_sym_type_declaration_constructor_fields_repeat1, + [6462] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(461), 1, sym__name, - STATE(255), 1, + STATE(269), 1, sym_type_record_field, - STATE(341), 1, + STATE(366), 1, sym_type_record_field_label, - [5835] = 4, + [6475] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(542), 1, - anon_sym_DASH_GT, - ACTIONS(544), 1, - anon_sym_COLON, - STATE(350), 1, - sym_return_type_annotation, - [5848] = 4, + ACTIONS(530), 1, + anon_sym_RBRACE, + ACTIONS(587), 1, + anon_sym_COMMA, + STATE(272), 1, + aux_sym_type_closed_record_repeat1, + [6488] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(77), 1, + ACTIONS(589), 1, anon_sym_RPAREN, - ACTIONS(546), 1, + ACTIONS(591), 1, anon_sym_COMMA, - STATE(253), 1, + STATE(276), 1, aux_sym_type_declaration_constructor_fields_repeat1, - [5861] = 4, + [6501] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(548), 1, + ACTIONS(593), 3, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_EQ, + [6510] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(330), 1, anon_sym_RPAREN, - ACTIONS(550), 1, + ACTIONS(595), 1, anon_sym_COMMA, - STATE(209), 1, + STATE(228), 1, aux_sym_exposing_list_repeat1, - [5874] = 4, + [6523] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(553), 1, + ACTIONS(597), 1, anon_sym_RPAREN, - ACTIONS(555), 1, + ACTIONS(599), 1, anon_sym_COMMA, - STATE(247), 1, - aux_sym_expression_call_arguments_repeat1, - [5887] = 4, + STATE(228), 1, + aux_sym_exposing_list_repeat1, + [6536] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(504), 1, - anon_sym_COLON, - ACTIONS(557), 1, + ACTIONS(455), 1, + anon_sym_LPAREN, + ACTIONS(602), 1, anon_sym_EQ, - STATE(331), 1, - sym_type_annotation, - [5900] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(260), 1, - anon_sym_RPAREN, - ACTIONS(559), 1, - anon_sym_COMMA, - STATE(265), 1, - aux_sym_pattern_constructor_fields_repeat1, - [5913] = 3, + STATE(324), 1, + sym_type_declaration_variables, + [6549] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(488), 1, - anon_sym_PIPE, - STATE(188), 2, - sym_expression_match_arm, - aux_sym_expression_match_repeat1, - [5924] = 2, + ACTIONS(604), 1, + anon_sym_DASH_GT, + ACTIONS(606), 1, + anon_sym_COLON, + STATE(369), 1, + sym_return_type_annotation, + [6562] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(561), 3, - anon_sym_LPAREN, + ACTIONS(608), 1, anon_sym_RPAREN, + ACTIONS(610), 1, anon_sym_COMMA, - [5933] = 4, + STATE(231), 1, + aux_sym_pattern_constructor_fields_repeat1, + [6575] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(563), 1, + ACTIONS(613), 1, anon_sym_RPAREN, - ACTIONS(565), 1, + ACTIONS(615), 1, sym__name, - STATE(302), 1, + STATE(307), 1, sym_type_declaration_variable, - [5946] = 4, + [6588] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(567), 1, + ACTIONS(615), 1, + sym__name, + ACTIONS(617), 1, anon_sym_RPAREN, - ACTIONS(569), 1, - anon_sym_COMMA, - STATE(216), 1, - aux_sym_type_declaration_variables_repeat1, - [5959] = 4, + STATE(307), 1, + sym_type_declaration_variable, + [6601] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(536), 1, - anon_sym_RBRACE, - ACTIONS(572), 1, + ACTIONS(619), 1, + anon_sym_RPAREN, + ACTIONS(621), 1, anon_sym_COMMA, - STATE(259), 1, - aux_sym_type_closed_record_repeat1, - [5972] = 4, + STATE(234), 1, + aux_sym_type_declaration_variables_repeat1, + [6614] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(574), 1, + ACTIONS(624), 1, anon_sym_SEMI, - ACTIONS(576), 1, + ACTIONS(626), 1, anon_sym_PIPE, - STATE(220), 1, + STATE(237), 1, aux_sym_type_declaration_repeat1, - [5985] = 4, + [6627] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, + ACTIONS(461), 1, sym__name, - STATE(281), 1, + STATE(282), 1, sym_type_record_field, - STATE(341), 1, + STATE(366), 1, sym_type_record_field_label, - [5998] = 4, + [6640] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(578), 1, + ACTIONS(628), 1, anon_sym_SEMI, - ACTIONS(580), 1, + ACTIONS(630), 1, anon_sym_PIPE, - STATE(220), 1, + STATE(237), 1, aux_sym_type_declaration_repeat1, - [6011] = 4, + [6653] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(583), 1, + ACTIONS(633), 1, anon_sym_RPAREN, - ACTIONS(585), 1, + ACTIONS(635), 1, anon_sym_COMMA, - STATE(244), 1, + STATE(277), 1, aux_sym_type_declaration_constructor_fields_repeat1, - [6024] = 4, + [6666] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(576), 1, + ACTIONS(626), 1, anon_sym_PIPE, - ACTIONS(587), 1, + ACTIONS(637), 1, anon_sym_SEMI, - STATE(264), 1, + STATE(279), 1, aux_sym_type_declaration_repeat1, - [6037] = 4, + [6679] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(589), 1, - anon_sym_RPAREN, - ACTIONS(591), 1, - anon_sym_COMMA, - STATE(232), 1, - aux_sym_expression_function_repeat1, - [6050] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(576), 1, + ACTIONS(626), 1, anon_sym_PIPE, - ACTIONS(587), 1, + ACTIONS(637), 1, anon_sym_SEMI, - STATE(220), 1, + STATE(237), 1, aux_sym_type_declaration_repeat1, - [6063] = 4, + [6692] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(576), 1, - anon_sym_PIPE, - ACTIONS(593), 1, - anon_sym_SEMI, - STATE(224), 1, - aux_sym_type_declaration_repeat1, - [6076] = 4, + ACTIONS(639), 1, + anon_sym_COMMA, + ACTIONS(641), 1, + anon_sym_RBRACE, + STATE(271), 1, + aux_sym_expression_record_repeat1, + [6705] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(595), 1, + ACTIONS(643), 3, + anon_sym_LPAREN, anon_sym_RPAREN, - ACTIONS(597), 1, anon_sym_COMMA, - STATE(268), 1, - aux_sym_exposing_list_repeat1, - [6089] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(544), 1, - anon_sym_COLON, - ACTIONS(599), 1, - anon_sym_DASH_GT, - STATE(317), 1, - sym_return_type_annotation, - [6102] = 4, + [6714] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(601), 1, + ACTIONS(645), 1, anon_sym_COMMA, - ACTIONS(604), 1, + ACTIONS(648), 1, anon_sym_RBRACE, - STATE(228), 1, + STATE(243), 1, aux_sym_expression_record_repeat1, - [6115] = 4, + [6727] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(494), 1, + ACTIONS(489), 1, anon_sym_RBRACE, - ACTIONS(606), 1, + ACTIONS(650), 1, anon_sym_COMMA, - STATE(259), 1, + STATE(272), 1, aux_sym_type_closed_record_repeat1, - [6128] = 4, + [6740] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(492), 1, - anon_sym_RBRACE, - ACTIONS(608), 1, + ACTIONS(613), 1, + anon_sym_RPAREN, + ACTIONS(652), 1, anon_sym_COMMA, - STATE(228), 1, - aux_sym_expression_record_repeat1, - [6141] = 4, + STATE(234), 1, + aux_sym_type_declaration_variables_repeat1, + [6753] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(654), 1, + anon_sym_RPAREN, + ACTIONS(656), 1, + anon_sym_COMMA, + STATE(265), 1, + aux_sym_pattern_constructor_fields_repeat1, + [6766] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(658), 1, + anon_sym_RPAREN, + ACTIONS(660), 1, + anon_sym_COMMA, + STATE(227), 1, + aux_sym_exposing_list_repeat1, + [6779] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(544), 1, + ACTIONS(606), 1, anon_sym_COLON, - ACTIONS(610), 1, + ACTIONS(662), 1, anon_sym_DASH_GT, - STATE(349), 1, + STATE(345), 1, sym_return_type_annotation, - [6154] = 4, + [6792] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(234), 1, + ACTIONS(245), 1, anon_sym_RPAREN, - ACTIONS(612), 1, + ACTIONS(664), 1, anon_sym_COMMA, - STATE(249), 1, + STATE(257), 1, aux_sym_expression_function_repeat1, - [6167] = 4, + [6805] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(614), 1, + ACTIONS(666), 1, anon_sym_RPAREN, - ACTIONS(616), 1, + ACTIONS(668), 1, anon_sym_COMMA, - STATE(258), 1, + STATE(245), 1, aux_sym_type_declaration_variables_repeat1, - [6180] = 4, + [6818] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(475), 1, + ACTIONS(626), 1, + anon_sym_PIPE, + ACTIONS(670), 1, + anon_sym_SEMI, + STATE(235), 1, + aux_sym_type_declaration_repeat1, + [6831] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(469), 1, sym__proper_name, - STATE(186), 1, + STATE(192), 1, sym_type_declaration_constructor_name, STATE(251), 1, sym_type_declaration_constructor, - [6193] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(459), 1, - sym__name, - STATE(238), 1, - sym_expression_record_field, - STATE(360), 1, - sym_expression_record_field_label, - [6206] = 4, + [6844] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(453), 1, - anon_sym_LPAREN, - ACTIONS(618), 1, + ACTIONS(536), 1, + anon_sym_COLON, + ACTIONS(672), 1, anon_sym_EQ, - STATE(313), 1, - sym_type_declaration_variables, - [6219] = 4, + STATE(331), 1, + sym_type_annotation, + [6857] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(620), 1, - anon_sym_RPAREN, - ACTIONS(622), 1, - anon_sym_COMMA, - STATE(263), 1, - aux_sym_type_declaration_constructor_fields_repeat1, - [6232] = 4, + ACTIONS(674), 3, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_PIPE, + [6866] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(624), 1, + ACTIONS(676), 1, anon_sym_COMMA, - ACTIONS(626), 1, + ACTIONS(678), 1, anon_sym_RBRACE, - STATE(260), 1, - aux_sym_expression_record_repeat1, - [6245] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(576), 1, - anon_sym_PIPE, - ACTIONS(628), 1, - anon_sym_SEMI, - STATE(243), 1, - aux_sym_type_declaration_repeat1, - [6258] = 4, + STATE(224), 1, + aux_sym_type_closed_record_repeat1, + [6879] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(475), 1, - sym__proper_name, - STATE(186), 1, - sym_type_declaration_constructor_name, - STATE(222), 1, - sym_type_declaration_constructor, - [6271] = 2, + ACTIONS(606), 1, + anon_sym_COLON, + ACTIONS(680), 1, + anon_sym_DASH_GT, + STATE(325), 1, + sym_return_type_annotation, + [6892] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(630), 3, - anon_sym_SEMI, + ACTIONS(682), 1, anon_sym_RPAREN, + ACTIONS(684), 1, anon_sym_COMMA, - [6280] = 2, + STATE(257), 1, + aux_sym_expression_function_repeat1, + [6905] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(426), 3, + ACTIONS(544), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACK, - [6289] = 4, + [6914] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(576), 1, + ACTIONS(626), 1, anon_sym_PIPE, - ACTIONS(632), 1, + ACTIONS(687), 1, anon_sym_SEMI, - STATE(220), 1, + STATE(264), 1, aux_sym_type_declaration_repeat1, - [6302] = 4, + [6927] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(65), 1, + ACTIONS(689), 1, anon_sym_RPAREN, - ACTIONS(634), 1, + ACTIONS(691), 1, anon_sym_COMMA, - STATE(253), 1, + STATE(222), 1, aux_sym_type_declaration_constructor_fields_repeat1, - [6315] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(636), 1, - anon_sym_RPAREN, - ACTIONS(638), 1, - anon_sym_COMMA, - STATE(212), 1, - aux_sym_pattern_constructor_fields_repeat1, - [6328] = 4, + [6940] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_COMMA, - ACTIONS(642), 1, - anon_sym_RBRACE, - STATE(217), 1, - aux_sym_type_closed_record_repeat1, - [6341] = 4, + ACTIONS(606), 1, + anon_sym_COLON, + ACTIONS(693), 1, + anon_sym_DASH_GT, + STATE(347), 1, + sym_return_type_annotation, + [6953] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(37), 1, + ACTIONS(45), 1, anon_sym_RPAREN, - ACTIONS(644), 1, + ACTIONS(695), 1, anon_sym_COMMA, - STATE(172), 1, + STATE(208), 1, aux_sym_expression_call_arguments_repeat1, - [6354] = 4, + [6966] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(475), 1, + ACTIONS(469), 1, sym__proper_name, - STATE(186), 1, + STATE(192), 1, sym_type_declaration_constructor_name, - STATE(271), 1, + STATE(312), 1, sym_type_declaration_constructor, - [6367] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(646), 1, - anon_sym_RPAREN, - ACTIONS(648), 1, - anon_sym_COMMA, - STATE(249), 1, - aux_sym_expression_function_repeat1, - [6380] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(544), 1, - anon_sym_COLON, - ACTIONS(651), 1, - anon_sym_DASH_GT, - STATE(327), 1, - sym_return_type_annotation, - [6393] = 4, + [6979] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(576), 1, + ACTIONS(626), 1, anon_sym_PIPE, - ACTIONS(632), 1, + ACTIONS(670), 1, anon_sym_SEMI, - STATE(218), 1, + STATE(237), 1, aux_sym_type_declaration_repeat1, - [6406] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(653), 1, - anon_sym_RPAREN, - ACTIONS(655), 1, - anon_sym_COMMA, - STATE(208), 1, - aux_sym_type_declaration_constructor_fields_repeat1, - [6419] = 4, + [6992] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(657), 1, + ACTIONS(277), 1, anon_sym_RPAREN, - ACTIONS(659), 1, + ACTIONS(697), 1, anon_sym_COMMA, - STATE(253), 1, - aux_sym_type_declaration_constructor_fields_repeat1, - [6432] = 4, + STATE(231), 1, + aux_sym_pattern_constructor_fields_repeat1, + [7005] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(149), 1, - anon_sym_LPAREN, - ACTIONS(662), 1, - anon_sym_PIPE, - STATE(75), 1, - sym_expression_call_arguments, - [6445] = 4, + ACTIONS(469), 1, + sym__proper_name, + STATE(192), 1, + sym_type_declaration_constructor_name, + STATE(239), 1, + sym_type_declaration_constructor, + [7018] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(664), 1, + ACTIONS(699), 1, + anon_sym_RPAREN, + ACTIONS(701), 1, anon_sym_COMMA, - ACTIONS(666), 1, - anon_sym_RBRACE, - STATE(229), 1, - aux_sym_type_closed_record_repeat1, - [6458] = 4, + STATE(267), 1, + aux_sym_type_declaration_constructor_fields_repeat1, + [7031] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(668), 1, + ACTIONS(704), 1, anon_sym_COMMA, - ACTIONS(670), 1, + ACTIONS(706), 1, anon_sym_RBRACE, - STATE(230), 1, + STATE(278), 1, aux_sym_expression_record_repeat1, - [6471] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(459), 1, - sym__name, - STATE(306), 1, - sym_expression_record_field, - STATE(360), 1, - sym_expression_record_field_label, - [6484] = 4, + [7044] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(672), 1, - anon_sym_RPAREN, - ACTIONS(674), 1, + ACTIONS(708), 1, anon_sym_COMMA, - STATE(216), 1, - aux_sym_type_declaration_variables_repeat1, - [6497] = 4, + ACTIONS(710), 1, + anon_sym_RBRACE, + STATE(244), 1, + aux_sym_type_closed_record_repeat1, + [7057] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(676), 1, + ACTIONS(712), 1, anon_sym_COMMA, - ACTIONS(679), 1, - anon_sym_RBRACE, - STATE(259), 1, - aux_sym_type_closed_record_repeat1, - [6510] = 4, + ACTIONS(714), 1, + anon_sym_RBRACK, + STATE(220), 1, + aux_sym_expression_call_arguments_repeat1, + [7070] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(457), 1, + ACTIONS(514), 1, anon_sym_RBRACE, - ACTIONS(681), 1, + ACTIONS(716), 1, anon_sym_COMMA, - STATE(228), 1, + STATE(243), 1, aux_sym_expression_record_repeat1, - [6523] = 4, + [7083] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(565), 1, - sym__name, - ACTIONS(672), 1, - anon_sym_RPAREN, - STATE(302), 1, - sym_type_declaration_variable, - [6536] = 2, + ACTIONS(718), 1, + anon_sym_COMMA, + ACTIONS(721), 1, + anon_sym_RBRACE, + STATE(272), 1, + aux_sym_type_closed_record_repeat1, + [7096] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(683), 3, - anon_sym_SEMI, + ACTIONS(113), 1, anon_sym_LPAREN, - anon_sym_EQ, - [6545] = 4, + ACTIONS(723), 1, + anon_sym_PIPE, + STATE(61), 1, + sym_expression_call_arguments, + [7109] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(73), 1, - anon_sym_RPAREN, - ACTIONS(685), 1, - anon_sym_COMMA, - STATE(253), 1, - aux_sym_type_declaration_constructor_fields_repeat1, - [6558] = 4, + ACTIONS(477), 1, + sym__name, + STATE(281), 1, + sym_expression_record_field, + STATE(361), 1, + sym_expression_record_field_label, + [7122] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(576), 1, + ACTIONS(626), 1, anon_sym_PIPE, - ACTIONS(687), 1, + ACTIONS(725), 1, anon_sym_SEMI, - STATE(220), 1, + STATE(240), 1, aux_sym_type_declaration_repeat1, - [6571] = 4, + [7135] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(689), 1, + ACTIONS(75), 1, anon_sym_RPAREN, - ACTIONS(691), 1, - anon_sym_COMMA, - STATE(265), 1, - aux_sym_pattern_constructor_fields_repeat1, - [6584] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(694), 1, + ACTIONS(727), 1, anon_sym_COMMA, - ACTIONS(696), 1, - anon_sym_RBRACK, - STATE(205), 1, - aux_sym_expression_call_arguments_repeat1, - [6597] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(504), 1, - anon_sym_COLON, - ACTIONS(698), 1, - anon_sym_EQ, - STATE(346), 1, - sym_type_annotation, - [6610] = 4, + STATE(267), 1, + aux_sym_type_declaration_constructor_fields_repeat1, + [7148] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(272), 1, + ACTIONS(63), 1, anon_sym_RPAREN, - ACTIONS(700), 1, + ACTIONS(729), 1, anon_sym_COMMA, - STATE(209), 1, - aux_sym_exposing_list_repeat1, - [6623] = 4, + STATE(267), 1, + aux_sym_type_declaration_constructor_fields_repeat1, + [7161] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(702), 1, - anon_sym_alias, - ACTIONS(704), 1, - sym__proper_name, - STATE(178), 1, - sym_type_declaration_name, - [6636] = 2, + ACTIONS(520), 1, + anon_sym_RBRACE, + ACTIONS(731), 1, + anon_sym_COMMA, + STATE(243), 1, + aux_sym_expression_record_repeat1, + [7174] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(706), 2, + ACTIONS(626), 1, + anon_sym_PIPE, + ACTIONS(733), 1, anon_sym_SEMI, - anon_sym_EQ, - [6644] = 2, + STATE(237), 1, + aux_sym_type_declaration_repeat1, + [7187] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(578), 2, - anon_sym_SEMI, - anon_sym_PIPE, - [6652] = 2, + ACTIONS(451), 1, + sym__proper_name, + STATE(377), 1, + sym_module_name, + [7197] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(708), 2, - anon_sym_RPAREN, + ACTIONS(648), 2, anon_sym_COMMA, - [6660] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(565), 1, - sym__name, - STATE(302), 1, - sym_type_declaration_variable, - [6670] = 2, + anon_sym_RBRACE, + [7205] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(710), 2, - anon_sym_RPAREN, + ACTIONS(721), 2, anon_sym_COMMA, - [6678] = 2, + anon_sym_RBRACE, + [7213] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(712), 2, - sym__proper_name, - sym__name, - [6686] = 3, + ACTIONS(735), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [7221] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(714), 1, + ACTIONS(737), 1, sym__name, - STATE(289), 1, + STATE(294), 1, sym_value_declaration_name, - [6696] = 2, + [7231] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(716), 2, + ACTIONS(739), 2, anon_sym_EQ, anon_sym_COLON, - [6704] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(459), 1, - sym__name, - STATE(71), 1, - sym_expression_record_field_label, - [6714] = 2, + [7239] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(718), 2, + ACTIONS(741), 2, anon_sym_PIPE, anon_sym_end, - [6722] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(720), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [6730] = 2, + [7247] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(679), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [6738] = 3, + ACTIONS(743), 1, + sym__proper_name, + STATE(122), 1, + sym_pattern_constructor_proper_name, + [7257] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, + ACTIONS(451), 1, sym__proper_name, - STATE(125), 1, + STATE(124), 1, sym_module_name, - [6748] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(689), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [6756] = 3, + [7267] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(704), 1, + ACTIONS(575), 1, sym__proper_name, - STATE(236), 1, + STATE(229), 1, sym_type_declaration_name, - [6766] = 2, + [7277] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(722), 2, + ACTIONS(745), 2, anon_sym_SEMI, anon_sym_EQ, - [6774] = 2, + [7285] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(724), 2, - anon_sym_SEMI, - anon_sym_PIPE, - [6782] = 2, + ACTIONS(615), 1, + sym__name, + STATE(307), 1, + sym_type_declaration_variable, + [7295] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(657), 2, + ACTIONS(597), 2, anon_sym_RPAREN, anon_sym_COMMA, - [6790] = 2, + [7303] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(646), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [6798] = 3, + ACTIONS(747), 2, + anon_sym_SEMI, + anon_sym_PIPE, + [7311] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(504), 1, + ACTIONS(536), 1, anon_sym_COLON, - STATE(330), 1, + STATE(344), 1, sym_type_annotation, - [6808] = 2, + [7321] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(726), 2, + ACTIONS(749), 2, anon_sym_SEMI, anon_sym_PIPE, - [6816] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(728), 1, - anon_sym_PIPE, - ACTIONS(730), 1, - anon_sym_COLON, - [6826] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(732), 1, - sym__proper_name, - STATE(117), 1, - sym_pattern_constructor_proper_name, - [6836] = 3, + [7329] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(734), 1, + ACTIONS(751), 1, sym__proper_name, - STATE(132), 1, + STATE(147), 1, sym_module_import_alias, - [6846] = 2, + [7339] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(736), 2, + ACTIONS(753), 1, anon_sym_SEMI, - anon_sym_PIPE, - [6854] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(738), 1, - anon_sym_SEMI, - ACTIONS(740), 1, + ACTIONS(755), 1, anon_sym_RBRACE, - [6864] = 3, + [7349] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, + ACTIONS(757), 2, sym__proper_name, - STATE(364), 1, - sym_module_name, - [6874] = 3, + sym__name, + [7357] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(565), 1, + ACTIONS(615), 1, sym__name, - STATE(233), 1, + STATE(250), 1, sym_type_declaration_variable, - [6884] = 3, + [7367] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(759), 2, + anon_sym_SEMI, + anon_sym_PIPE, + [7375] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(742), 1, + ACTIONS(761), 2, anon_sym_SEMI, - ACTIONS(744), 1, anon_sym_EQ, - [6894] = 2, + [7383] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(699), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [7391] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(548), 2, + ACTIONS(763), 2, anon_sym_RPAREN, anon_sym_COMMA, - [6902] = 2, + [7399] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(746), 2, + ACTIONS(765), 1, anon_sym_SEMI, + ACTIONS(767), 1, anon_sym_EQ, - [6910] = 3, + [7409] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(748), 1, - sym__proper_name, - STATE(124), 1, - sym_type_constructor_proper_name, - [6920] = 2, + ACTIONS(477), 1, + sym__name, + STATE(84), 1, + sym_expression_record_field_label, + [7419] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(567), 2, + ACTIONS(682), 2, anon_sym_RPAREN, anon_sym_COMMA, - [6928] = 2, + [7427] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(750), 2, - anon_sym_SEMI, + ACTIONS(619), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [7435] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(769), 1, anon_sym_PIPE, - [6936] = 2, + ACTIONS(771), 1, + anon_sym_COLON, + [7445] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(752), 2, + ACTIONS(608), 2, anon_sym_RPAREN, anon_sym_COMMA, - [6944] = 2, + [7453] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(754), 2, + ACTIONS(773), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACE, - [6952] = 2, + [7461] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(775), 2, + anon_sym_SEMI, + anon_sym_EQ, + [7469] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(628), 2, + anon_sym_SEMI, + anon_sym_PIPE, + [7477] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(777), 2, + anon_sym_SEMI, + anon_sym_PIPE, + [7485] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(779), 1, + sym__proper_name, + STATE(130), 1, + sym_type_constructor_proper_name, + [7495] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(604), 2, + ACTIONS(781), 2, anon_sym_COMMA, anon_sym_RBRACE, - [6960] = 3, + [7503] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(734), 1, - sym__proper_name, - STATE(138), 1, - sym_module_import_alias, - [6970] = 2, + ACTIONS(783), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [7511] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(785), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [7519] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(756), 2, + ACTIONS(787), 2, anon_sym_RPAREN, anon_sym_COMMA, - [6978] = 2, + [7527] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(758), 2, + ACTIONS(789), 2, anon_sym_SEMI, anon_sym_LPAREN, - [6986] = 2, + [7535] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(751), 1, + sym__proper_name, + STATE(146), 1, + sym_module_import_alias, + [7545] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(760), 2, + ACTIONS(791), 1, anon_sym_RPAREN, - anon_sym_COMMA, - [6994] = 2, + [7552] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(762), 1, - anon_sym_SEMI, - [7001] = 2, + ACTIONS(793), 1, + anon_sym_DASH_GT, + [7559] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(764), 1, - anon_sym_SEMI, - [7008] = 2, + ACTIONS(795), 1, + anon_sym_DASH_GT, + [7566] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(766), 1, + ACTIONS(797), 1, anon_sym_EQ, - [7015] = 2, + [7573] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(799), 1, + anon_sym_DASH_GT, + [7580] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(768), 1, + ACTIONS(801), 1, anon_sym_SEMI, - [7022] = 2, + [7587] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(770), 1, - anon_sym_DASH_GT, - [7029] = 2, + ACTIONS(803), 1, + anon_sym_SEMI, + [7594] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(772), 1, - sym__proper_name, - [7036] = 2, + ACTIONS(805), 1, + anon_sym_RBRACE, + [7601] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(774), 1, - anon_sym_DASH_GT, - [7043] = 2, + ACTIONS(771), 1, + anon_sym_COLON, + [7608] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(776), 1, + ACTIONS(807), 1, anon_sym_RPAREN, - [7050] = 2, + [7615] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(778), 1, - anon_sym_with, - [7057] = 2, + ACTIONS(809), 1, + anon_sym_EQ, + [7622] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(780), 1, - anon_sym_EQ, - [7064] = 2, + ACTIONS(811), 1, + anon_sym_else, + [7629] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(782), 1, - anon_sym_SEMI, - [7071] = 2, + ACTIONS(813), 1, + anon_sym_EQ, + [7636] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(784), 1, - anon_sym_RPAREN, - [7078] = 2, + ACTIONS(815), 1, + anon_sym_RBRACE, + [7643] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(786), 1, + ACTIONS(817), 1, anon_sym_SEMI, - [7085] = 2, + [7650] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(788), 1, + ACTIONS(819), 1, anon_sym_SEMI, - [7092] = 2, + [7657] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(790), 1, + ACTIONS(821), 1, + anon_sym_DASH_GT, + [7664] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(823), 1, anon_sym_SEMI, - [7099] = 2, + [7671] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(825), 1, + anon_sym_PIPE, + [7678] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(792), 1, + ACTIONS(827), 1, anon_sym_LBRACE, - [7106] = 2, + [7685] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(794), 1, + ACTIONS(829), 1, anon_sym_DASH_GT, - [7113] = 2, + [7692] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(796), 1, - anon_sym_RBRACE, - [7120] = 2, + ACTIONS(831), 1, + anon_sym_RPAREN, + [7699] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(798), 1, + ACTIONS(833), 1, anon_sym_LPAREN, - [7127] = 2, + [7706] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(800), 1, + ACTIONS(835), 1, anon_sym_SEMI, - [7134] = 2, + [7713] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(802), 1, - anon_sym_EQ, - [7141] = 2, + ACTIONS(837), 1, + anon_sym_DASH_GT, + [7720] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(804), 1, - anon_sym_SEMI, - [7148] = 2, + ACTIONS(839), 1, + anon_sym_DASH_GT, + [7727] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(806), 1, - anon_sym_LT_DASH, - [7155] = 2, + ACTIONS(841), 1, + anon_sym_DASH_GT, + [7734] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(808), 1, - anon_sym_RBRACE, - [7162] = 2, + ACTIONS(312), 1, + anon_sym_DOT_DOT, + [7741] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(810), 1, + ACTIONS(843), 1, anon_sym_SEMI, - [7169] = 2, + [7748] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(812), 1, + ACTIONS(845), 1, + sym__proper_name, + [7755] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(847), 1, anon_sym_RBRACE, - [7176] = 2, + [7762] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(814), 1, + ACTIONS(849), 1, anon_sym_SEMI, - [7183] = 2, + [7769] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(816), 1, - anon_sym_else, - [7190] = 2, + ACTIONS(851), 1, + anon_sym_SEMI, + [7776] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(818), 1, - anon_sym_DASH_GT, - [7197] = 2, + ACTIONS(853), 1, + anon_sym_SEMI, + [7783] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(820), 1, + ACTIONS(855), 1, anon_sym_RPAREN, - [7204] = 2, + [7790] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(822), 1, - anon_sym_COLON, - [7211] = 2, + ACTIONS(857), 1, + anon_sym_SEMI, + [7797] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(824), 1, + ACTIONS(859), 1, anon_sym_SEMI, - [7218] = 2, + [7804] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(826), 1, - anon_sym_PIPE, - [7225] = 2, + ACTIONS(861), 1, + anon_sym_SEMI, + [7811] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(828), 1, - anon_sym_SEMI, - [7232] = 2, + ACTIONS(863), 1, + anon_sym_EQ, + [7818] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(341), 1, - anon_sym_DASH_GT, - [7239] = 2, + ACTIONS(865), 1, + anon_sym_PIPE, + [7825] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(830), 1, + ACTIONS(867), 1, anon_sym_EQ, - [7246] = 2, + [7832] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(832), 1, - anon_sym_DASH_GT, - [7253] = 2, + ACTIONS(869), 1, + anon_sym_SEMI, + [7839] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(834), 1, - anon_sym_RPAREN, - [7260] = 2, + ACTIONS(871), 1, + anon_sym_EQ, + [7846] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(836), 1, + ACTIONS(336), 1, anon_sym_DASH_GT, - [7267] = 2, + [7853] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(838), 1, - anon_sym_DASH_GT, - [7274] = 2, + ACTIONS(873), 1, + anon_sym_SEMI, + [7860] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(730), 1, + ACTIONS(875), 1, anon_sym_COLON, - [7281] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(840), 1, - anon_sym_DASH_GT, - [7288] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(842), 1, - anon_sym_DASH_GT, - [7295] = 2, + [7867] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(844), 1, - anon_sym_SEMI, - [7302] = 2, + ACTIONS(877), 1, + sym__package_name, + [7874] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(846), 1, - anon_sym_PIPE, - [7309] = 2, + ACTIONS(879), 1, + sym__proper_name, + [7881] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(848), 1, - sym__package_name, - [7316] = 2, + ACTIONS(881), 1, + anon_sym_DASH_GT, + [7888] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(850), 1, - anon_sym_RBRACE, - [7323] = 2, + ACTIONS(883), 1, + anon_sym_SEMI, + [7895] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(852), 1, - sym__proper_name, - [7330] = 2, + ACTIONS(885), 1, + anon_sym_SEMI, + [7902] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(854), 1, + ACTIONS(887), 1, anon_sym_SEMI, - [7337] = 2, + [7909] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(856), 1, - anon_sym_EQ, - [7344] = 2, + ACTIONS(889), 1, + anon_sym_then, + [7916] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(858), 1, - anon_sym_then, - [7351] = 2, + ACTIONS(891), 1, + anon_sym_with, + [7923] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(860), 1, - anon_sym_SEMI, - [7358] = 2, + ACTIONS(893), 1, + anon_sym_LT_DASH, + [7930] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(305), 1, - anon_sym_DOT_DOT, - [7365] = 2, + ACTIONS(895), 1, + anon_sym_RBRACE, + [7937] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(862), 1, + ACTIONS(897), 1, anon_sym_exports, - [7372] = 2, + [7944] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(864), 1, + ACTIONS(899), 1, anon_sym_RBRACE, - [7379] = 2, + [7951] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, + ACTIONS(901), 1, ts_builtin_sym_end, }; @@ -11263,796 +11793,825 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(4)] = 182, [SMALL_STATE(5)] = 273, [SMALL_STATE(6)] = 364, - [SMALL_STATE(7)] = 442, - [SMALL_STATE(8)] = 520, - [SMALL_STATE(9)] = 598, - [SMALL_STATE(10)] = 676, - [SMALL_STATE(11)] = 754, - [SMALL_STATE(12)] = 832, - [SMALL_STATE(13)] = 907, - [SMALL_STATE(14)] = 982, - [SMALL_STATE(15)] = 1057, - [SMALL_STATE(16)] = 1132, - [SMALL_STATE(17)] = 1207, - [SMALL_STATE(18)] = 1282, - [SMALL_STATE(19)] = 1357, - [SMALL_STATE(20)] = 1432, - [SMALL_STATE(21)] = 1507, - [SMALL_STATE(22)] = 1582, - [SMALL_STATE(23)] = 1657, - [SMALL_STATE(24)] = 1732, - [SMALL_STATE(25)] = 1807, - [SMALL_STATE(26)] = 1882, - [SMALL_STATE(27)] = 1957, - [SMALL_STATE(28)] = 2032, - [SMALL_STATE(29)] = 2107, - [SMALL_STATE(30)] = 2182, - [SMALL_STATE(31)] = 2257, - [SMALL_STATE(32)] = 2332, - [SMALL_STATE(33)] = 2407, - [SMALL_STATE(34)] = 2471, - [SMALL_STATE(35)] = 2523, - [SMALL_STATE(36)] = 2559, - [SMALL_STATE(37)] = 2595, - [SMALL_STATE(38)] = 2633, - [SMALL_STATE(39)] = 2671, - [SMALL_STATE(40)] = 2709, - [SMALL_STATE(41)] = 2747, - [SMALL_STATE(42)] = 2785, - [SMALL_STATE(43)] = 2823, - [SMALL_STATE(44)] = 2861, - [SMALL_STATE(45)] = 2896, - [SMALL_STATE(46)] = 2931, - [SMALL_STATE(47)] = 2966, - [SMALL_STATE(48)] = 3001, - [SMALL_STATE(49)] = 3036, - [SMALL_STATE(50)] = 3071, - [SMALL_STATE(51)] = 3106, - [SMALL_STATE(52)] = 3141, - [SMALL_STATE(53)] = 3176, - [SMALL_STATE(54)] = 3211, - [SMALL_STATE(55)] = 3246, - [SMALL_STATE(56)] = 3281, - [SMALL_STATE(57)] = 3303, - [SMALL_STATE(58)] = 3336, - [SMALL_STATE(59)] = 3357, - [SMALL_STATE(60)] = 3378, - [SMALL_STATE(61)] = 3399, - [SMALL_STATE(62)] = 3420, - [SMALL_STATE(63)] = 3449, - [SMALL_STATE(64)] = 3470, - [SMALL_STATE(65)] = 3491, - [SMALL_STATE(66)] = 3512, - [SMALL_STATE(67)] = 3533, - [SMALL_STATE(68)] = 3554, - [SMALL_STATE(69)] = 3575, - [SMALL_STATE(70)] = 3598, - [SMALL_STATE(71)] = 3619, - [SMALL_STATE(72)] = 3640, - [SMALL_STATE(73)] = 3665, - [SMALL_STATE(74)] = 3686, - [SMALL_STATE(75)] = 3707, - [SMALL_STATE(76)] = 3728, - [SMALL_STATE(77)] = 3757, - [SMALL_STATE(78)] = 3778, - [SMALL_STATE(79)] = 3803, - [SMALL_STATE(80)] = 3824, - [SMALL_STATE(81)] = 3845, - [SMALL_STATE(82)] = 3866, - [SMALL_STATE(83)] = 3889, - [SMALL_STATE(84)] = 3918, - [SMALL_STATE(85)] = 3939, - [SMALL_STATE(86)] = 3960, - [SMALL_STATE(87)] = 3980, - [SMALL_STATE(88)] = 4000, - [SMALL_STATE(89)] = 4020, - [SMALL_STATE(90)] = 4041, - [SMALL_STATE(91)] = 4072, - [SMALL_STATE(92)] = 4103, - [SMALL_STATE(93)] = 4134, - [SMALL_STATE(94)] = 4150, - [SMALL_STATE(95)] = 4166, - [SMALL_STATE(96)] = 4182, - [SMALL_STATE(97)] = 4198, - [SMALL_STATE(98)] = 4226, - [SMALL_STATE(99)] = 4242, - [SMALL_STATE(100)] = 4258, - [SMALL_STATE(101)] = 4274, - [SMALL_STATE(102)] = 4302, - [SMALL_STATE(103)] = 4318, - [SMALL_STATE(104)] = 4334, - [SMALL_STATE(105)] = 4362, - [SMALL_STATE(106)] = 4390, - [SMALL_STATE(107)] = 4418, - [SMALL_STATE(108)] = 4434, - [SMALL_STATE(109)] = 4450, - [SMALL_STATE(110)] = 4475, - [SMALL_STATE(111)] = 4500, - [SMALL_STATE(112)] = 4516, - [SMALL_STATE(113)] = 4534, - [SMALL_STATE(114)] = 4555, - [SMALL_STATE(115)] = 4576, - [SMALL_STATE(116)] = 4593, - [SMALL_STATE(117)] = 4608, - [SMALL_STATE(118)] = 4625, - [SMALL_STATE(119)] = 4638, - [SMALL_STATE(120)] = 4659, - [SMALL_STATE(121)] = 4672, - [SMALL_STATE(122)] = 4691, - [SMALL_STATE(123)] = 4712, - [SMALL_STATE(124)] = 4725, - [SMALL_STATE(125)] = 4738, - [SMALL_STATE(126)] = 4759, - [SMALL_STATE(127)] = 4771, - [SMALL_STATE(128)] = 4783, - [SMALL_STATE(129)] = 4799, - [SMALL_STATE(130)] = 4813, - [SMALL_STATE(131)] = 4825, - [SMALL_STATE(132)] = 4837, - [SMALL_STATE(133)] = 4855, - [SMALL_STATE(134)] = 4867, - [SMALL_STATE(135)] = 4879, - [SMALL_STATE(136)] = 4895, - [SMALL_STATE(137)] = 4907, - [SMALL_STATE(138)] = 4919, - [SMALL_STATE(139)] = 4937, - [SMALL_STATE(140)] = 4949, - [SMALL_STATE(141)] = 4963, - [SMALL_STATE(142)] = 4981, - [SMALL_STATE(143)] = 4993, - [SMALL_STATE(144)] = 5009, - [SMALL_STATE(145)] = 5021, - [SMALL_STATE(146)] = 5033, - [SMALL_STATE(147)] = 5044, - [SMALL_STATE(148)] = 5055, - [SMALL_STATE(149)] = 5068, - [SMALL_STATE(150)] = 5085, - [SMALL_STATE(151)] = 5096, - [SMALL_STATE(152)] = 5115, - [SMALL_STATE(153)] = 5128, - [SMALL_STATE(154)] = 5143, - [SMALL_STATE(155)] = 5156, - [SMALL_STATE(156)] = 5167, - [SMALL_STATE(157)] = 5180, - [SMALL_STATE(158)] = 5193, - [SMALL_STATE(159)] = 5204, - [SMALL_STATE(160)] = 5215, - [SMALL_STATE(161)] = 5228, - [SMALL_STATE(162)] = 5239, - [SMALL_STATE(163)] = 5250, - [SMALL_STATE(164)] = 5263, - [SMALL_STATE(165)] = 5274, - [SMALL_STATE(166)] = 5285, - [SMALL_STATE(167)] = 5296, - [SMALL_STATE(168)] = 5307, - [SMALL_STATE(169)] = 5320, - [SMALL_STATE(170)] = 5333, - [SMALL_STATE(171)] = 5344, - [SMALL_STATE(172)] = 5356, - [SMALL_STATE(173)] = 5370, - [SMALL_STATE(174)] = 5386, - [SMALL_STATE(175)] = 5398, - [SMALL_STATE(176)] = 5410, - [SMALL_STATE(177)] = 5422, - [SMALL_STATE(178)] = 5434, - [SMALL_STATE(179)] = 5450, - [SMALL_STATE(180)] = 5466, - [SMALL_STATE(181)] = 5482, - [SMALL_STATE(182)] = 5494, - [SMALL_STATE(183)] = 5506, - [SMALL_STATE(184)] = 5518, - [SMALL_STATE(185)] = 5534, - [SMALL_STATE(186)] = 5550, - [SMALL_STATE(187)] = 5564, - [SMALL_STATE(188)] = 5578, - [SMALL_STATE(189)] = 5592, - [SMALL_STATE(190)] = 5608, - [SMALL_STATE(191)] = 5624, - [SMALL_STATE(192)] = 5640, - [SMALL_STATE(193)] = 5652, - [SMALL_STATE(194)] = 5666, - [SMALL_STATE(195)] = 5678, - [SMALL_STATE(196)] = 5690, - [SMALL_STATE(197)] = 5702, - [SMALL_STATE(198)] = 5718, - [SMALL_STATE(199)] = 5734, - [SMALL_STATE(200)] = 5746, - [SMALL_STATE(201)] = 5756, - [SMALL_STATE(202)] = 5772, - [SMALL_STATE(203)] = 5784, - [SMALL_STATE(204)] = 5800, - [SMALL_STATE(205)] = 5809, - [SMALL_STATE(206)] = 5822, - [SMALL_STATE(207)] = 5835, - [SMALL_STATE(208)] = 5848, - [SMALL_STATE(209)] = 5861, - [SMALL_STATE(210)] = 5874, - [SMALL_STATE(211)] = 5887, - [SMALL_STATE(212)] = 5900, - [SMALL_STATE(213)] = 5913, - [SMALL_STATE(214)] = 5924, - [SMALL_STATE(215)] = 5933, - [SMALL_STATE(216)] = 5946, - [SMALL_STATE(217)] = 5959, - [SMALL_STATE(218)] = 5972, - [SMALL_STATE(219)] = 5985, - [SMALL_STATE(220)] = 5998, - [SMALL_STATE(221)] = 6011, - [SMALL_STATE(222)] = 6024, - [SMALL_STATE(223)] = 6037, - [SMALL_STATE(224)] = 6050, - [SMALL_STATE(225)] = 6063, - [SMALL_STATE(226)] = 6076, - [SMALL_STATE(227)] = 6089, - [SMALL_STATE(228)] = 6102, - [SMALL_STATE(229)] = 6115, - [SMALL_STATE(230)] = 6128, - [SMALL_STATE(231)] = 6141, - [SMALL_STATE(232)] = 6154, - [SMALL_STATE(233)] = 6167, - [SMALL_STATE(234)] = 6180, - [SMALL_STATE(235)] = 6193, - [SMALL_STATE(236)] = 6206, - [SMALL_STATE(237)] = 6219, - [SMALL_STATE(238)] = 6232, - [SMALL_STATE(239)] = 6245, - [SMALL_STATE(240)] = 6258, - [SMALL_STATE(241)] = 6271, - [SMALL_STATE(242)] = 6280, - [SMALL_STATE(243)] = 6289, - [SMALL_STATE(244)] = 6302, - [SMALL_STATE(245)] = 6315, - [SMALL_STATE(246)] = 6328, - [SMALL_STATE(247)] = 6341, - [SMALL_STATE(248)] = 6354, - [SMALL_STATE(249)] = 6367, - [SMALL_STATE(250)] = 6380, - [SMALL_STATE(251)] = 6393, - [SMALL_STATE(252)] = 6406, - [SMALL_STATE(253)] = 6419, - [SMALL_STATE(254)] = 6432, - [SMALL_STATE(255)] = 6445, - [SMALL_STATE(256)] = 6458, - [SMALL_STATE(257)] = 6471, - [SMALL_STATE(258)] = 6484, - [SMALL_STATE(259)] = 6497, - [SMALL_STATE(260)] = 6510, - [SMALL_STATE(261)] = 6523, - [SMALL_STATE(262)] = 6536, - [SMALL_STATE(263)] = 6545, - [SMALL_STATE(264)] = 6558, - [SMALL_STATE(265)] = 6571, - [SMALL_STATE(266)] = 6584, - [SMALL_STATE(267)] = 6597, - [SMALL_STATE(268)] = 6610, - [SMALL_STATE(269)] = 6623, - [SMALL_STATE(270)] = 6636, - [SMALL_STATE(271)] = 6644, - [SMALL_STATE(272)] = 6652, - [SMALL_STATE(273)] = 6660, - [SMALL_STATE(274)] = 6670, - [SMALL_STATE(275)] = 6678, - [SMALL_STATE(276)] = 6686, - [SMALL_STATE(277)] = 6696, - [SMALL_STATE(278)] = 6704, - [SMALL_STATE(279)] = 6714, - [SMALL_STATE(280)] = 6722, - [SMALL_STATE(281)] = 6730, - [SMALL_STATE(282)] = 6738, - [SMALL_STATE(283)] = 6748, - [SMALL_STATE(284)] = 6756, - [SMALL_STATE(285)] = 6766, - [SMALL_STATE(286)] = 6774, - [SMALL_STATE(287)] = 6782, - [SMALL_STATE(288)] = 6790, - [SMALL_STATE(289)] = 6798, - [SMALL_STATE(290)] = 6808, - [SMALL_STATE(291)] = 6816, - [SMALL_STATE(292)] = 6826, - [SMALL_STATE(293)] = 6836, - [SMALL_STATE(294)] = 6846, - [SMALL_STATE(295)] = 6854, - [SMALL_STATE(296)] = 6864, - [SMALL_STATE(297)] = 6874, - [SMALL_STATE(298)] = 6884, - [SMALL_STATE(299)] = 6894, - [SMALL_STATE(300)] = 6902, - [SMALL_STATE(301)] = 6910, - [SMALL_STATE(302)] = 6920, - [SMALL_STATE(303)] = 6928, - [SMALL_STATE(304)] = 6936, - [SMALL_STATE(305)] = 6944, - [SMALL_STATE(306)] = 6952, - [SMALL_STATE(307)] = 6960, - [SMALL_STATE(308)] = 6970, - [SMALL_STATE(309)] = 6978, - [SMALL_STATE(310)] = 6986, - [SMALL_STATE(311)] = 6994, - [SMALL_STATE(312)] = 7001, - [SMALL_STATE(313)] = 7008, - [SMALL_STATE(314)] = 7015, - [SMALL_STATE(315)] = 7022, - [SMALL_STATE(316)] = 7029, - [SMALL_STATE(317)] = 7036, - [SMALL_STATE(318)] = 7043, - [SMALL_STATE(319)] = 7050, - [SMALL_STATE(320)] = 7057, - [SMALL_STATE(321)] = 7064, - [SMALL_STATE(322)] = 7071, - [SMALL_STATE(323)] = 7078, - [SMALL_STATE(324)] = 7085, - [SMALL_STATE(325)] = 7092, - [SMALL_STATE(326)] = 7099, - [SMALL_STATE(327)] = 7106, - [SMALL_STATE(328)] = 7113, - [SMALL_STATE(329)] = 7120, - [SMALL_STATE(330)] = 7127, - [SMALL_STATE(331)] = 7134, - [SMALL_STATE(332)] = 7141, - [SMALL_STATE(333)] = 7148, - [SMALL_STATE(334)] = 7155, - [SMALL_STATE(335)] = 7162, - [SMALL_STATE(336)] = 7169, - [SMALL_STATE(337)] = 7176, - [SMALL_STATE(338)] = 7183, - [SMALL_STATE(339)] = 7190, - [SMALL_STATE(340)] = 7197, - [SMALL_STATE(341)] = 7204, - [SMALL_STATE(342)] = 7211, - [SMALL_STATE(343)] = 7218, - [SMALL_STATE(344)] = 7225, - [SMALL_STATE(345)] = 7232, - [SMALL_STATE(346)] = 7239, - [SMALL_STATE(347)] = 7246, - [SMALL_STATE(348)] = 7253, - [SMALL_STATE(349)] = 7260, - [SMALL_STATE(350)] = 7267, - [SMALL_STATE(351)] = 7274, - [SMALL_STATE(352)] = 7281, - [SMALL_STATE(353)] = 7288, - [SMALL_STATE(354)] = 7295, - [SMALL_STATE(355)] = 7302, - [SMALL_STATE(356)] = 7309, - [SMALL_STATE(357)] = 7316, - [SMALL_STATE(358)] = 7323, - [SMALL_STATE(359)] = 7330, - [SMALL_STATE(360)] = 7337, - [SMALL_STATE(361)] = 7344, - [SMALL_STATE(362)] = 7351, - [SMALL_STATE(363)] = 7358, - [SMALL_STATE(364)] = 7365, - [SMALL_STATE(365)] = 7372, - [SMALL_STATE(366)] = 7379, + [SMALL_STATE(7)] = 448, + [SMALL_STATE(8)] = 532, + [SMALL_STATE(9)] = 616, + [SMALL_STATE(10)] = 700, + [SMALL_STATE(11)] = 784, + [SMALL_STATE(12)] = 868, + [SMALL_STATE(13)] = 949, + [SMALL_STATE(14)] = 1030, + [SMALL_STATE(15)] = 1111, + [SMALL_STATE(16)] = 1192, + [SMALL_STATE(17)] = 1273, + [SMALL_STATE(18)] = 1354, + [SMALL_STATE(19)] = 1435, + [SMALL_STATE(20)] = 1516, + [SMALL_STATE(21)] = 1597, + [SMALL_STATE(22)] = 1678, + [SMALL_STATE(23)] = 1759, + [SMALL_STATE(24)] = 1840, + [SMALL_STATE(25)] = 1921, + [SMALL_STATE(26)] = 2002, + [SMALL_STATE(27)] = 2083, + [SMALL_STATE(28)] = 2164, + [SMALL_STATE(29)] = 2245, + [SMALL_STATE(30)] = 2326, + [SMALL_STATE(31)] = 2407, + [SMALL_STATE(32)] = 2488, + [SMALL_STATE(33)] = 2569, + [SMALL_STATE(34)] = 2650, + [SMALL_STATE(35)] = 2731, + [SMALL_STATE(36)] = 2812, + [SMALL_STATE(37)] = 2876, + [SMALL_STATE(38)] = 2928, + [SMALL_STATE(39)] = 2966, + [SMALL_STATE(40)] = 3004, + [SMALL_STATE(41)] = 3040, + [SMALL_STATE(42)] = 3078, + [SMALL_STATE(43)] = 3116, + [SMALL_STATE(44)] = 3154, + [SMALL_STATE(45)] = 3192, + [SMALL_STATE(46)] = 3228, + [SMALL_STATE(47)] = 3266, + [SMALL_STATE(48)] = 3301, + [SMALL_STATE(49)] = 3336, + [SMALL_STATE(50)] = 3371, + [SMALL_STATE(51)] = 3406, + [SMALL_STATE(52)] = 3441, + [SMALL_STATE(53)] = 3476, + [SMALL_STATE(54)] = 3511, + [SMALL_STATE(55)] = 3546, + [SMALL_STATE(56)] = 3581, + [SMALL_STATE(57)] = 3616, + [SMALL_STATE(58)] = 3651, + [SMALL_STATE(59)] = 3686, + [SMALL_STATE(60)] = 3708, + [SMALL_STATE(61)] = 3741, + [SMALL_STATE(62)] = 3762, + [SMALL_STATE(63)] = 3785, + [SMALL_STATE(64)] = 3806, + [SMALL_STATE(65)] = 3827, + [SMALL_STATE(66)] = 3852, + [SMALL_STATE(67)] = 3875, + [SMALL_STATE(68)] = 3896, + [SMALL_STATE(69)] = 3917, + [SMALL_STATE(70)] = 3938, + [SMALL_STATE(71)] = 3959, + [SMALL_STATE(72)] = 3980, + [SMALL_STATE(73)] = 4001, + [SMALL_STATE(74)] = 4022, + [SMALL_STATE(75)] = 4047, + [SMALL_STATE(76)] = 4068, + [SMALL_STATE(77)] = 4089, + [SMALL_STATE(78)] = 4118, + [SMALL_STATE(79)] = 4139, + [SMALL_STATE(80)] = 4168, + [SMALL_STATE(81)] = 4197, + [SMALL_STATE(82)] = 4218, + [SMALL_STATE(83)] = 4239, + [SMALL_STATE(84)] = 4260, + [SMALL_STATE(85)] = 4281, + [SMALL_STATE(86)] = 4302, + [SMALL_STATE(87)] = 4323, + [SMALL_STATE(88)] = 4344, + [SMALL_STATE(89)] = 4365, + [SMALL_STATE(90)] = 4385, + [SMALL_STATE(91)] = 4405, + [SMALL_STATE(92)] = 4437, + [SMALL_STATE(93)] = 4469, + [SMALL_STATE(94)] = 4489, + [SMALL_STATE(95)] = 4520, + [SMALL_STATE(96)] = 4551, + [SMALL_STATE(97)] = 4580, + [SMALL_STATE(98)] = 4601, + [SMALL_STATE(99)] = 4632, + [SMALL_STATE(100)] = 4648, + [SMALL_STATE(101)] = 4664, + [SMALL_STATE(102)] = 4680, + [SMALL_STATE(103)] = 4708, + [SMALL_STATE(104)] = 4724, + [SMALL_STATE(105)] = 4740, + [SMALL_STATE(106)] = 4768, + [SMALL_STATE(107)] = 4784, + [SMALL_STATE(108)] = 4800, + [SMALL_STATE(109)] = 4816, + [SMALL_STATE(110)] = 4832, + [SMALL_STATE(111)] = 4848, + [SMALL_STATE(112)] = 4876, + [SMALL_STATE(113)] = 4904, + [SMALL_STATE(114)] = 4932, + [SMALL_STATE(115)] = 4948, + [SMALL_STATE(116)] = 4964, + [SMALL_STATE(117)] = 4989, + [SMALL_STATE(118)] = 5014, + [SMALL_STATE(119)] = 5032, + [SMALL_STATE(120)] = 5048, + [SMALL_STATE(121)] = 5067, + [SMALL_STATE(122)] = 5082, + [SMALL_STATE(123)] = 5099, + [SMALL_STATE(124)] = 5112, + [SMALL_STATE(125)] = 5133, + [SMALL_STATE(126)] = 5154, + [SMALL_STATE(127)] = 5175, + [SMALL_STATE(128)] = 5196, + [SMALL_STATE(129)] = 5209, + [SMALL_STATE(130)] = 5222, + [SMALL_STATE(131)] = 5235, + [SMALL_STATE(132)] = 5252, + [SMALL_STATE(133)] = 5273, + [SMALL_STATE(134)] = 5289, + [SMALL_STATE(135)] = 5303, + [SMALL_STATE(136)] = 5315, + [SMALL_STATE(137)] = 5327, + [SMALL_STATE(138)] = 5343, + [SMALL_STATE(139)] = 5357, + [SMALL_STATE(140)] = 5369, + [SMALL_STATE(141)] = 5381, + [SMALL_STATE(142)] = 5393, + [SMALL_STATE(143)] = 5405, + [SMALL_STATE(144)] = 5417, + [SMALL_STATE(145)] = 5429, + [SMALL_STATE(146)] = 5441, + [SMALL_STATE(147)] = 5459, + [SMALL_STATE(148)] = 5477, + [SMALL_STATE(149)] = 5489, + [SMALL_STATE(150)] = 5501, + [SMALL_STATE(151)] = 5519, + [SMALL_STATE(152)] = 5531, + [SMALL_STATE(153)] = 5547, + [SMALL_STATE(154)] = 5560, + [SMALL_STATE(155)] = 5571, + [SMALL_STATE(156)] = 5582, + [SMALL_STATE(157)] = 5593, + [SMALL_STATE(158)] = 5604, + [SMALL_STATE(159)] = 5615, + [SMALL_STATE(160)] = 5628, + [SMALL_STATE(161)] = 5639, + [SMALL_STATE(162)] = 5652, + [SMALL_STATE(163)] = 5663, + [SMALL_STATE(164)] = 5676, + [SMALL_STATE(165)] = 5689, + [SMALL_STATE(166)] = 5700, + [SMALL_STATE(167)] = 5713, + [SMALL_STATE(168)] = 5730, + [SMALL_STATE(169)] = 5743, + [SMALL_STATE(170)] = 5756, + [SMALL_STATE(171)] = 5767, + [SMALL_STATE(172)] = 5778, + [SMALL_STATE(173)] = 5789, + [SMALL_STATE(174)] = 5804, + [SMALL_STATE(175)] = 5823, + [SMALL_STATE(176)] = 5834, + [SMALL_STATE(177)] = 5845, + [SMALL_STATE(178)] = 5858, + [SMALL_STATE(179)] = 5870, + [SMALL_STATE(180)] = 5882, + [SMALL_STATE(181)] = 5898, + [SMALL_STATE(182)] = 5914, + [SMALL_STATE(183)] = 5930, + [SMALL_STATE(184)] = 5942, + [SMALL_STATE(185)] = 5958, + [SMALL_STATE(186)] = 5970, + [SMALL_STATE(187)] = 5986, + [SMALL_STATE(188)] = 6002, + [SMALL_STATE(189)] = 6014, + [SMALL_STATE(190)] = 6024, + [SMALL_STATE(191)] = 6040, + [SMALL_STATE(192)] = 6054, + [SMALL_STATE(193)] = 6068, + [SMALL_STATE(194)] = 6080, + [SMALL_STATE(195)] = 6092, + [SMALL_STATE(196)] = 6108, + [SMALL_STATE(197)] = 6120, + [SMALL_STATE(198)] = 6132, + [SMALL_STATE(199)] = 6148, + [SMALL_STATE(200)] = 6160, + [SMALL_STATE(201)] = 6176, + [SMALL_STATE(202)] = 6188, + [SMALL_STATE(203)] = 6200, + [SMALL_STATE(204)] = 6216, + [SMALL_STATE(205)] = 6232, + [SMALL_STATE(206)] = 6246, + [SMALL_STATE(207)] = 6262, + [SMALL_STATE(208)] = 6274, + [SMALL_STATE(209)] = 6288, + [SMALL_STATE(210)] = 6300, + [SMALL_STATE(211)] = 6312, + [SMALL_STATE(212)] = 6326, + [SMALL_STATE(213)] = 6338, + [SMALL_STATE(214)] = 6351, + [SMALL_STATE(215)] = 6364, + [SMALL_STATE(216)] = 6377, + [SMALL_STATE(217)] = 6388, + [SMALL_STATE(218)] = 6397, + [SMALL_STATE(219)] = 6410, + [SMALL_STATE(220)] = 6423, + [SMALL_STATE(221)] = 6436, + [SMALL_STATE(222)] = 6449, + [SMALL_STATE(223)] = 6462, + [SMALL_STATE(224)] = 6475, + [SMALL_STATE(225)] = 6488, + [SMALL_STATE(226)] = 6501, + [SMALL_STATE(227)] = 6510, + [SMALL_STATE(228)] = 6523, + [SMALL_STATE(229)] = 6536, + [SMALL_STATE(230)] = 6549, + [SMALL_STATE(231)] = 6562, + [SMALL_STATE(232)] = 6575, + [SMALL_STATE(233)] = 6588, + [SMALL_STATE(234)] = 6601, + [SMALL_STATE(235)] = 6614, + [SMALL_STATE(236)] = 6627, + [SMALL_STATE(237)] = 6640, + [SMALL_STATE(238)] = 6653, + [SMALL_STATE(239)] = 6666, + [SMALL_STATE(240)] = 6679, + [SMALL_STATE(241)] = 6692, + [SMALL_STATE(242)] = 6705, + [SMALL_STATE(243)] = 6714, + [SMALL_STATE(244)] = 6727, + [SMALL_STATE(245)] = 6740, + [SMALL_STATE(246)] = 6753, + [SMALL_STATE(247)] = 6766, + [SMALL_STATE(248)] = 6779, + [SMALL_STATE(249)] = 6792, + [SMALL_STATE(250)] = 6805, + [SMALL_STATE(251)] = 6818, + [SMALL_STATE(252)] = 6831, + [SMALL_STATE(253)] = 6844, + [SMALL_STATE(254)] = 6857, + [SMALL_STATE(255)] = 6866, + [SMALL_STATE(256)] = 6879, + [SMALL_STATE(257)] = 6892, + [SMALL_STATE(258)] = 6905, + [SMALL_STATE(259)] = 6914, + [SMALL_STATE(260)] = 6927, + [SMALL_STATE(261)] = 6940, + [SMALL_STATE(262)] = 6953, + [SMALL_STATE(263)] = 6966, + [SMALL_STATE(264)] = 6979, + [SMALL_STATE(265)] = 6992, + [SMALL_STATE(266)] = 7005, + [SMALL_STATE(267)] = 7018, + [SMALL_STATE(268)] = 7031, + [SMALL_STATE(269)] = 7044, + [SMALL_STATE(270)] = 7057, + [SMALL_STATE(271)] = 7070, + [SMALL_STATE(272)] = 7083, + [SMALL_STATE(273)] = 7096, + [SMALL_STATE(274)] = 7109, + [SMALL_STATE(275)] = 7122, + [SMALL_STATE(276)] = 7135, + [SMALL_STATE(277)] = 7148, + [SMALL_STATE(278)] = 7161, + [SMALL_STATE(279)] = 7174, + [SMALL_STATE(280)] = 7187, + [SMALL_STATE(281)] = 7197, + [SMALL_STATE(282)] = 7205, + [SMALL_STATE(283)] = 7213, + [SMALL_STATE(284)] = 7221, + [SMALL_STATE(285)] = 7231, + [SMALL_STATE(286)] = 7239, + [SMALL_STATE(287)] = 7247, + [SMALL_STATE(288)] = 7257, + [SMALL_STATE(289)] = 7267, + [SMALL_STATE(290)] = 7277, + [SMALL_STATE(291)] = 7285, + [SMALL_STATE(292)] = 7295, + [SMALL_STATE(293)] = 7303, + [SMALL_STATE(294)] = 7311, + [SMALL_STATE(295)] = 7321, + [SMALL_STATE(296)] = 7329, + [SMALL_STATE(297)] = 7339, + [SMALL_STATE(298)] = 7349, + [SMALL_STATE(299)] = 7357, + [SMALL_STATE(300)] = 7367, + [SMALL_STATE(301)] = 7375, + [SMALL_STATE(302)] = 7383, + [SMALL_STATE(303)] = 7391, + [SMALL_STATE(304)] = 7399, + [SMALL_STATE(305)] = 7409, + [SMALL_STATE(306)] = 7419, + [SMALL_STATE(307)] = 7427, + [SMALL_STATE(308)] = 7435, + [SMALL_STATE(309)] = 7445, + [SMALL_STATE(310)] = 7453, + [SMALL_STATE(311)] = 7461, + [SMALL_STATE(312)] = 7469, + [SMALL_STATE(313)] = 7477, + [SMALL_STATE(314)] = 7485, + [SMALL_STATE(315)] = 7495, + [SMALL_STATE(316)] = 7503, + [SMALL_STATE(317)] = 7511, + [SMALL_STATE(318)] = 7519, + [SMALL_STATE(319)] = 7527, + [SMALL_STATE(320)] = 7535, + [SMALL_STATE(321)] = 7545, + [SMALL_STATE(322)] = 7552, + [SMALL_STATE(323)] = 7559, + [SMALL_STATE(324)] = 7566, + [SMALL_STATE(325)] = 7573, + [SMALL_STATE(326)] = 7580, + [SMALL_STATE(327)] = 7587, + [SMALL_STATE(328)] = 7594, + [SMALL_STATE(329)] = 7601, + [SMALL_STATE(330)] = 7608, + [SMALL_STATE(331)] = 7615, + [SMALL_STATE(332)] = 7622, + [SMALL_STATE(333)] = 7629, + [SMALL_STATE(334)] = 7636, + [SMALL_STATE(335)] = 7643, + [SMALL_STATE(336)] = 7650, + [SMALL_STATE(337)] = 7657, + [SMALL_STATE(338)] = 7664, + [SMALL_STATE(339)] = 7671, + [SMALL_STATE(340)] = 7678, + [SMALL_STATE(341)] = 7685, + [SMALL_STATE(342)] = 7692, + [SMALL_STATE(343)] = 7699, + [SMALL_STATE(344)] = 7706, + [SMALL_STATE(345)] = 7713, + [SMALL_STATE(346)] = 7720, + [SMALL_STATE(347)] = 7727, + [SMALL_STATE(348)] = 7734, + [SMALL_STATE(349)] = 7741, + [SMALL_STATE(350)] = 7748, + [SMALL_STATE(351)] = 7755, + [SMALL_STATE(352)] = 7762, + [SMALL_STATE(353)] = 7769, + [SMALL_STATE(354)] = 7776, + [SMALL_STATE(355)] = 7783, + [SMALL_STATE(356)] = 7790, + [SMALL_STATE(357)] = 7797, + [SMALL_STATE(358)] = 7804, + [SMALL_STATE(359)] = 7811, + [SMALL_STATE(360)] = 7818, + [SMALL_STATE(361)] = 7825, + [SMALL_STATE(362)] = 7832, + [SMALL_STATE(363)] = 7839, + [SMALL_STATE(364)] = 7846, + [SMALL_STATE(365)] = 7853, + [SMALL_STATE(366)] = 7860, + [SMALL_STATE(367)] = 7867, + [SMALL_STATE(368)] = 7874, + [SMALL_STATE(369)] = 7881, + [SMALL_STATE(370)] = 7888, + [SMALL_STATE(371)] = 7895, + [SMALL_STATE(372)] = 7902, + [SMALL_STATE(373)] = 7909, + [SMALL_STATE(374)] = 7916, + [SMALL_STATE(375)] = 7923, + [SMALL_STATE(376)] = 7930, + [SMALL_STATE(377)] = 7937, + [SMALL_STATE(378)] = 7944, + [SMALL_STATE(379)] = 7951, }; 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(296), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(329), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(326), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97), + [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(102), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(340), [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(18), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82), - [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(129), - [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), - [51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, .production_id = 1), - [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(173), - [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269), - [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(276), - [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(277), - [61] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, .production_id = 2), - [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), - [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), - [85] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_field_label, 1), - [87] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_field_label, 1), - [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_parens, 3), - [93] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_parens, 3), - [95] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record, 4, .production_id = 31), - [97] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record, 4, .production_id = 31), - [99] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_array, 2), - [101] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_array, 2), - [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_variable, 2), - [105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_variable, 2), - [107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 3, .production_id = 4), - [109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call_arguments, 5, .production_id = 56), - [111] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call_arguments, 5, .production_id = 56), - [113] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record, 3, .production_id = 20), - [115] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record, 3, .production_id = 20), - [117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call_arguments, 2), - [119] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call_arguments, 2), - [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_update, 6, .production_id = 52), - [123] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_update, 6, .production_id = 52), - [125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_variable_name, 1), - [127] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_variable_name, 1), - [129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record, 2), - [131] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record, 2), - [133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_constructor_proper_name, 1), - [135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_constructor_proper_name, 1), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), + [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(96), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(196), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), + [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), + [65] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, .production_id = 1), + [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(180), + [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), + [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(284), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(285), + [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), + [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), + [83] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, .production_id = 2), + [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), + [87] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_field_label, 1), + [89] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_field_label, 1), + [91] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call, 2, .production_id = 14), + [95] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call, 2, .production_id = 14), + [97] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_constructor_proper_name, 1), + [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [101] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_constructor_proper_name, 1), + [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_variable_name, 1), + [105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_variable_name, 1), + [107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_update, 6, .production_id = 53), + [109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_update, 6, .production_id = 53), + [111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression2, 1), + [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [115] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression2, 1), + [117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression1, 1), + [119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression1, 1), + [123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call_arguments, 5, .production_id = 58), + [125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call_arguments, 5, .production_id = 58), + [127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_variable, 1), + [129] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_variable, 1), + [131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_array, 2), + [133] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_array, 2), + [135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record, 5, .production_id = 43), + [137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record, 5, .production_id = 43), [139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_array, 3, .production_id = 22), [141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_array, 3, .production_id = 22), - [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_access, 3), - [145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_access, 3), - [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_right_pipe, 3, .production_id = 23), - [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_right_pipe, 3, .production_id = 23), - [153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_variable, 1), - [155] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_variable, 1), - [157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_array, 5, .production_id = 47), - [159] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_array, 5, .production_id = 47), - [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call, 2, .production_id = 14), - [163] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call, 2, .production_id = 14), - [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat2, 2), - [167] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat2, 2), SHIFT_REPEAT(269), - [170] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat2, 2), SHIFT_REPEAT(276), - [173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat2, 2), SHIFT_REPEAT(277), - [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_update, 7, .production_id = 59), - [178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_update, 7, .production_id = 59), - [180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression2, 1), - [182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression2, 1), - [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_update, 5, .production_id = 42), - [186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_update, 5, .production_id = 42), - [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record, 5, .production_id = 43), - [190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record, 5, .production_id = 43), - [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_array, 4, .production_id = 34), - [194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_array, 4, .production_id = 34), - [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression1, 1), - [198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [200] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression1, 1), - [202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, .production_id = 3), - [204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call_arguments, 3, .production_id = 35), - [206] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call_arguments, 3, .production_id = 35), - [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call_arguments, 4, .production_id = 48), - [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call_arguments, 4, .production_id = 48), - [212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_constructor, 2), - [214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_constructor, 2), - [216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_constructor, 1), - [218] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_constructor, 1), - [220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), - [222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1), - [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), - [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), - [236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_if, 6, .production_id = 55), - [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect, 4), - [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_match, 5, .production_id = 45), - [244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 9, .production_id = 69), - [246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 5, .production_id = 44), - [248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 8, .production_id = 67), - [250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 8, .production_id = 66), - [252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 7, .production_id = 61), - [256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 7, .production_id = 60), - [258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 6, .production_id = 53), - [264] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 6, .production_id = 54), - [266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_constructor_proper_name, 1), - [268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type1, 1), - [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), - [274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), - [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), - [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor, 1), - [284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_proper_name, 1), - [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor, 2), - [288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_constructor, 1), - [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), - [294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_variable, 1), - [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [300] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(173), - [303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), - [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), - [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_constructor, 2), - [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), - [313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_call_arguments, 5, .production_id = 56), - [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_call_arguments, 4, .production_id = 48), - [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_name, 1), - [319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), - [321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_bind_name, 1), - [323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_call, 2, .production_id = 14), - [325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_call_arguments, 3, .production_id = 35), - [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_open_record, 7, .production_id = 65), - [331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_closed_record, 4, .production_id = 31), - [333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_name, 2), - [335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_closed_record, 3, .production_id = 20), - [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_open_record, 6, .production_id = 58), - [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_parens, 3), - [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_closed_record, 5, .production_id = 43), - [347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_name_repeat1, 2), - [349] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_name_repeat1, 2), SHIFT_REPEAT(358), - [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_open_record, 5, .production_id = 50), - [354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_closed_record, 2), - [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_function, 7, .production_id = 64), - [358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 6, .production_id = 26), - [360] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 6, .production_id = 26), - [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), - [364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_type, 1), - [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), - [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), - [370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 7, .production_id = 37), - [372] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 7, .production_id = 37), - [374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 5, .production_id = 16), - [376] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 5, .production_id = 16), - [378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_function, 4, .production_id = 36), - [380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 3, .production_id = 5), - [382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 3, .production_id = 5), - [384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 6, .production_id = 25), - [386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 6, .production_id = 25), - [388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_fields, 4, .production_id = 31), - [390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_fields, 2), - [392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 5, .production_id = 15), - [394] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 5, .production_id = 15), - [396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_variable, 1), - [398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_unused, 1), - [400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_header, 5, .production_id = 7), - [402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_header, 5, .production_id = 7), - [404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor, 3), - [406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_function, 6, .production_id = 57), - [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_fields, 5, .production_id = 43), - [410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_fields, 3, .production_id = 20), - [412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 4, .production_id = 8), - [414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 4, .production_id = 8), - [416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 4, .production_id = 9), - [418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 4, .production_id = 9), - [420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_function, 5, .production_id = 49), - [422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_empty_type_declaration, 4, .production_id = 11), - [424] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_empty_type_declaration, 4, .production_id = 11), - [426] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_call_arguments_repeat1, 2), - [428] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_call_arguments_repeat1, 2), SHIFT_REPEAT(15), - [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 7, .production_id = 40), - [437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 7, .production_id = 40), - [439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_declaration, 7, .production_id = 38), - [441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_alias_declaration, 7, .production_id = 38), - [443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 7, .production_id = 41), - [445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 7, .production_id = 41), - [447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_declaration, 4, .production_id = 13), - [449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value_declaration, 4, .production_id = 13), - [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), - [465] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 5, .production_id = 18), - [467] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 5, .production_id = 18), - [469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreign_value_declaration, 4, .production_id = 12), - [471] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_foreign_value_declaration, 4, .production_id = 12), - [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), - [479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor, 1, .production_id = 10), - [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [483] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_match_repeat1, 2), SHIFT_REPEAT(110), - [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_match_repeat1, 2), - [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), - [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 6, .production_id = 30), - [500] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 6, .production_id = 30), - [502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function_parameter, 1, .production_id = 21), - [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 6, .production_id = 29), - [508] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 6, .production_id = 29), - [510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 8, .production_id = 51), - [512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 8, .production_id = 51), - [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_empty_type_declaration, 3, .production_id = 6), - [516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_empty_type_declaration, 3, .production_id = 6), - [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_declaration, 6, .production_id = 27), - [524] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_alias_declaration, 6, .production_id = 27), - [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_annotation, 2), - [528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [532] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_declaration, 5, .production_id = 24), - [534] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value_declaration, 5, .production_id = 24), - [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor_name, 1), - [540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [548] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exposing_list_repeat1, 2), - [550] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exposing_list_repeat1, 2), SHIFT_REPEAT(141), - [553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_let_binder, 1, .production_id = 21), - [559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_type_name, 1), - [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), - [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), - [567] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_variables_repeat1, 2), - [569] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_declaration_variables_repeat1, 2), SHIFT_REPEAT(273), - [572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), - [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat1, 2), - [580] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat1, 2), SHIFT_REPEAT(248), - [583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), - [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), - [597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [601] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_record_repeat1, 2), SHIFT_REPEAT(257), - [604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_record_repeat1, 2), - [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), - [618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), - [630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__everything, 3), - [632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [646] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_function_repeat1, 2), - [648] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_function_repeat1, 2), SHIFT_REPEAT(106), - [651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [657] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_constructor_fields_repeat1, 2), - [659] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_declaration_constructor_fields_repeat1, 2), SHIFT_REPEAT(50), - [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_record_update_target, 1), - [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), - [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), - [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [676] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_closed_record_repeat1, 2), SHIFT_REPEAT(219), - [679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_closed_record_repeat1, 2), - [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), - [683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_name, 1), - [685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), - [689] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_pattern_constructor_fields_repeat1, 2), - [691] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pattern_constructor_fields_repeat1, 2), SHIFT_REPEAT(109), - [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), - [704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [706] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_variables, 5, .production_id = 39), - [708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_type, 2), - [710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_type_constructors, 1), - [712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualifier, 2), - [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [716] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_declaration_name, 1), - [718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_match_arm, 4, .production_id = 62), - [720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_record_field, 3, .production_id = 32), - [722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_variables, 3, .production_id = 17), - [724] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor, 2, .production_id = 19), - [726] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor_fields, 5, .production_id = 43), - [728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_open_record_row_variable, 1), - [730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_record_field_label, 1), - [732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), - [736] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor_fields, 3, .production_id = 20), - [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [740] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_expression, 1), - [742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [746] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_variables, 4, .production_id = 28), - [748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor_fields, 4, .production_id = 31), - [752] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_variable, 1), - [754] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_field, 3, .production_id = 32), - [756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_value, 1), - [758] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import_alias, 1), - [760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function_parameter, 2, .production_id = 33), - [762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), - [764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [772] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import_package, 3), - [774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), - [780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), - [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), - [790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [796] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_expression, 3, .production_id = 46), - [798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [802] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_let_binder, 2, .production_id = 33), - [804] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_list, 4), - [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [808] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_return, 2), - [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_list, 3), - [816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), - [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_everything, 1), - [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [842] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_annotation, 2), - [844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), - [850] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_bind, 5, .production_id = 63), - [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), - [854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_list, 5), - [862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [864] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_let, 6, .production_id = 68), - [866] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record, 2), + [145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record, 2), + [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_array, 4, .production_id = 34), + [149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_array, 4, .production_id = 34), + [151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_right_pipe, 3, .production_id = 23), + [153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_right_pipe, 3, .production_id = 23), + [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_update, 7, .production_id = 61), + [157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_update, 7, .production_id = 61), + [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call_arguments, 2), + [161] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call_arguments, 2), + [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat2, 2), + [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat2, 2), SHIFT_REPEAT(218), + [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat2, 2), SHIFT_REPEAT(284), + [171] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat2, 2), SHIFT_REPEAT(285), + [174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record, 4, .production_id = 31), + [176] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record, 4, .production_id = 31), + [178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, .production_id = 3), + [180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 3, .production_id = 4), + [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record, 3, .production_id = 20), + [184] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record, 3, .production_id = 20), + [186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_parens, 3), + [188] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_parens, 3), + [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_update, 5, .production_id = 42), + [192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_update, 5, .production_id = 42), + [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_access, 3), + [196] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_record_access, 3), + [198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call_arguments, 4, .production_id = 49), + [200] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call_arguments, 4, .production_id = 49), + [202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_variable, 2), + [204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_variable, 2), + [206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_array, 5, .production_id = 48), + [208] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_array, 5, .production_id = 48), + [210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_call_arguments, 3, .production_id = 35), + [212] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_call_arguments, 3, .production_id = 35), + [214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_constructor, 2), + [216] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_constructor, 2), + [218] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_expression_let_repeat1, 2), + [220] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_let_repeat1, 2), SHIFT_REPEAT(121), + [223] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_expression_let_repeat1, 2), SHIFT_REPEAT(157), + [226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_let_repeat1, 2), SHIFT_REPEAT(160), + [229] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), + [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(157), + [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_constructor, 1), + [239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_constructor, 1), + [241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), + [243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), + [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression3, 1), + [249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression3, 1), + [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_if, 6, .production_id = 57), + [257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 6, .production_id = 56), + [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_let, 4), + [261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 8, .production_id = 68), + [263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 8, .production_id = 69), + [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 7, .production_id = 63), + [269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 5, .production_id = 45), + [271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect, 4), + [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 7, .production_id = 62), + [275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_match, 5, .production_id = 46), + [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 9, .production_id = 71), + [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function, 6, .production_id = 55), + [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type1, 1), + [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_constructor_proper_name, 1), + [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), + [293] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(180), + [296] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), + [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_proper_name, 1), + [300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor, 2), + [304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_variable, 1), + [306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), + [314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), + [318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), + [320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_constructor, 1), + [326] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_constructor, 2), + [328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor, 1), + [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), + [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_name, 2), + [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_parens, 3), + [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_call_arguments, 5, .production_id = 58), + [342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_closed_record, 2), + [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_name, 1), + [346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_bind_name, 1), + [348] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_call_arguments, 4, .production_id = 49), + [350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_call, 2, .production_id = 14), + [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_closed_record, 5, .production_id = 43), + [354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_open_record, 6, .production_id = 60), + [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_open_record, 5, .production_id = 51), + [358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_closed_record, 4, .production_id = 31), + [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_closed_record, 3, .production_id = 20), + [366] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_call_arguments, 3, .production_id = 35), + [368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_open_record, 7, .production_id = 67), + [370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_name_repeat1, 2), + [372] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_name_repeat1, 2), SHIFT_REPEAT(368), + [375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 7, .production_id = 37), + [377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 7, .production_id = 37), + [379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_fields, 3, .production_id = 20), + [381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_function, 4, .production_id = 36), + [383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_variable, 1), + [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_function, 7, .production_id = 66), + [387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 4, .production_id = 9), + [389] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 4, .production_id = 9), + [391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_unused, 1), + [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 4, .production_id = 8), + [395] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 4, .production_id = 8), + [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_fields, 2), + [399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 6, .production_id = 26), + [401] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 6, .production_id = 26), + [403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 5, .production_id = 16), + [405] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 5, .production_id = 16), + [407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_function, 5, .production_id = 50), + [409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_header, 5, .production_id = 7), + [411] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_header, 5, .production_id = 7), + [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_type, 1), + [417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 5, .production_id = 15), + [419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 5, .production_id = 15), + [421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 6, .production_id = 25), + [423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 6, .production_id = 25), + [425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_function, 6, .production_id = 59), + [427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_fields, 5, .production_id = 43), + [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), + [433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor, 3), + [435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_constructor_fields, 4, .production_id = 31), + [437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import, 3, .production_id = 5), + [439] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_import, 3, .production_id = 5), + [441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreign_value_declaration, 4, .production_id = 12), + [443] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_foreign_value_declaration, 4, .production_id = 12), + [445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_declaration, 4, .production_id = 13), + [447] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value_declaration, 4, .production_id = 13), + [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), + [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), + [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), + [459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), + [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), + [463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_empty_type_declaration, 3, .production_id = 6), + [465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_empty_type_declaration, 3, .production_id = 6), + [467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [471] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_let_value_declaration, 5, .production_id = 54), + [473] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_let_value_declaration, 5, .production_id = 54), + [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 8, .production_id = 52), + [485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 8, .production_id = 52), + [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_annotation, 2), + [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [491] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_match_repeat1, 2), SHIFT_REPEAT(116), + [494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_match_repeat1, 2), + [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor, 1, .production_id = 10), + [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 5, .production_id = 18), + [502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 5, .production_id = 18), + [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_empty_type_declaration, 4, .production_id = 11), + [506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_empty_type_declaration, 4, .production_id = 11), + [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), + [510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_let_value_declaration, 4, .production_id = 44), + [512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_let_value_declaration, 4, .production_id = 44), + [514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 7, .production_id = 41), + [518] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 7, .production_id = 41), + [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 7, .production_id = 40), + [524] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 7, .production_id = 40), + [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_declaration, 7, .production_id = 38), + [528] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_alias_declaration, 7, .production_id = 38), + [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function_parameter, 1, .production_id = 21), + [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_declaration, 5, .production_id = 24), + [542] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value_declaration, 5, .production_id = 24), + [544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_call_arguments_repeat1, 2), + [546] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_call_arguments_repeat1, 2), SHIFT_REPEAT(32), + [549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 6, .production_id = 30), + [551] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 6, .production_id = 30), + [553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 6, .production_id = 29), + [555] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 6, .production_id = 29), + [557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_declaration, 6, .production_id = 27), + [563] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_alias_declaration, 6, .production_id = 27), + [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__everything, 3), + [573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_name, 1), + [595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exposing_list_repeat1, 2), + [599] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exposing_list_repeat1, 2), SHIFT_REPEAT(150), + [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_pattern_constructor_fields_repeat1, 2), + [610] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_pattern_constructor_fields_repeat1, 2), SHIFT_REPEAT(117), + [613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), + [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_variables_repeat1, 2), + [621] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_declaration_variables_repeat1, 2), SHIFT_REPEAT(291), + [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat1, 2), + [630] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat1, 2), SHIFT_REPEAT(263), + [633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_type_name, 1), + [645] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_record_repeat1, 2), SHIFT_REPEAT(274), + [648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_record_repeat1, 2), + [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), + [652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), + [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), + [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), + [672] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_let_binder, 1, .production_id = 21), + [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor_name, 1), + [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [682] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_function_repeat1, 2), + [684] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_function_repeat1, 2), SHIFT_REPEAT(111), + [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_constructor_fields_repeat1, 2), + [701] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_declaration_constructor_fields_repeat1, 2), SHIFT_REPEAT(55), + [704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [718] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_closed_record_repeat1, 2), SHIFT_REPEAT(236), + [721] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_closed_record_repeat1, 2), + [723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_record_update_target, 1), + [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), + [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [735] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_record_field, 3, .production_id = 32), + [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [739] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_declaration_name, 1), + [741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_match_arm, 4, .production_id = 64), + [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_variables, 5, .production_id = 39), + [747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor_fields, 3, .production_id = 20), + [749] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor_fields, 5, .production_id = 43), + [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_expression, 1), + [757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualifier, 2), + [759] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor, 2, .production_id = 19), + [761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_variables, 4, .production_id = 28), + [763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_type, 2), + [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [769] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_open_record_row_variable, 1), + [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_record_field_label, 1), + [773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_type_constructors, 1), + [775] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_variables, 3, .production_id = 17), + [777] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_constructor_fields, 4, .production_id = 31), + [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [781] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_record_field, 3, .production_id = 32), + [783] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_value, 1), + [785] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration_variable, 1), + [787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_function_parameter, 2, .production_id = 33), + [789] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import_alias, 1), + [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [793] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_annotation, 2), + [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [805] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_expression, 3, .production_id = 47), + [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [809] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_let_binder, 2, .production_id = 33), + [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [815] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_return, 2), + [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), + [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [845] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_import_package, 3), + [847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_bind, 5, .production_id = 65), + [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), + [857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_everything, 1), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_list, 3), + [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [883] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_list, 5), + [885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_list, 4), + [887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [899] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_effect_let, 6, .production_id = 70), + [901] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), }; #ifdef __cplusplus diff --git a/test/corpus/let_expressions.txt b/test/corpus/let_expressions.txt new file mode 100644 index 0000000..4cc462b --- /dev/null +++ b/test/corpus/let_expressions.txt @@ -0,0 +1,123 @@ +================================================================================ +single binding +================================================================================ +module Test exports (..); + +test = let five = 5; in unit; +-------------------------------------------------------------------------------- + +(source_file + header: (module_header + module_name: (module_name) + exports: (exposing_everything)) + declaration: (value_declaration + name: (value_declaration_name) + expression: (expression_let + (expression_let_value_declaration + binder: (pattern_variable) + expression: (expression_int)) + (expression_unit)))) + +================================================================================ +single binding with type annotation +================================================================================ +module Test exports (..); + +test = let five: Int = 5; in unit; +-------------------------------------------------------------------------------- + +(source_file + header: (module_header + module_name: (module_name) + exports: (exposing_everything)) + declaration: (value_declaration + name: (value_declaration_name) + expression: (expression_let + (expression_let_value_declaration + binder: (pattern_variable) + type_annotation: (type_annotation + (type_constructor + (type_constructor_proper_name))) + expression: (expression_int)) + (expression_unit)))) + +================================================================================ +multiple bindings +================================================================================ +module Test exports (..); + +test = + let + five: Int = 5; + six = 6; + seven = 7; + in + unit; +-------------------------------------------------------------------------------- + +(source_file + header: (module_header + module_name: (module_name) + exports: (exposing_everything)) + declaration: (value_declaration + name: (value_declaration_name) + expression: (expression_let + (expression_let_value_declaration + binder: (pattern_variable) + type_annotation: (type_annotation + (type_constructor + (type_constructor_proper_name))) + expression: (expression_int)) + (expression_let_value_declaration + binder: (pattern_variable) + expression: (expression_int)) + (expression_let_value_declaration + binder: (pattern_variable) + expression: (expression_int)) + (expression_unit)))) + +================================================================================ +pattern binders +================================================================================ +module Test exports (..); + +test = + let + Wrapped(five) = wrapped_five; + Pair(six, seven) : Pair(Int, Int) = pair; + in + unit; +-------------------------------------------------------------------------------- + +(source_file + header: (module_header + module_name: (module_name) + exports: (exposing_everything)) + declaration: (value_declaration + name: (value_declaration_name) + expression: (expression_let + (expression_let_value_declaration + binder: (pattern_constructor + (pattern_constructor_proper_name) + (pattern_constructor_fields + field: (pattern_variable))) + expression: (expression_variable + (expression_variable_name))) + (expression_let_value_declaration + binder: (pattern_constructor + (pattern_constructor_proper_name) + (pattern_constructor_fields + field: (pattern_variable) + field: (pattern_variable))) + type_annotation: (type_annotation + (type_call + function: (type_constructor + (type_constructor_proper_name)) + arguments: (type_call_arguments + argument: (type_constructor + (type_constructor_proper_name)) + argument: (type_constructor + (type_constructor_proper_name))))) + expression: (expression_variable + (expression_variable_name))) + (expression_unit)))) diff --git a/test/highlight/module.ditto b/test/highlight/module.ditto index be73f87..d2e7884 100644 --- a/test/highlight/module.ditto +++ b/test/highlight/module.ditto @@ -70,6 +70,7 @@ identity = fn (a: a): a -> a; bad_map = fn (xs: Array(a), f: (a) -> b): Array(b) -> []; -- ^ keyword +-- ^ variable -- ^ type -- ^ type @@ -91,9 +92,18 @@ silly_match = match five with | Foo.Five -> 5 end; -- ^ constructor -- ^ keyword.control.conditional + +tens = let ten: Int = 10 in [ten, ten, ten]; +-- ^ keyword +-- ^ variable +-- ^ keyword + main = do { -- ^ keyword input <- get_input; + let five: Int = 5; + -- <- keyword + -- ^ type console_log(input); return input -- ^ keyword.return