/* Automatically @generated by tree-sitter v0.25.10 */ #include "tree_sitter/parser.h" #if defined(__GNUC__) || defined(__clang__) #pragma GCC diagnostic ignored "-Wmissing-field-initializers" #endif #define LANGUAGE_VERSION 15 #define STATE_COUNT 1060 #define LARGE_STATE_COUNT 20 #define SYMBOL_COUNT 201 #define ALIAS_COUNT 2 #define TOKEN_COUNT 85 #define EXTERNAL_TOKEN_COUNT 7 #define FIELD_COUNT 35 #define MAX_ALIAS_SEQUENCE_LENGTH 9 #define MAX_RESERVED_WORD_SET_SIZE 0 #define PRODUCTION_ID_COUNT 99 #define SUPERTYPE_COUNT 0 enum ts_symbol_identifiers { sym_lower_case_identifier = 1, anon_sym_LBRACE_DASH = 2, anon_sym_DASH_RBRACE = 3, sym_line_comment = 4, anon_sym_LPAREN = 5, anon_sym_COMMA = 6, anon_sym_RPAREN = 7, sym__upper_case_identifier_without_leading_whitespace = 8, sym__lower_case_identifier_without_leading_whitespace = 9, anon_sym_DOT = 10, anon_sym_PIPE = 11, anon_sym_LBRACE = 12, anon_sym_RBRACE = 13, anon_sym_SQUOTE = 14, aux_sym_char_constant_expr_token1 = 15, anon_sym_DQUOTE_DQUOTE_DQUOTE = 16, anon_sym_DQUOTE = 17, aux_sym_string_constant_expr_token1 = 18, anon_sym_LBRACK = 19, anon_sym_RBRACK = 20, anon_sym_else = 21, anon_sym_if = 22, anon_sym_then = 23, anon_sym_let = 24, anon_sym_in = 25, anon_sym_COLON_COLON = 26, anon_sym_left = 27, anon_sym_right = 28, anon_sym_non = 29, anon_sym_LBRACKglsl_PIPE = 30, anon_sym_PIPE_RBRACK = 31, sym_upper_case_identifier = 32, sym_number_literal = 33, sym_string_escape = 34, sym_invalid_string_escape = 35, sym_module = 36, sym_effect = 37, sym_where = 38, sym_import = 39, sym_as = 40, sym_exposing = 41, sym_case = 42, sym_of = 43, sym_type = 44, sym_alias = 45, sym_port = 46, sym_infix = 47, sym_double_dot = 48, sym_eq = 49, sym_arrow = 50, sym_colon = 51, sym_backslash = 52, sym_underscore = 53, sym_dot = 54, anon_sym_PLUS = 55, anon_sym_DASH = 56, anon_sym_STAR = 57, anon_sym_SLASH = 58, anon_sym_SLASH_SLASH = 59, anon_sym_CARET = 60, anon_sym_EQ_EQ = 61, anon_sym_SLASH_EQ = 62, anon_sym_LT = 63, anon_sym_GT = 64, anon_sym_LT_EQ = 65, anon_sym_GT_EQ = 66, anon_sym_AMP_AMP = 67, anon_sym_PIPE_PIPE = 68, anon_sym_PLUS_PLUS = 69, anon_sym_LT_PIPE = 70, anon_sym_PIPE_GT = 71, anon_sym_LT_LT = 72, anon_sym_GT_GT = 73, anon_sym_LT_SLASH_GT = 74, anon_sym_LT_QMARK_GT = 75, anon_sym_PIPE_DOT = 76, anon_sym_PIPE_EQ = 77, sym__virtual_end_decl = 78, sym__virtual_open_section = 79, sym__virtual_end_section = 80, sym_minus_without_trailing_whitespace = 81, sym_glsl_content = 82, sym__block_comment_content = 83, sym__string_content_multiline = 84, sym_file = 85, sym_block_comment = 86, sym_module_declaration = 87, aux_sym__import_list = 88, aux_sym__top_decl_list = 89, sym_exposing_list = 90, sym_exposed_value = 91, sym_exposed_type = 92, sym_exposed_union_constructors = 93, sym_exposed_operator = 94, sym__dot_without_leading_whitespace = 95, sym_upper_case_qid = 96, sym_value_qid = 97, sym_field_accessor_function_expr = 98, sym_import_clause = 99, sym_as_clause = 100, sym_value_declaration = 101, sym_function_declaration_left = 102, sym_type_declaration = 103, sym_lower_type_name = 104, sym_union_variant = 105, sym__more_union_variants = 106, sym_type_alias_declaration = 107, sym_type_expression = 108, sym__type_expression_inner = 109, sym_type_ref = 110, sym__single_type_expression = 111, sym_type_ref_without_args = 112, sym_type_variable = 113, sym_record_type = 114, sym_field_type = 115, sym_tuple_type = 116, sym_type_annotation = 117, sym_port_annotation = 118, sym__expression = 119, sym_bin_op_expr = 120, sym_operator = 121, sym_operator_as_function_expr = 122, sym__operator_as_function_inner = 123, sym__call_or_atom = 124, sym_function_call_expr = 125, sym__function_call_target = 126, sym__atom = 127, sym_field_access_expr = 128, sym__field_access_start = 129, sym__field_access_segment = 130, sym_negate_expr = 131, sym_parenthesized_expr = 132, sym__literal_expr_group = 133, sym_char_constant_expr = 134, sym_number_constant_expr = 135, sym_string_constant_expr = 136, sym_anonymous_function_expr = 137, sym_value_expr = 138, sym_tuple_expr = 139, sym_unit_expr = 140, sym_list_expr = 141, sym_record_expr = 142, sym_record_base_identifier = 143, sym__record_base = 144, sym__record_inner = 145, sym_field = 146, sym_if_else_expr = 147, sym__if = 148, sym__then = 149, sym__else = 150, sym_case_of_expr = 151, sym__more_case_of_branches = 152, sym_case_of_branch = 153, sym_let_in_expr = 154, sym__inner_declaration = 155, sym_pattern = 156, sym_cons_pattern = 157, sym__single_pattern_cons = 158, sym__single_pattern = 159, sym_lower_pattern = 160, sym_anything_pattern = 161, sym_record_pattern = 162, sym_list_pattern = 163, sym_union_pattern = 164, sym_nullary_constructor_argument_pattern = 165, sym__union_argument_pattern = 166, sym_tuple_pattern = 167, sym__parenthesized_pattern = 168, sym_infix_declaration = 169, sym_glsl_code_expr = 170, sym__glsl_begin = 171, sym__glsl_end = 172, sym_operator_identifier = 173, aux_sym_exposing_list_repeat1 = 174, aux_sym_upper_case_qid_repeat1 = 175, aux_sym_value_qid_repeat1 = 176, aux_sym_function_declaration_left_repeat1 = 177, aux_sym_type_declaration_repeat1 = 178, aux_sym_type_declaration_repeat2 = 179, aux_sym_union_variant_repeat1 = 180, aux_sym_type_expression_repeat1 = 181, aux_sym_type_ref_repeat1 = 182, aux_sym_record_type_repeat1 = 183, aux_sym_tuple_type_repeat1 = 184, aux_sym_bin_op_expr_repeat1 = 185, aux_sym_function_call_expr_repeat1 = 186, aux_sym_field_access_expr_repeat1 = 187, aux_sym_string_constant_expr_repeat1 = 188, aux_sym_string_constant_expr_repeat2 = 189, aux_sym_anonymous_function_expr_repeat1 = 190, aux_sym_tuple_expr_repeat1 = 191, aux_sym_list_expr_repeat1 = 192, aux_sym__record_inner_repeat1 = 193, aux_sym_if_else_expr_repeat1 = 194, aux_sym__more_case_of_branches_repeat1 = 195, aux_sym_let_in_expr_repeat1 = 196, aux_sym_record_pattern_repeat1 = 197, aux_sym_list_pattern_repeat1 = 198, aux_sym_union_pattern_repeat1 = 199, aux_sym_tuple_pattern_repeat1 = 200, alias_sym_close_char = 201, alias_sym_close_quote = 202, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [sym_lower_case_identifier] = "lower_case_identifier", [anon_sym_LBRACE_DASH] = "{-", [anon_sym_DASH_RBRACE] = "-}", [sym_line_comment] = "line_comment", [anon_sym_LPAREN] = "(", [anon_sym_COMMA] = ",", [anon_sym_RPAREN] = ")", [sym__upper_case_identifier_without_leading_whitespace] = "upper_case_identifier", [sym__lower_case_identifier_without_leading_whitespace] = "lower_case_identifier", [anon_sym_DOT] = ".", [anon_sym_PIPE] = "|", [anon_sym_LBRACE] = "{", [anon_sym_RBRACE] = "}", [anon_sym_SQUOTE] = "open_char", [aux_sym_char_constant_expr_token1] = "regular_string_part", [anon_sym_DQUOTE_DQUOTE_DQUOTE] = "open_quote", [anon_sym_DQUOTE] = "open_quote", [aux_sym_string_constant_expr_token1] = "regular_string_part", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", [anon_sym_else] = "else", [anon_sym_if] = "if", [anon_sym_then] = "then", [anon_sym_let] = "let", [anon_sym_in] = "in", [anon_sym_COLON_COLON] = "::", [anon_sym_left] = "lower_case_identifier", [anon_sym_right] = "lower_case_identifier", [anon_sym_non] = "lower_case_identifier", [anon_sym_LBRACKglsl_PIPE] = "[glsl|", [anon_sym_PIPE_RBRACK] = "|]", [sym_upper_case_identifier] = "upper_case_identifier", [sym_number_literal] = "number_literal", [sym_string_escape] = "string_escape", [sym_invalid_string_escape] = "invalid_string_escape", [sym_module] = "module", [sym_effect] = "effect", [sym_where] = "where", [sym_import] = "import", [sym_as] = "as", [sym_exposing] = "exposing", [sym_case] = "case", [sym_of] = "of", [sym_type] = "type", [sym_alias] = "alias", [sym_port] = "port", [sym_infix] = "infix", [sym_double_dot] = "double_dot", [sym_eq] = "eq", [sym_arrow] = "arrow", [sym_colon] = "colon", [sym_backslash] = "backslash", [sym_underscore] = "underscore", [sym_dot] = "dot", [anon_sym_PLUS] = "+", [anon_sym_DASH] = "-", [anon_sym_STAR] = "*", [anon_sym_SLASH] = "/", [anon_sym_SLASH_SLASH] = "//", [anon_sym_CARET] = "^", [anon_sym_EQ_EQ] = "==", [anon_sym_SLASH_EQ] = "/=", [anon_sym_LT] = "<", [anon_sym_GT] = ">", [anon_sym_LT_EQ] = "<=", [anon_sym_GT_EQ] = ">=", [anon_sym_AMP_AMP] = "&&", [anon_sym_PIPE_PIPE] = "||", [anon_sym_PLUS_PLUS] = "++", [anon_sym_LT_PIPE] = "<|", [anon_sym_PIPE_GT] = "|>", [anon_sym_LT_LT] = "<<", [anon_sym_GT_GT] = ">>", [anon_sym_LT_SLASH_GT] = "", [anon_sym_LT_QMARK_GT] = "<\?>", [anon_sym_PIPE_DOT] = "|.", [anon_sym_PIPE_EQ] = "|=", [sym__virtual_end_decl] = "_virtual_end_decl", [sym__virtual_open_section] = "_virtual_open_section", [sym__virtual_end_section] = "_virtual_end_section", [sym_minus_without_trailing_whitespace] = "operator_identifier", [sym_glsl_content] = "glsl_content", [sym__block_comment_content] = "_block_comment_content", [sym__string_content_multiline] = "regular_string_part", [sym_file] = "file", [sym_block_comment] = "block_comment", [sym_module_declaration] = "module_declaration", [aux_sym__import_list] = "_import_list", [aux_sym__top_decl_list] = "_top_decl_list", [sym_exposing_list] = "exposing_list", [sym_exposed_value] = "exposed_value", [sym_exposed_type] = "exposed_type", [sym_exposed_union_constructors] = "exposed_union_constructors", [sym_exposed_operator] = "exposed_operator", [sym__dot_without_leading_whitespace] = "dot", [sym_upper_case_qid] = "upper_case_qid", [sym_value_qid] = "value_qid", [sym_field_accessor_function_expr] = "field_accessor_function_expr", [sym_import_clause] = "import_clause", [sym_as_clause] = "as_clause", [sym_value_declaration] = "value_declaration", [sym_function_declaration_left] = "function_declaration_left", [sym_type_declaration] = "type_declaration", [sym_lower_type_name] = "lower_type_name", [sym_union_variant] = "union_variant", [sym__more_union_variants] = "_more_union_variants", [sym_type_alias_declaration] = "type_alias_declaration", [sym_type_expression] = "type_expression", [sym__type_expression_inner] = "_type_expression_inner", [sym_type_ref] = "type_ref", [sym__single_type_expression] = "_single_type_expression", [sym_type_ref_without_args] = "type_ref", [sym_type_variable] = "type_variable", [sym_record_type] = "record_type", [sym_field_type] = "field_type", [sym_tuple_type] = "tuple_type", [sym_type_annotation] = "type_annotation", [sym_port_annotation] = "port_annotation", [sym__expression] = "_expression", [sym_bin_op_expr] = "bin_op_expr", [sym_operator] = "operator", [sym_operator_as_function_expr] = "operator_as_function_expr", [sym__operator_as_function_inner] = "_operator_as_function_inner", [sym__call_or_atom] = "_call_or_atom", [sym_function_call_expr] = "function_call_expr", [sym__function_call_target] = "_function_call_target", [sym__atom] = "_atom", [sym_field_access_expr] = "field_access_expr", [sym__field_access_start] = "_field_access_start", [sym__field_access_segment] = "_field_access_segment", [sym_negate_expr] = "negate_expr", [sym_parenthesized_expr] = "parenthesized_expr", [sym__literal_expr_group] = "_literal_expr_group", [sym_char_constant_expr] = "char_constant_expr", [sym_number_constant_expr] = "number_constant_expr", [sym_string_constant_expr] = "string_constant_expr", [sym_anonymous_function_expr] = "anonymous_function_expr", [sym_value_expr] = "value_expr", [sym_tuple_expr] = "tuple_expr", [sym_unit_expr] = "unit_expr", [sym_list_expr] = "list_expr", [sym_record_expr] = "record_expr", [sym_record_base_identifier] = "record_base_identifier", [sym__record_base] = "_record_base", [sym__record_inner] = "_record_inner", [sym_field] = "field", [sym_if_else_expr] = "if_else_expr", [sym__if] = "_if", [sym__then] = "_then", [sym__else] = "_else", [sym_case_of_expr] = "case_of_expr", [sym__more_case_of_branches] = "_more_case_of_branches", [sym_case_of_branch] = "case_of_branch", [sym_let_in_expr] = "let_in_expr", [sym__inner_declaration] = "_inner_declaration", [sym_pattern] = "pattern", [sym_cons_pattern] = "cons_pattern", [sym__single_pattern_cons] = "_single_pattern_cons", [sym__single_pattern] = "_single_pattern", [sym_lower_pattern] = "lower_pattern", [sym_anything_pattern] = "anything_pattern", [sym_record_pattern] = "record_pattern", [sym_list_pattern] = "list_pattern", [sym_union_pattern] = "union_pattern", [sym_nullary_constructor_argument_pattern] = "nullary_constructor_argument_pattern", [sym__union_argument_pattern] = "_union_argument_pattern", [sym_tuple_pattern] = "tuple_pattern", [sym__parenthesized_pattern] = "_parenthesized_pattern", [sym_infix_declaration] = "infix_declaration", [sym_glsl_code_expr] = "glsl_code_expr", [sym__glsl_begin] = "_glsl_begin", [sym__glsl_end] = "_glsl_end", [sym_operator_identifier] = "operator_identifier", [aux_sym_exposing_list_repeat1] = "exposing_list_repeat1", [aux_sym_upper_case_qid_repeat1] = "upper_case_qid_repeat1", [aux_sym_value_qid_repeat1] = "value_qid_repeat1", [aux_sym_function_declaration_left_repeat1] = "function_declaration_left_repeat1", [aux_sym_type_declaration_repeat1] = "type_declaration_repeat1", [aux_sym_type_declaration_repeat2] = "type_declaration_repeat2", [aux_sym_union_variant_repeat1] = "union_variant_repeat1", [aux_sym_type_expression_repeat1] = "type_expression_repeat1", [aux_sym_type_ref_repeat1] = "type_ref_repeat1", [aux_sym_record_type_repeat1] = "record_type_repeat1", [aux_sym_tuple_type_repeat1] = "tuple_type_repeat1", [aux_sym_bin_op_expr_repeat1] = "bin_op_expr_repeat1", [aux_sym_function_call_expr_repeat1] = "function_call_expr_repeat1", [aux_sym_field_access_expr_repeat1] = "field_access_expr_repeat1", [aux_sym_string_constant_expr_repeat1] = "string_constant_expr_repeat1", [aux_sym_string_constant_expr_repeat2] = "string_constant_expr_repeat2", [aux_sym_anonymous_function_expr_repeat1] = "anonymous_function_expr_repeat1", [aux_sym_tuple_expr_repeat1] = "tuple_expr_repeat1", [aux_sym_list_expr_repeat1] = "list_expr_repeat1", [aux_sym__record_inner_repeat1] = "_record_inner_repeat1", [aux_sym_if_else_expr_repeat1] = "if_else_expr_repeat1", [aux_sym__more_case_of_branches_repeat1] = "_more_case_of_branches_repeat1", [aux_sym_let_in_expr_repeat1] = "let_in_expr_repeat1", [aux_sym_record_pattern_repeat1] = "record_pattern_repeat1", [aux_sym_list_pattern_repeat1] = "list_pattern_repeat1", [aux_sym_union_pattern_repeat1] = "union_pattern_repeat1", [aux_sym_tuple_pattern_repeat1] = "tuple_pattern_repeat1", [alias_sym_close_char] = "close_char", [alias_sym_close_quote] = "close_quote", }; static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, [sym_lower_case_identifier] = sym_lower_case_identifier, [anon_sym_LBRACE_DASH] = anon_sym_LBRACE_DASH, [anon_sym_DASH_RBRACE] = anon_sym_DASH_RBRACE, [sym_line_comment] = sym_line_comment, [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_RPAREN] = anon_sym_RPAREN, [sym__upper_case_identifier_without_leading_whitespace] = sym_upper_case_identifier, [sym__lower_case_identifier_without_leading_whitespace] = sym_lower_case_identifier, [anon_sym_DOT] = anon_sym_DOT, [anon_sym_PIPE] = anon_sym_PIPE, [anon_sym_LBRACE] = anon_sym_LBRACE, [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_SQUOTE] = anon_sym_SQUOTE, [aux_sym_char_constant_expr_token1] = sym__string_content_multiline, [anon_sym_DQUOTE_DQUOTE_DQUOTE] = anon_sym_DQUOTE_DQUOTE_DQUOTE, [anon_sym_DQUOTE] = anon_sym_DQUOTE_DQUOTE_DQUOTE, [aux_sym_string_constant_expr_token1] = sym__string_content_multiline, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, [anon_sym_else] = anon_sym_else, [anon_sym_if] = anon_sym_if, [anon_sym_then] = anon_sym_then, [anon_sym_let] = anon_sym_let, [anon_sym_in] = anon_sym_in, [anon_sym_COLON_COLON] = anon_sym_COLON_COLON, [anon_sym_left] = sym_lower_case_identifier, [anon_sym_right] = sym_lower_case_identifier, [anon_sym_non] = sym_lower_case_identifier, [anon_sym_LBRACKglsl_PIPE] = anon_sym_LBRACKglsl_PIPE, [anon_sym_PIPE_RBRACK] = anon_sym_PIPE_RBRACK, [sym_upper_case_identifier] = sym_upper_case_identifier, [sym_number_literal] = sym_number_literal, [sym_string_escape] = sym_string_escape, [sym_invalid_string_escape] = sym_invalid_string_escape, [sym_module] = sym_module, [sym_effect] = sym_effect, [sym_where] = sym_where, [sym_import] = sym_import, [sym_as] = sym_as, [sym_exposing] = sym_exposing, [sym_case] = sym_case, [sym_of] = sym_of, [sym_type] = sym_type, [sym_alias] = sym_alias, [sym_port] = sym_port, [sym_infix] = sym_infix, [sym_double_dot] = sym_double_dot, [sym_eq] = sym_eq, [sym_arrow] = sym_arrow, [sym_colon] = sym_colon, [sym_backslash] = sym_backslash, [sym_underscore] = sym_underscore, [sym_dot] = sym_dot, [anon_sym_PLUS] = anon_sym_PLUS, [anon_sym_DASH] = anon_sym_DASH, [anon_sym_STAR] = anon_sym_STAR, [anon_sym_SLASH] = anon_sym_SLASH, [anon_sym_SLASH_SLASH] = anon_sym_SLASH_SLASH, [anon_sym_CARET] = anon_sym_CARET, [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, [anon_sym_LT] = anon_sym_LT, [anon_sym_GT] = anon_sym_GT, [anon_sym_LT_EQ] = anon_sym_LT_EQ, [anon_sym_GT_EQ] = anon_sym_GT_EQ, [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, [anon_sym_PLUS_PLUS] = anon_sym_PLUS_PLUS, [anon_sym_LT_PIPE] = anon_sym_LT_PIPE, [anon_sym_PIPE_GT] = anon_sym_PIPE_GT, [anon_sym_LT_LT] = anon_sym_LT_LT, [anon_sym_GT_GT] = anon_sym_GT_GT, [anon_sym_LT_SLASH_GT] = anon_sym_LT_SLASH_GT, [anon_sym_LT_QMARK_GT] = anon_sym_LT_QMARK_GT, [anon_sym_PIPE_DOT] = anon_sym_PIPE_DOT, [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, [sym__virtual_end_decl] = sym__virtual_end_decl, [sym__virtual_open_section] = sym__virtual_open_section, [sym__virtual_end_section] = sym__virtual_end_section, [sym_minus_without_trailing_whitespace] = sym_operator_identifier, [sym_glsl_content] = sym_glsl_content, [sym__block_comment_content] = sym__block_comment_content, [sym__string_content_multiline] = sym__string_content_multiline, [sym_file] = sym_file, [sym_block_comment] = sym_block_comment, [sym_module_declaration] = sym_module_declaration, [aux_sym__import_list] = aux_sym__import_list, [aux_sym__top_decl_list] = aux_sym__top_decl_list, [sym_exposing_list] = sym_exposing_list, [sym_exposed_value] = sym_exposed_value, [sym_exposed_type] = sym_exposed_type, [sym_exposed_union_constructors] = sym_exposed_union_constructors, [sym_exposed_operator] = sym_exposed_operator, [sym__dot_without_leading_whitespace] = sym_dot, [sym_upper_case_qid] = sym_upper_case_qid, [sym_value_qid] = sym_value_qid, [sym_field_accessor_function_expr] = sym_field_accessor_function_expr, [sym_import_clause] = sym_import_clause, [sym_as_clause] = sym_as_clause, [sym_value_declaration] = sym_value_declaration, [sym_function_declaration_left] = sym_function_declaration_left, [sym_type_declaration] = sym_type_declaration, [sym_lower_type_name] = sym_lower_type_name, [sym_union_variant] = sym_union_variant, [sym__more_union_variants] = sym__more_union_variants, [sym_type_alias_declaration] = sym_type_alias_declaration, [sym_type_expression] = sym_type_expression, [sym__type_expression_inner] = sym__type_expression_inner, [sym_type_ref] = sym_type_ref, [sym__single_type_expression] = sym__single_type_expression, [sym_type_ref_without_args] = sym_type_ref, [sym_type_variable] = sym_type_variable, [sym_record_type] = sym_record_type, [sym_field_type] = sym_field_type, [sym_tuple_type] = sym_tuple_type, [sym_type_annotation] = sym_type_annotation, [sym_port_annotation] = sym_port_annotation, [sym__expression] = sym__expression, [sym_bin_op_expr] = sym_bin_op_expr, [sym_operator] = sym_operator, [sym_operator_as_function_expr] = sym_operator_as_function_expr, [sym__operator_as_function_inner] = sym__operator_as_function_inner, [sym__call_or_atom] = sym__call_or_atom, [sym_function_call_expr] = sym_function_call_expr, [sym__function_call_target] = sym__function_call_target, [sym__atom] = sym__atom, [sym_field_access_expr] = sym_field_access_expr, [sym__field_access_start] = sym__field_access_start, [sym__field_access_segment] = sym__field_access_segment, [sym_negate_expr] = sym_negate_expr, [sym_parenthesized_expr] = sym_parenthesized_expr, [sym__literal_expr_group] = sym__literal_expr_group, [sym_char_constant_expr] = sym_char_constant_expr, [sym_number_constant_expr] = sym_number_constant_expr, [sym_string_constant_expr] = sym_string_constant_expr, [sym_anonymous_function_expr] = sym_anonymous_function_expr, [sym_value_expr] = sym_value_expr, [sym_tuple_expr] = sym_tuple_expr, [sym_unit_expr] = sym_unit_expr, [sym_list_expr] = sym_list_expr, [sym_record_expr] = sym_record_expr, [sym_record_base_identifier] = sym_record_base_identifier, [sym__record_base] = sym__record_base, [sym__record_inner] = sym__record_inner, [sym_field] = sym_field, [sym_if_else_expr] = sym_if_else_expr, [sym__if] = sym__if, [sym__then] = sym__then, [sym__else] = sym__else, [sym_case_of_expr] = sym_case_of_expr, [sym__more_case_of_branches] = sym__more_case_of_branches, [sym_case_of_branch] = sym_case_of_branch, [sym_let_in_expr] = sym_let_in_expr, [sym__inner_declaration] = sym__inner_declaration, [sym_pattern] = sym_pattern, [sym_cons_pattern] = sym_cons_pattern, [sym__single_pattern_cons] = sym__single_pattern_cons, [sym__single_pattern] = sym__single_pattern, [sym_lower_pattern] = sym_lower_pattern, [sym_anything_pattern] = sym_anything_pattern, [sym_record_pattern] = sym_record_pattern, [sym_list_pattern] = sym_list_pattern, [sym_union_pattern] = sym_union_pattern, [sym_nullary_constructor_argument_pattern] = sym_nullary_constructor_argument_pattern, [sym__union_argument_pattern] = sym__union_argument_pattern, [sym_tuple_pattern] = sym_tuple_pattern, [sym__parenthesized_pattern] = sym__parenthesized_pattern, [sym_infix_declaration] = sym_infix_declaration, [sym_glsl_code_expr] = sym_glsl_code_expr, [sym__glsl_begin] = sym__glsl_begin, [sym__glsl_end] = sym__glsl_end, [sym_operator_identifier] = sym_operator_identifier, [aux_sym_exposing_list_repeat1] = aux_sym_exposing_list_repeat1, [aux_sym_upper_case_qid_repeat1] = aux_sym_upper_case_qid_repeat1, [aux_sym_value_qid_repeat1] = aux_sym_value_qid_repeat1, [aux_sym_function_declaration_left_repeat1] = aux_sym_function_declaration_left_repeat1, [aux_sym_type_declaration_repeat1] = aux_sym_type_declaration_repeat1, [aux_sym_type_declaration_repeat2] = aux_sym_type_declaration_repeat2, [aux_sym_union_variant_repeat1] = aux_sym_union_variant_repeat1, [aux_sym_type_expression_repeat1] = aux_sym_type_expression_repeat1, [aux_sym_type_ref_repeat1] = aux_sym_type_ref_repeat1, [aux_sym_record_type_repeat1] = aux_sym_record_type_repeat1, [aux_sym_tuple_type_repeat1] = aux_sym_tuple_type_repeat1, [aux_sym_bin_op_expr_repeat1] = aux_sym_bin_op_expr_repeat1, [aux_sym_function_call_expr_repeat1] = aux_sym_function_call_expr_repeat1, [aux_sym_field_access_expr_repeat1] = aux_sym_field_access_expr_repeat1, [aux_sym_string_constant_expr_repeat1] = aux_sym_string_constant_expr_repeat1, [aux_sym_string_constant_expr_repeat2] = aux_sym_string_constant_expr_repeat2, [aux_sym_anonymous_function_expr_repeat1] = aux_sym_anonymous_function_expr_repeat1, [aux_sym_tuple_expr_repeat1] = aux_sym_tuple_expr_repeat1, [aux_sym_list_expr_repeat1] = aux_sym_list_expr_repeat1, [aux_sym__record_inner_repeat1] = aux_sym__record_inner_repeat1, [aux_sym_if_else_expr_repeat1] = aux_sym_if_else_expr_repeat1, [aux_sym__more_case_of_branches_repeat1] = aux_sym__more_case_of_branches_repeat1, [aux_sym_let_in_expr_repeat1] = aux_sym_let_in_expr_repeat1, [aux_sym_record_pattern_repeat1] = aux_sym_record_pattern_repeat1, [aux_sym_list_pattern_repeat1] = aux_sym_list_pattern_repeat1, [aux_sym_union_pattern_repeat1] = aux_sym_union_pattern_repeat1, [aux_sym_tuple_pattern_repeat1] = aux_sym_tuple_pattern_repeat1, [alias_sym_close_char] = alias_sym_close_char, [alias_sym_close_quote] = alias_sym_close_quote, }; static const TSSymbolMetadata ts_symbol_metadata[] = { [ts_builtin_sym_end] = { .visible = false, .named = true, }, [sym_lower_case_identifier] = { .visible = true, .named = true, }, [anon_sym_LBRACE_DASH] = { .visible = true, .named = false, }, [anon_sym_DASH_RBRACE] = { .visible = true, .named = false, }, [sym_line_comment] = { .visible = true, .named = true, }, [anon_sym_LPAREN] = { .visible = true, .named = false, }, [anon_sym_COMMA] = { .visible = true, .named = false, }, [anon_sym_RPAREN] = { .visible = true, .named = false, }, [sym__upper_case_identifier_without_leading_whitespace] = { .visible = true, .named = true, }, [sym__lower_case_identifier_without_leading_whitespace] = { .visible = true, .named = true, }, [anon_sym_DOT] = { .visible = true, .named = false, }, [anon_sym_PIPE] = { .visible = true, .named = false, }, [anon_sym_LBRACE] = { .visible = true, .named = false, }, [anon_sym_RBRACE] = { .visible = true, .named = false, }, [anon_sym_SQUOTE] = { .visible = true, .named = true, }, [aux_sym_char_constant_expr_token1] = { .visible = true, .named = true, }, [anon_sym_DQUOTE_DQUOTE_DQUOTE] = { .visible = true, .named = true, }, [anon_sym_DQUOTE] = { .visible = true, .named = true, }, [aux_sym_string_constant_expr_token1] = { .visible = true, .named = true, }, [anon_sym_LBRACK] = { .visible = true, .named = false, }, [anon_sym_RBRACK] = { .visible = true, .named = false, }, [anon_sym_else] = { .visible = true, .named = false, }, [anon_sym_if] = { .visible = true, .named = false, }, [anon_sym_then] = { .visible = true, .named = false, }, [anon_sym_let] = { .visible = true, .named = false, }, [anon_sym_in] = { .visible = true, .named = false, }, [anon_sym_COLON_COLON] = { .visible = true, .named = false, }, [anon_sym_left] = { .visible = true, .named = true, }, [anon_sym_right] = { .visible = true, .named = true, }, [anon_sym_non] = { .visible = true, .named = true, }, [anon_sym_LBRACKglsl_PIPE] = { .visible = true, .named = false, }, [anon_sym_PIPE_RBRACK] = { .visible = true, .named = false, }, [sym_upper_case_identifier] = { .visible = true, .named = true, }, [sym_number_literal] = { .visible = true, .named = true, }, [sym_string_escape] = { .visible = true, .named = true, }, [sym_invalid_string_escape] = { .visible = true, .named = true, }, [sym_module] = { .visible = true, .named = true, }, [sym_effect] = { .visible = true, .named = true, }, [sym_where] = { .visible = true, .named = true, }, [sym_import] = { .visible = true, .named = true, }, [sym_as] = { .visible = true, .named = true, }, [sym_exposing] = { .visible = true, .named = true, }, [sym_case] = { .visible = true, .named = true, }, [sym_of] = { .visible = true, .named = true, }, [sym_type] = { .visible = true, .named = true, }, [sym_alias] = { .visible = true, .named = true, }, [sym_port] = { .visible = true, .named = true, }, [sym_infix] = { .visible = true, .named = true, }, [sym_double_dot] = { .visible = true, .named = true, }, [sym_eq] = { .visible = true, .named = true, }, [sym_arrow] = { .visible = true, .named = true, }, [sym_colon] = { .visible = true, .named = true, }, [sym_backslash] = { .visible = true, .named = true, }, [sym_underscore] = { .visible = true, .named = true, }, [sym_dot] = { .visible = true, .named = true, }, [anon_sym_PLUS] = { .visible = true, .named = false, }, [anon_sym_DASH] = { .visible = true, .named = false, }, [anon_sym_STAR] = { .visible = true, .named = false, }, [anon_sym_SLASH] = { .visible = true, .named = false, }, [anon_sym_SLASH_SLASH] = { .visible = true, .named = false, }, [anon_sym_CARET] = { .visible = true, .named = false, }, [anon_sym_EQ_EQ] = { .visible = true, .named = false, }, [anon_sym_SLASH_EQ] = { .visible = true, .named = false, }, [anon_sym_LT] = { .visible = true, .named = false, }, [anon_sym_GT] = { .visible = true, .named = false, }, [anon_sym_LT_EQ] = { .visible = true, .named = false, }, [anon_sym_GT_EQ] = { .visible = true, .named = false, }, [anon_sym_AMP_AMP] = { .visible = true, .named = false, }, [anon_sym_PIPE_PIPE] = { .visible = true, .named = false, }, [anon_sym_PLUS_PLUS] = { .visible = true, .named = false, }, [anon_sym_LT_PIPE] = { .visible = true, .named = false, }, [anon_sym_PIPE_GT] = { .visible = true, .named = false, }, [anon_sym_LT_LT] = { .visible = true, .named = false, }, [anon_sym_GT_GT] = { .visible = true, .named = false, }, [anon_sym_LT_SLASH_GT] = { .visible = true, .named = false, }, [anon_sym_LT_QMARK_GT] = { .visible = true, .named = false, }, [anon_sym_PIPE_DOT] = { .visible = true, .named = false, }, [anon_sym_PIPE_EQ] = { .visible = true, .named = false, }, [sym__virtual_end_decl] = { .visible = false, .named = true, }, [sym__virtual_open_section] = { .visible = false, .named = true, }, [sym__virtual_end_section] = { .visible = false, .named = true, }, [sym_minus_without_trailing_whitespace] = { .visible = true, .named = true, }, [sym_glsl_content] = { .visible = true, .named = true, }, [sym__block_comment_content] = { .visible = false, .named = true, }, [sym__string_content_multiline] = { .visible = true, .named = true, }, [sym_file] = { .visible = true, .named = true, }, [sym_block_comment] = { .visible = true, .named = true, }, [sym_module_declaration] = { .visible = true, .named = true, }, [aux_sym__import_list] = { .visible = false, .named = false, }, [aux_sym__top_decl_list] = { .visible = false, .named = false, }, [sym_exposing_list] = { .visible = true, .named = true, }, [sym_exposed_value] = { .visible = true, .named = true, }, [sym_exposed_type] = { .visible = true, .named = true, }, [sym_exposed_union_constructors] = { .visible = true, .named = true, }, [sym_exposed_operator] = { .visible = true, .named = true, }, [sym__dot_without_leading_whitespace] = { .visible = true, .named = true, }, [sym_upper_case_qid] = { .visible = true, .named = true, }, [sym_value_qid] = { .visible = true, .named = true, }, [sym_field_accessor_function_expr] = { .visible = true, .named = true, }, [sym_import_clause] = { .visible = true, .named = true, }, [sym_as_clause] = { .visible = true, .named = true, }, [sym_value_declaration] = { .visible = true, .named = true, }, [sym_function_declaration_left] = { .visible = true, .named = true, }, [sym_type_declaration] = { .visible = true, .named = true, }, [sym_lower_type_name] = { .visible = true, .named = true, }, [sym_union_variant] = { .visible = true, .named = true, }, [sym__more_union_variants] = { .visible = false, .named = true, }, [sym_type_alias_declaration] = { .visible = true, .named = true, }, [sym_type_expression] = { .visible = true, .named = true, }, [sym__type_expression_inner] = { .visible = false, .named = true, }, [sym_type_ref] = { .visible = true, .named = true, }, [sym__single_type_expression] = { .visible = false, .named = true, }, [sym_type_ref_without_args] = { .visible = true, .named = true, }, [sym_type_variable] = { .visible = true, .named = true, }, [sym_record_type] = { .visible = true, .named = true, }, [sym_field_type] = { .visible = true, .named = true, }, [sym_tuple_type] = { .visible = true, .named = true, }, [sym_type_annotation] = { .visible = true, .named = true, }, [sym_port_annotation] = { .visible = true, .named = true, }, [sym__expression] = { .visible = false, .named = true, }, [sym_bin_op_expr] = { .visible = true, .named = true, }, [sym_operator] = { .visible = true, .named = true, }, [sym_operator_as_function_expr] = { .visible = true, .named = true, }, [sym__operator_as_function_inner] = { .visible = false, .named = true, }, [sym__call_or_atom] = { .visible = false, .named = true, }, [sym_function_call_expr] = { .visible = true, .named = true, }, [sym__function_call_target] = { .visible = false, .named = true, }, [sym__atom] = { .visible = false, .named = true, }, [sym_field_access_expr] = { .visible = true, .named = true, }, [sym__field_access_start] = { .visible = false, .named = true, }, [sym__field_access_segment] = { .visible = false, .named = true, }, [sym_negate_expr] = { .visible = true, .named = true, }, [sym_parenthesized_expr] = { .visible = true, .named = true, }, [sym__literal_expr_group] = { .visible = false, .named = true, }, [sym_char_constant_expr] = { .visible = true, .named = true, }, [sym_number_constant_expr] = { .visible = true, .named = true, }, [sym_string_constant_expr] = { .visible = true, .named = true, }, [sym_anonymous_function_expr] = { .visible = true, .named = true, }, [sym_value_expr] = { .visible = true, .named = true, }, [sym_tuple_expr] = { .visible = true, .named = true, }, [sym_unit_expr] = { .visible = true, .named = true, }, [sym_list_expr] = { .visible = true, .named = true, }, [sym_record_expr] = { .visible = true, .named = true, }, [sym_record_base_identifier] = { .visible = true, .named = true, }, [sym__record_base] = { .visible = false, .named = true, }, [sym__record_inner] = { .visible = false, .named = true, }, [sym_field] = { .visible = true, .named = true, }, [sym_if_else_expr] = { .visible = true, .named = true, }, [sym__if] = { .visible = false, .named = true, }, [sym__then] = { .visible = false, .named = true, }, [sym__else] = { .visible = false, .named = true, }, [sym_case_of_expr] = { .visible = true, .named = true, }, [sym__more_case_of_branches] = { .visible = false, .named = true, }, [sym_case_of_branch] = { .visible = true, .named = true, }, [sym_let_in_expr] = { .visible = true, .named = true, }, [sym__inner_declaration] = { .visible = false, .named = true, }, [sym_pattern] = { .visible = true, .named = true, }, [sym_cons_pattern] = { .visible = true, .named = true, }, [sym__single_pattern_cons] = { .visible = false, .named = true, }, [sym__single_pattern] = { .visible = false, .named = true, }, [sym_lower_pattern] = { .visible = true, .named = true, }, [sym_anything_pattern] = { .visible = true, .named = true, }, [sym_record_pattern] = { .visible = true, .named = true, }, [sym_list_pattern] = { .visible = true, .named = true, }, [sym_union_pattern] = { .visible = true, .named = true, }, [sym_nullary_constructor_argument_pattern] = { .visible = true, .named = true, }, [sym__union_argument_pattern] = { .visible = false, .named = true, }, [sym_tuple_pattern] = { .visible = true, .named = true, }, [sym__parenthesized_pattern] = { .visible = false, .named = true, }, [sym_infix_declaration] = { .visible = true, .named = true, }, [sym_glsl_code_expr] = { .visible = true, .named = true, }, [sym__glsl_begin] = { .visible = false, .named = true, }, [sym__glsl_end] = { .visible = false, .named = true, }, [sym_operator_identifier] = { .visible = true, .named = true, }, [aux_sym_exposing_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_upper_case_qid_repeat1] = { .visible = false, .named = false, }, [aux_sym_value_qid_repeat1] = { .visible = false, .named = false, }, [aux_sym_function_declaration_left_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_declaration_repeat2] = { .visible = false, .named = false, }, [aux_sym_union_variant_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_expression_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_ref_repeat1] = { .visible = false, .named = false, }, [aux_sym_record_type_repeat1] = { .visible = false, .named = false, }, [aux_sym_tuple_type_repeat1] = { .visible = false, .named = false, }, [aux_sym_bin_op_expr_repeat1] = { .visible = false, .named = false, }, [aux_sym_function_call_expr_repeat1] = { .visible = false, .named = false, }, [aux_sym_field_access_expr_repeat1] = { .visible = false, .named = false, }, [aux_sym_string_constant_expr_repeat1] = { .visible = false, .named = false, }, [aux_sym_string_constant_expr_repeat2] = { .visible = false, .named = false, }, [aux_sym_anonymous_function_expr_repeat1] = { .visible = false, .named = false, }, [aux_sym_tuple_expr_repeat1] = { .visible = false, .named = false, }, [aux_sym_list_expr_repeat1] = { .visible = false, .named = false, }, [aux_sym__record_inner_repeat1] = { .visible = false, .named = false, }, [aux_sym_if_else_expr_repeat1] = { .visible = false, .named = false, }, [aux_sym__more_case_of_branches_repeat1] = { .visible = false, .named = false, }, [aux_sym_let_in_expr_repeat1] = { .visible = false, .named = false, }, [aux_sym_record_pattern_repeat1] = { .visible = false, .named = false, }, [aux_sym_list_pattern_repeat1] = { .visible = false, .named = false, }, [aux_sym_union_pattern_repeat1] = { .visible = false, .named = false, }, [aux_sym_tuple_pattern_repeat1] = { .visible = false, .named = false, }, [alias_sym_close_char] = { .visible = true, .named = true, }, [alias_sym_close_quote] = { .visible = true, .named = true, }, }; enum ts_field_identifiers { field_arg = 1, field_argPattern = 2, field_asClause = 3, field_associativity = 4, field_baseRecord = 5, field_body = 6, field_branch = 7, field_child = 8, field_constructor = 9, field_content = 10, field_doubleDot = 11, field_exposing = 12, field_expr = 13, field_exprList = 14, field_expression = 15, field_field = 16, field_fieldType = 17, field_functionDeclarationLeft = 18, field_moduleDeclaration = 19, field_moduleName = 20, field_name = 21, field_operator = 22, field_param = 23, field_part = 24, field_pattern = 25, field_patternAs = 26, field_patternList = 27, field_precedence = 28, field_target = 29, field_typeExpression = 30, field_typeName = 31, field_typeVariable = 32, field_unionVariant = 33, field_unitExpr = 34, field_valueDeclaration = 35, }; static const char * const ts_field_names[] = { [0] = NULL, [field_arg] = "arg", [field_argPattern] = "argPattern", [field_asClause] = "asClause", [field_associativity] = "associativity", [field_baseRecord] = "baseRecord", [field_body] = "body", [field_branch] = "branch", [field_child] = "child", [field_constructor] = "constructor", [field_content] = "content", [field_doubleDot] = "doubleDot", [field_exposing] = "exposing", [field_expr] = "expr", [field_exprList] = "exprList", [field_expression] = "expression", [field_field] = "field", [field_fieldType] = "fieldType", [field_functionDeclarationLeft] = "functionDeclarationLeft", [field_moduleDeclaration] = "moduleDeclaration", [field_moduleName] = "moduleName", [field_name] = "name", [field_operator] = "operator", [field_param] = "param", [field_part] = "part", [field_pattern] = "pattern", [field_patternAs] = "patternAs", [field_patternList] = "patternList", [field_precedence] = "precedence", [field_target] = "target", [field_typeExpression] = "typeExpression", [field_typeName] = "typeName", [field_typeVariable] = "typeVariable", [field_unionVariant] = "unionVariant", [field_unitExpr] = "unitExpr", [field_valueDeclaration] = "valueDeclaration", }; static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [1] = {.index = 0, .length = 1}, [2] = {.index = 1, .length = 1}, [3] = {.index = 2, .length = 1}, [5] = {.index = 3, .length = 1}, [6] = {.index = 4, .length = 1}, [7] = {.index = 5, .length = 1}, [8] = {.index = 6, .length = 2}, [9] = {.index = 8, .length = 1}, [10] = {.index = 9, .length = 1}, [13] = {.index = 10, .length = 1}, [14] = {.index = 11, .length = 2}, [15] = {.index = 13, .length = 1}, [16] = {.index = 14, .length = 1}, [17] = {.index = 15, .length = 1}, [18] = {.index = 16, .length = 2}, [19] = {.index = 18, .length = 2}, [20] = {.index = 20, .length = 2}, [21] = {.index = 22, .length = 1}, [22] = {.index = 23, .length = 2}, [23] = {.index = 25, .length = 1}, [24] = {.index = 26, .length = 2}, [25] = {.index = 28, .length = 2}, [26] = {.index = 30, .length = 2}, [27] = {.index = 32, .length = 2}, [28] = {.index = 34, .length = 2}, [29] = {.index = 36, .length = 2}, [30] = {.index = 38, .length = 2}, [31] = {.index = 40, .length = 2}, [32] = {.index = 42, .length = 1}, [33] = {.index = 43, .length = 1}, [34] = {.index = 44, .length = 3}, [35] = {.index = 47, .length = 2}, [36] = {.index = 49, .length = 2}, [37] = {.index = 51, .length = 2}, [38] = {.index = 53, .length = 1}, [39] = {.index = 54, .length = 1}, [40] = {.index = 55, .length = 2}, [41] = {.index = 57, .length = 2}, [42] = {.index = 59, .length = 1}, [43] = {.index = 60, .length = 2}, [44] = {.index = 62, .length = 1}, [45] = {.index = 63, .length = 1}, [46] = {.index = 64, .length = 2}, [47] = {.index = 66, .length = 1}, [48] = {.index = 67, .length = 3}, [49] = {.index = 70, .length = 3}, [50] = {.index = 73, .length = 2}, [51] = {.index = 75, .length = 1}, [52] = {.index = 76, .length = 1}, [53] = {.index = 77, .length = 2}, [54] = {.index = 79, .length = 2}, [55] = {.index = 81, .length = 2}, [56] = {.index = 83, .length = 1}, [57] = {.index = 84, .length = 3}, [58] = {.index = 87, .length = 1}, [59] = {.index = 88, .length = 3}, [60] = {.index = 91, .length = 2}, [61] = {.index = 93, .length = 1}, [62] = {.index = 94, .length = 2}, [63] = {.index = 96, .length = 2}, [64] = {.index = 98, .length = 2}, [65] = {.index = 100, .length = 2}, [66] = {.index = 102, .length = 2}, [67] = {.index = 104, .length = 1}, [68] = {.index = 105, .length = 2}, [69] = {.index = 107, .length = 1}, [70] = {.index = 108, .length = 2}, [71] = {.index = 110, .length = 4}, [72] = {.index = 114, .length = 3}, [73] = {.index = 117, .length = 3}, [74] = {.index = 120, .length = 1}, [75] = {.index = 121, .length = 2}, [76] = {.index = 123, .length = 2}, [77] = {.index = 125, .length = 2}, [78] = {.index = 127, .length = 3}, [79] = {.index = 130, .length = 1}, [80] = {.index = 131, .length = 2}, [81] = {.index = 133, .length = 2}, [82] = {.index = 135, .length = 2}, [83] = {.index = 137, .length = 2}, [84] = {.index = 139, .length = 4}, [85] = {.index = 143, .length = 3}, [86] = {.index = 146, .length = 1}, [87] = {.index = 147, .length = 2}, [88] = {.index = 149, .length = 2}, [89] = {.index = 151, .length = 2}, [90] = {.index = 153, .length = 2}, [91] = {.index = 155, .length = 1}, [92] = {.index = 156, .length = 2}, [93] = {.index = 158, .length = 3}, [94] = {.index = 161, .length = 1}, [95] = {.index = 162, .length = 3}, [96] = {.index = 165, .length = 2}, [97] = {.index = 167, .length = 2}, [98] = {.index = 169, .length = 3}, }; static const TSFieldMapEntry ts_field_map_entries[] = { [0] = {field_constructor, 0}, [1] = {field_child, 0}, [2] = {field_child, 0, .inherited = true}, [3] = {field_pattern, 1}, [4] = {field_moduleName, 1}, [5] = {field_moduleDeclaration, 0}, [6] = {field_argPattern, 1}, {field_constructor, 0}, [8] = {field_child, 1}, [9] = {field_patternList, 1}, [10] = {field_part, 1}, [11] = {field_name, 0}, {field_typeExpression, 2}, [13] = {field_part, 0, .inherited = true}, [14] = {field_part, 0}, [15] = {field_unitExpr, 0}, [16] = {field_exposing, 2}, {field_name, 1}, [18] = {field_exposing, 2}, {field_moduleName, 1}, [20] = {field_asClause, 2}, {field_moduleName, 1}, [22] = {field_name, 0}, [23] = {field_body, 2}, {field_functionDeclarationLeft, 0}, [25] = {field_operator, 0, .inherited = true}, [26] = {field_body, 2}, {field_pattern, 0}, [28] = {field_child, 0}, {field_patternAs, 2}, [30] = {field_part, 0}, {field_part, 2}, [32] = {field_child, 0, .inherited = true}, {field_patternAs, 2}, [34] = {field_patternList, 1}, {field_patternList, 2, .inherited = true}, [36] = {field_patternList, 0, .inherited = true}, {field_patternList, 1, .inherited = true}, [38] = {field_part, 1}, {field_part, 2, .inherited = true}, [40] = {field_part, 0, .inherited = true}, {field_part, 1, .inherited = true}, [42] = {field_part, 1, .inherited = true}, [43] = {field_name, 1}, [44] = {field_asClause, 2}, {field_exposing, 3}, {field_moduleName, 1}, [47] = {field_name, 1}, {field_unionVariant, 3}, [49] = {field_name, 1}, {field_typeExpression, 3}, [51] = {field_exposing, 3}, {field_name, 2}, [53] = {field_field, 0}, [54] = {field_exprList, 1}, [55] = {field_part, 0}, {field_part, 1}, [57] = {field_arg, 1}, {field_target, 0}, [59] = {field_target, 0}, [60] = {field_pattern, 1}, {field_pattern, 3}, [62] = {field_fieldType, 1}, [63] = {field_baseRecord, 0}, [64] = {field_name, 0}, {field_part, 1, .inherited = true}, [66] = {field_unionVariant, 0, .inherited = true}, [67] = {field_name, 1}, {field_unionVariant, 3}, {field_unionVariant, 4, .inherited = true}, [70] = {field_name, 1}, {field_typeName, 2}, {field_unionVariant, 4}, [73] = {field_name, 2}, {field_typeExpression, 4}, [75] = {field_expression, 1}, [76] = {field_operator, 1}, [77] = {field_baseRecord, 0, .inherited = true}, {field_field, 1}, [79] = {field_baseRecord, 1, .inherited = true}, {field_field, 1, .inherited = true}, [81] = {field_field, 0}, {field_field, 1, .inherited = true}, [83] = {field_valueDeclaration, 0}, [84] = {field_exprList, 0, .inherited = true}, {field_exprList, 1, .inherited = true}, {field_exprList, 2, .inherited = true}, [87] = {field_content, 1}, [88] = {field_pattern, 1}, {field_pattern, 3}, {field_pattern, 4, .inherited = true}, [91] = {field_pattern, 0, .inherited = true}, {field_pattern, 1, .inherited = true}, [93] = {field_typeExpression, 1}, [94] = {field_typeExpression, 1}, {field_typeExpression, 2, .inherited = true}, [96] = {field_typeExpression, 0, .inherited = true}, {field_typeExpression, 1, .inherited = true}, [98] = {field_fieldType, 1}, {field_fieldType, 2, .inherited = true}, [100] = {field_fieldType, 0, .inherited = true}, {field_fieldType, 1, .inherited = true}, [102] = {field_baseRecord, 1, .inherited = true}, {field_fieldType, 2}, [104] = {field_doubleDot, 2}, [105] = {field_exposing, 5}, {field_name, 2}, [107] = {field_unionVariant, 1}, [108] = {field_unionVariant, 0, .inherited = true}, {field_unionVariant, 1, .inherited = true}, [110] = {field_name, 1}, {field_typeName, 2}, {field_unionVariant, 4}, {field_unionVariant, 5, .inherited = true}, [114] = {field_name, 2}, {field_typeExpression, 5}, {field_typeVariable, 3}, [117] = {field_associativity, 1}, {field_operator, 3, .inherited = true}, {field_precedence, 2}, [120] = {field_expr, 1}, [121] = {field_expr, 1}, {field_expr, 2, .inherited = true}, [123] = {field_expr, 0, .inherited = true}, {field_expr, 1, .inherited = true}, [125] = {field_expression, 2}, {field_name, 0}, [127] = {field_baseRecord, 0, .inherited = true}, {field_field, 1}, {field_field, 2, .inherited = true}, [130] = {field_field, 1}, [131] = {field_field, 0, .inherited = true}, {field_field, 1, .inherited = true}, [133] = {field_exprList, 1}, {field_exprList, 2, .inherited = true}, [135] = {field_exprList, 0, .inherited = true}, {field_exprList, 1, .inherited = true}, [137] = {field_expr, 3}, {field_param, 1}, [139] = {field_exprList, 0, .inherited = true}, {field_exprList, 1, .inherited = true}, {field_exprList, 2, .inherited = true}, {field_exprList, 3, .inherited = true}, [143] = {field_baseRecord, 1, .inherited = true}, {field_fieldType, 2}, {field_fieldType, 3, .inherited = true}, [146] = {field_valueDeclaration, 1, .inherited = true}, [147] = {field_valueDeclaration, 0, .inherited = true}, {field_valueDeclaration, 1, .inherited = true}, [149] = {field_exprList, 1, .inherited = true}, {field_exprList, 2, .inherited = true}, [151] = {field_body, 5}, {field_valueDeclaration, 2, .inherited = true}, [153] = {field_branch, 4}, {field_expr, 1}, [155] = {field_branch, 0, .inherited = true}, [156] = {field_branch, 5}, {field_expr, 2}, [158] = {field_body, 6}, {field_valueDeclaration, 2, .inherited = true}, {field_valueDeclaration, 3, .inherited = true}, [161] = {field_branch, 1}, [162] = {field_branch, 4}, {field_branch, 5, .inherited = true}, {field_expr, 1}, [165] = {field_branch, 0, .inherited = true}, {field_branch, 1, .inherited = true}, [167] = {field_expr, 2}, {field_pattern, 0}, [169] = {field_branch, 5}, {field_branch, 6, .inherited = true}, {field_expr, 2}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = {0}, [4] = { [1] = alias_sym_close_quote, }, [11] = { [2] = alias_sym_close_char, }, [12] = { [2] = alias_sym_close_quote, }, }; static const uint16_t ts_non_terminal_alias_map[] = { 0, }; static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [0] = 0, [1] = 1, [2] = 2, [3] = 3, [4] = 2, [5] = 5, [6] = 5, [7] = 5, [8] = 5, [9] = 5, [10] = 5, [11] = 5, [12] = 5, [13] = 5, [14] = 2, [15] = 3, [16] = 2, [17] = 2, [18] = 3, [19] = 2, [20] = 20, [21] = 21, [22] = 22, [23] = 23, [24] = 24, [25] = 25, [26] = 26, [27] = 27, [28] = 28, [29] = 29, [30] = 30, [31] = 31, [32] = 32, [33] = 33, [34] = 30, [35] = 35, [36] = 29, [37] = 37, [38] = 29, [39] = 29, [40] = 29, [41] = 41, [42] = 42, [43] = 43, [44] = 29, [45] = 45, [46] = 46, [47] = 47, [48] = 48, [49] = 49, [50] = 50, [51] = 51, [52] = 52, [53] = 53, [54] = 54, [55] = 55, [56] = 56, [57] = 49, [58] = 50, [59] = 59, [60] = 60, [61] = 61, [62] = 62, [63] = 63, [64] = 64, [65] = 65, [66] = 66, [67] = 67, [68] = 68, [69] = 69, [70] = 70, [71] = 71, [72] = 72, [73] = 73, [74] = 74, [75] = 75, [76] = 76, [77] = 77, [78] = 78, [79] = 79, [80] = 80, [81] = 81, [82] = 82, [83] = 83, [84] = 84, [85] = 85, [86] = 86, [87] = 87, [88] = 88, [89] = 89, [90] = 90, [91] = 52, [92] = 92, [93] = 93, [94] = 20, [95] = 95, [96] = 21, [97] = 55, [98] = 59, [99] = 99, [100] = 100, [101] = 54, [102] = 56, [103] = 49, [104] = 50, [105] = 54, [106] = 56, [107] = 49, [108] = 50, [109] = 54, [110] = 56, [111] = 49, [112] = 50, [113] = 113, [114] = 114, [115] = 54, [116] = 56, [117] = 49, [118] = 50, [119] = 56, [120] = 54, [121] = 48, [122] = 71, [123] = 48, [124] = 71, [125] = 48, [126] = 71, [127] = 48, [128] = 71, [129] = 48, [130] = 71, [131] = 26, [132] = 25, [133] = 27, [134] = 23, [135] = 24, [136] = 22, [137] = 20, [138] = 138, [139] = 138, [140] = 138, [141] = 138, [142] = 138, [143] = 28, [144] = 138, [145] = 21, [146] = 47, [147] = 41, [148] = 42, [149] = 32, [150] = 24, [151] = 22, [152] = 27, [153] = 25, [154] = 30, [155] = 37, [156] = 43, [157] = 23, [158] = 45, [159] = 31, [160] = 33, [161] = 26, [162] = 46, [163] = 35, [164] = 30, [165] = 53, [166] = 166, [167] = 166, [168] = 75, [169] = 76, [170] = 93, [171] = 77, [172] = 78, [173] = 166, [174] = 79, [175] = 80, [176] = 81, [177] = 82, [178] = 60, [179] = 166, [180] = 83, [181] = 84, [182] = 85, [183] = 61, [184] = 86, [185] = 74, [186] = 87, [187] = 166, [188] = 88, [189] = 72, [190] = 89, [191] = 90, [192] = 52, [193] = 28, [194] = 68, [195] = 70, [196] = 73, [197] = 95, [198] = 63, [199] = 64, [200] = 65, [201] = 66, [202] = 67, [203] = 52, [204] = 92, [205] = 69, [206] = 166, [207] = 31, [208] = 33, [209] = 46, [210] = 210, [211] = 211, [212] = 41, [213] = 37, [214] = 42, [215] = 215, [216] = 216, [217] = 45, [218] = 47, [219] = 32, [220] = 215, [221] = 30, [222] = 30, [223] = 35, [224] = 215, [225] = 43, [226] = 215, [227] = 215, [228] = 215, [229] = 83, [230] = 66, [231] = 73, [232] = 68, [233] = 74, [234] = 75, [235] = 76, [236] = 77, [237] = 78, [238] = 52, [239] = 79, [240] = 80, [241] = 81, [242] = 82, [243] = 90, [244] = 84, [245] = 64, [246] = 86, [247] = 87, [248] = 88, [249] = 89, [250] = 60, [251] = 52, [252] = 92, [253] = 93, [254] = 69, [255] = 61, [256] = 67, [257] = 70, [258] = 72, [259] = 95, [260] = 65, [261] = 53, [262] = 63, [263] = 85, [264] = 264, [265] = 265, [266] = 266, [267] = 267, [268] = 268, [269] = 24, [270] = 20, [271] = 23, [272] = 23, [273] = 24, [274] = 21, [275] = 27, [276] = 22, [277] = 26, [278] = 24, [279] = 23, [280] = 25, [281] = 45, [282] = 46, [283] = 28, [284] = 42, [285] = 46, [286] = 41, [287] = 90, [288] = 47, [289] = 32, [290] = 290, [291] = 291, [292] = 46, [293] = 37, [294] = 294, [295] = 72, [296] = 43, [297] = 31, [298] = 33, [299] = 35, [300] = 79, [301] = 20, [302] = 61, [303] = 92, [304] = 74, [305] = 60, [306] = 95, [307] = 75, [308] = 308, [309] = 76, [310] = 70, [311] = 73, [312] = 63, [313] = 77, [314] = 64, [315] = 68, [316] = 80, [317] = 81, [318] = 65, [319] = 69, [320] = 82, [321] = 66, [322] = 67, [323] = 93, [324] = 308, [325] = 308, [326] = 308, [327] = 308, [328] = 308, [329] = 83, [330] = 84, [331] = 85, [332] = 86, [333] = 87, [334] = 88, [335] = 89, [336] = 336, [337] = 21, [338] = 90, [339] = 78, [340] = 27, [341] = 25, [342] = 22, [343] = 26, [344] = 90, [345] = 28, [346] = 346, [347] = 346, [348] = 346, [349] = 346, [350] = 21, [351] = 351, [352] = 346, [353] = 346, [354] = 20, [355] = 355, [356] = 291, [357] = 294, [358] = 22, [359] = 359, [360] = 360, [361] = 361, [362] = 26, [363] = 25, [364] = 41, [365] = 42, [366] = 45, [367] = 47, [368] = 32, [369] = 37, [370] = 43, [371] = 371, [372] = 33, [373] = 35, [374] = 27, [375] = 375, [376] = 376, [377] = 359, [378] = 378, [379] = 361, [380] = 376, [381] = 378, [382] = 361, [383] = 376, [384] = 378, [385] = 361, [386] = 376, [387] = 378, [388] = 361, [389] = 376, [390] = 378, [391] = 376, [392] = 378, [393] = 361, [394] = 31, [395] = 77, [396] = 93, [397] = 95, [398] = 63, [399] = 64, [400] = 65, [401] = 66, [402] = 67, [403] = 403, [404] = 68, [405] = 69, [406] = 70, [407] = 73, [408] = 74, [409] = 75, [410] = 76, [411] = 92, [412] = 79, [413] = 80, [414] = 81, [415] = 82, [416] = 83, [417] = 84, [418] = 85, [419] = 86, [420] = 87, [421] = 88, [422] = 89, [423] = 60, [424] = 61, [425] = 72, [426] = 28, [427] = 427, [428] = 428, [429] = 78, [430] = 37, [431] = 32, [432] = 432, [433] = 45, [434] = 434, [435] = 434, [436] = 432, [437] = 434, [438] = 432, [439] = 434, [440] = 432, [441] = 434, [442] = 432, [443] = 434, [444] = 432, [445] = 35, [446] = 43, [447] = 42, [448] = 31, [449] = 41, [450] = 33, [451] = 47, [452] = 452, [453] = 72, [454] = 66, [455] = 60, [456] = 73, [457] = 67, [458] = 95, [459] = 74, [460] = 75, [461] = 76, [462] = 452, [463] = 463, [464] = 77, [465] = 69, [466] = 78, [467] = 85, [468] = 63, [469] = 61, [470] = 88, [471] = 80, [472] = 81, [473] = 70, [474] = 65, [475] = 87, [476] = 89, [477] = 92, [478] = 86, [479] = 64, [480] = 93, [481] = 481, [482] = 68, [483] = 84, [484] = 82, [485] = 485, [486] = 83, [487] = 79, [488] = 23, [489] = 24, [490] = 490, [491] = 46, [492] = 90, [493] = 493, [494] = 494, [495] = 63, [496] = 496, [497] = 64, [498] = 498, [499] = 65, [500] = 500, [501] = 501, [502] = 502, [503] = 503, [504] = 504, [505] = 66, [506] = 67, [507] = 507, [508] = 508, [509] = 509, [510] = 510, [511] = 511, [512] = 512, [513] = 513, [514] = 514, [515] = 515, [516] = 516, [517] = 517, [518] = 518, [519] = 519, [520] = 520, [521] = 521, [522] = 522, [523] = 523, [524] = 515, [525] = 525, [526] = 522, [527] = 518, [528] = 523, [529] = 523, [530] = 530, [531] = 531, [532] = 523, [533] = 518, [534] = 534, [535] = 535, [536] = 515, [537] = 537, [538] = 538, [539] = 539, [540] = 540, [541] = 541, [542] = 541, [543] = 522, [544] = 544, [545] = 545, [546] = 546, [547] = 547, [548] = 548, [549] = 547, [550] = 547, [551] = 490, [552] = 552, [553] = 553, [554] = 490, [555] = 490, [556] = 24, [557] = 23, [558] = 558, [559] = 559, [560] = 560, [561] = 561, [562] = 562, [563] = 563, [564] = 564, [565] = 565, [566] = 566, [567] = 567, [568] = 568, [569] = 569, [570] = 570, [571] = 563, [572] = 560, [573] = 548, [574] = 574, [575] = 46, [576] = 567, [577] = 561, [578] = 562, [579] = 568, [580] = 569, [581] = 564, [582] = 558, [583] = 559, [584] = 566, [585] = 570, [586] = 567, [587] = 561, [588] = 568, [589] = 569, [590] = 590, [591] = 90, [592] = 562, [593] = 590, [594] = 558, [595] = 568, [596] = 559, [597] = 566, [598] = 560, [599] = 569, [600] = 570, [601] = 590, [602] = 560, [603] = 563, [604] = 604, [605] = 590, [606] = 606, [607] = 562, [608] = 558, [609] = 590, [610] = 559, [611] = 564, [612] = 566, [613] = 567, [614] = 590, [615] = 561, [616] = 563, [617] = 564, [618] = 618, [619] = 619, [620] = 620, [621] = 621, [622] = 622, [623] = 623, [624] = 622, [625] = 625, [626] = 626, [627] = 620, [628] = 621, [629] = 619, [630] = 622, [631] = 625, [632] = 618, [633] = 620, [634] = 618, [635] = 622, [636] = 625, [637] = 618, [638] = 621, [639] = 621, [640] = 619, [641] = 622, [642] = 625, [643] = 618, [644] = 620, [645] = 619, [646] = 646, [647] = 622, [648] = 625, [649] = 618, [650] = 620, [651] = 651, [652] = 619, [653] = 653, [654] = 625, [655] = 655, [656] = 622, [657] = 619, [658] = 625, [659] = 618, [660] = 620, [661] = 661, [662] = 620, [663] = 663, [664] = 664, [665] = 663, [666] = 666, [667] = 667, [668] = 668, [669] = 669, [670] = 663, [671] = 664, [672] = 664, [673] = 673, [674] = 674, [675] = 646, [676] = 676, [677] = 677, [678] = 678, [679] = 623, [680] = 680, [681] = 663, [682] = 682, [683] = 683, [684] = 684, [685] = 685, [686] = 686, [687] = 663, [688] = 688, [689] = 664, [690] = 664, [691] = 663, [692] = 692, [693] = 653, [694] = 664, [695] = 695, [696] = 696, [697] = 697, [698] = 698, [699] = 623, [700] = 700, [701] = 701, [702] = 676, [703] = 703, [704] = 704, [705] = 705, [706] = 706, [707] = 707, [708] = 708, [709] = 709, [710] = 710, [711] = 711, [712] = 712, [713] = 700, [714] = 706, [715] = 709, [716] = 716, [717] = 717, [718] = 718, [719] = 719, [720] = 720, [721] = 721, [722] = 698, [723] = 723, [724] = 701, [725] = 710, [726] = 726, [727] = 727, [728] = 701, [729] = 729, [730] = 730, [731] = 716, [732] = 711, [733] = 712, [734] = 700, [735] = 706, [736] = 709, [737] = 737, [738] = 716, [739] = 717, [740] = 718, [741] = 719, [742] = 720, [743] = 721, [744] = 698, [745] = 710, [746] = 727, [747] = 701, [748] = 748, [749] = 749, [750] = 701, [751] = 751, [752] = 667, [753] = 692, [754] = 717, [755] = 755, [756] = 711, [757] = 712, [758] = 700, [759] = 706, [760] = 709, [761] = 716, [762] = 717, [763] = 718, [764] = 719, [765] = 720, [766] = 721, [767] = 698, [768] = 721, [769] = 727, [770] = 718, [771] = 771, [772] = 772, [773] = 719, [774] = 701, [775] = 653, [776] = 776, [777] = 777, [778] = 778, [779] = 700, [780] = 706, [781] = 709, [782] = 716, [783] = 720, [784] = 721, [785] = 698, [786] = 727, [787] = 711, [788] = 788, [789] = 712, [790] = 790, [791] = 700, [792] = 706, [793] = 709, [794] = 716, [795] = 720, [796] = 721, [797] = 698, [798] = 727, [799] = 799, [800] = 700, [801] = 700, [802] = 726, [803] = 700, [804] = 697, [805] = 755, [806] = 806, [807] = 646, [808] = 726, [809] = 697, [810] = 755, [811] = 811, [812] = 726, [813] = 697, [814] = 755, [815] = 726, [816] = 816, [817] = 697, [818] = 755, [819] = 720, [820] = 726, [821] = 726, [822] = 822, [823] = 697, [824] = 755, [825] = 727, [826] = 826, [827] = 827, [828] = 710, [829] = 829, [830] = 830, [831] = 831, [832] = 832, [833] = 833, [834] = 834, [835] = 835, [836] = 836, [837] = 837, [838] = 838, [839] = 839, [840] = 840, [841] = 841, [842] = 842, [843] = 843, [844] = 844, [845] = 692, [846] = 846, [847] = 847, [848] = 847, [849] = 847, [850] = 850, [851] = 851, [852] = 852, [853] = 853, [854] = 854, [855] = 835, [856] = 856, [857] = 857, [858] = 858, [859] = 667, [860] = 860, [861] = 835, [862] = 862, [863] = 863, [864] = 864, [865] = 852, [866] = 866, [867] = 867, [868] = 868, [869] = 869, [870] = 870, [871] = 871, [872] = 835, [873] = 847, [874] = 874, [875] = 875, [876] = 864, [877] = 852, [878] = 878, [879] = 835, [880] = 880, [881] = 871, [882] = 882, [883] = 864, [884] = 852, [885] = 871, [886] = 676, [887] = 887, [888] = 871, [889] = 889, [890] = 890, [891] = 864, [892] = 892, [893] = 893, [894] = 871, [895] = 895, [896] = 835, [897] = 864, [898] = 871, [899] = 899, [900] = 900, [901] = 901, [902] = 864, [903] = 903, [904] = 904, [905] = 905, [906] = 906, [907] = 907, [908] = 908, [909] = 847, [910] = 910, [911] = 911, [912] = 847, [913] = 913, [914] = 914, [915] = 915, [916] = 916, [917] = 917, [918] = 918, [919] = 919, [920] = 920, [921] = 921, [922] = 922, [923] = 923, [924] = 906, [925] = 925, [926] = 922, [927] = 927, [928] = 928, [929] = 929, [930] = 918, [931] = 931, [932] = 925, [933] = 933, [934] = 934, [935] = 935, [936] = 936, [937] = 937, [938] = 938, [939] = 939, [940] = 940, [941] = 918, [942] = 918, [943] = 943, [944] = 944, [945] = 945, [946] = 919, [947] = 947, [948] = 933, [949] = 934, [950] = 950, [951] = 922, [952] = 922, [953] = 953, [954] = 925, [955] = 955, [956] = 925, [957] = 937, [958] = 937, [959] = 959, [960] = 960, [961] = 961, [962] = 962, [963] = 925, [964] = 962, [965] = 960, [966] = 921, [967] = 967, [968] = 968, [969] = 925, [970] = 933, [971] = 936, [972] = 918, [973] = 936, [974] = 974, [975] = 933, [976] = 974, [977] = 934, [978] = 974, [979] = 979, [980] = 919, [981] = 934, [982] = 921, [983] = 933, [984] = 934, [985] = 985, [986] = 986, [987] = 987, [988] = 988, [989] = 989, [990] = 990, [991] = 937, [992] = 992, [993] = 937, [994] = 994, [995] = 922, [996] = 996, [997] = 922, [998] = 998, [999] = 999, [1000] = 925, [1001] = 925, [1002] = 921, [1003] = 961, [1004] = 1004, [1005] = 922, [1006] = 1006, [1007] = 844, [1008] = 918, [1009] = 936, [1010] = 921, [1011] = 1011, [1012] = 974, [1013] = 933, [1014] = 934, [1015] = 1015, [1016] = 1016, [1017] = 1017, [1018] = 1006, [1019] = 943, [1020] = 937, [1021] = 1021, [1022] = 1006, [1023] = 943, [1024] = 1024, [1025] = 1006, [1026] = 943, [1027] = 517, [1028] = 1006, [1029] = 943, [1030] = 1006, [1031] = 943, [1032] = 928, [1033] = 919, [1034] = 1016, [1035] = 998, [1036] = 928, [1037] = 1016, [1038] = 998, [1039] = 928, [1040] = 1016, [1041] = 998, [1042] = 928, [1043] = 1016, [1044] = 998, [1045] = 1016, [1046] = 998, [1047] = 928, [1048] = 936, [1049] = 1049, [1050] = 974, [1051] = 936, [1052] = 974, [1053] = 1053, [1054] = 919, [1055] = 831, [1056] = 1056, [1057] = 919, [1058] = 921, [1059] = 1059, }; static const TSCharacterRange sym__upper_case_identifier_without_leading_whitespace_character_set_1[] = { {'A', 'Z'}, {0xc0, 0xd6}, {0xd8, 0xde}, {0x100, 0x100}, {0x102, 0x102}, {0x104, 0x104}, {0x106, 0x106}, {0x108, 0x108}, {0x10a, 0x10a}, {0x10c, 0x10c}, {0x10e, 0x10e}, {0x110, 0x110}, {0x112, 0x112}, {0x114, 0x114}, {0x116, 0x116}, {0x118, 0x118}, {0x11a, 0x11a}, {0x11c, 0x11c}, {0x11e, 0x11e}, {0x120, 0x120}, {0x122, 0x122}, {0x124, 0x124}, {0x126, 0x126}, {0x128, 0x128}, {0x12a, 0x12a}, {0x12c, 0x12c}, {0x12e, 0x12e}, {0x130, 0x130}, {0x132, 0x132}, {0x134, 0x134}, {0x136, 0x136}, {0x139, 0x139}, {0x13b, 0x13b}, {0x13d, 0x13d}, {0x13f, 0x13f}, {0x141, 0x141}, {0x143, 0x143}, {0x145, 0x145}, {0x147, 0x147}, {0x14a, 0x14a}, {0x14c, 0x14c}, {0x14e, 0x14e}, {0x150, 0x150}, {0x152, 0x152}, {0x154, 0x154}, {0x156, 0x156}, {0x158, 0x158}, {0x15a, 0x15a}, {0x15c, 0x15c}, {0x15e, 0x15e}, {0x160, 0x160}, {0x162, 0x162}, {0x164, 0x164}, {0x166, 0x166}, {0x168, 0x168}, {0x16a, 0x16a}, {0x16c, 0x16c}, {0x16e, 0x16e}, {0x170, 0x170}, {0x172, 0x172}, {0x174, 0x174}, {0x176, 0x176}, {0x178, 0x179}, {0x17b, 0x17b}, {0x17d, 0x17d}, {0x181, 0x182}, {0x184, 0x184}, {0x186, 0x187}, {0x189, 0x18b}, {0x18e, 0x191}, {0x193, 0x194}, {0x196, 0x198}, {0x19c, 0x19d}, {0x19f, 0x1a0}, {0x1a2, 0x1a2}, {0x1a4, 0x1a4}, {0x1a6, 0x1a7}, {0x1a9, 0x1a9}, {0x1ac, 0x1ac}, {0x1ae, 0x1af}, {0x1b1, 0x1b3}, {0x1b5, 0x1b5}, {0x1b7, 0x1b8}, {0x1bc, 0x1bc}, {0x1c4, 0x1c4}, {0x1c7, 0x1c7}, {0x1ca, 0x1ca}, {0x1cd, 0x1cd}, {0x1cf, 0x1cf}, {0x1d1, 0x1d1}, {0x1d3, 0x1d3}, {0x1d5, 0x1d5}, {0x1d7, 0x1d7}, {0x1d9, 0x1d9}, {0x1db, 0x1db}, {0x1de, 0x1de}, {0x1e0, 0x1e0}, {0x1e2, 0x1e2}, {0x1e4, 0x1e4}, {0x1e6, 0x1e6}, {0x1e8, 0x1e8}, {0x1ea, 0x1ea}, {0x1ec, 0x1ec}, {0x1ee, 0x1ee}, {0x1f1, 0x1f1}, {0x1f4, 0x1f4}, {0x1f6, 0x1f8}, {0x1fa, 0x1fa}, {0x1fc, 0x1fc}, {0x1fe, 0x1fe}, {0x200, 0x200}, {0x202, 0x202}, {0x204, 0x204}, {0x206, 0x206}, {0x208, 0x208}, {0x20a, 0x20a}, {0x20c, 0x20c}, {0x20e, 0x20e}, {0x210, 0x210}, {0x212, 0x212}, {0x214, 0x214}, {0x216, 0x216}, {0x218, 0x218}, {0x21a, 0x21a}, {0x21c, 0x21c}, {0x21e, 0x21e}, {0x220, 0x220}, {0x222, 0x222}, {0x224, 0x224}, {0x226, 0x226}, {0x228, 0x228}, {0x22a, 0x22a}, {0x22c, 0x22c}, {0x22e, 0x22e}, {0x230, 0x230}, {0x232, 0x232}, {0x23a, 0x23b}, {0x23d, 0x23e}, {0x241, 0x241}, {0x243, 0x246}, {0x248, 0x248}, {0x24a, 0x24a}, {0x24c, 0x24c}, {0x24e, 0x24e}, {0x370, 0x370}, {0x372, 0x372}, {0x376, 0x376}, {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x38f}, {0x391, 0x3a1}, {0x3a3, 0x3ab}, {0x3cf, 0x3cf}, {0x3d2, 0x3d4}, {0x3d8, 0x3d8}, {0x3da, 0x3da}, {0x3dc, 0x3dc}, {0x3de, 0x3de}, {0x3e0, 0x3e0}, {0x3e2, 0x3e2}, {0x3e4, 0x3e4}, {0x3e6, 0x3e6}, {0x3e8, 0x3e8}, {0x3ea, 0x3ea}, {0x3ec, 0x3ec}, {0x3ee, 0x3ee}, {0x3f4, 0x3f4}, {0x3f7, 0x3f7}, {0x3f9, 0x3fa}, {0x3fd, 0x42f}, {0x460, 0x460}, {0x462, 0x462}, {0x464, 0x464}, {0x466, 0x466}, {0x468, 0x468}, {0x46a, 0x46a}, {0x46c, 0x46c}, {0x46e, 0x46e}, {0x470, 0x470}, {0x472, 0x472}, {0x474, 0x474}, {0x476, 0x476}, {0x478, 0x478}, {0x47a, 0x47a}, {0x47c, 0x47c}, {0x47e, 0x47e}, {0x480, 0x480}, {0x48a, 0x48a}, {0x48c, 0x48c}, {0x48e, 0x48e}, {0x490, 0x490}, {0x492, 0x492}, {0x494, 0x494}, {0x496, 0x496}, {0x498, 0x498}, {0x49a, 0x49a}, {0x49c, 0x49c}, {0x49e, 0x49e}, {0x4a0, 0x4a0}, {0x4a2, 0x4a2}, {0x4a4, 0x4a4}, {0x4a6, 0x4a6}, {0x4a8, 0x4a8}, {0x4aa, 0x4aa}, {0x4ac, 0x4ac}, {0x4ae, 0x4ae}, {0x4b0, 0x4b0}, {0x4b2, 0x4b2}, {0x4b4, 0x4b4}, {0x4b6, 0x4b6}, {0x4b8, 0x4b8}, {0x4ba, 0x4ba}, {0x4bc, 0x4bc}, {0x4be, 0x4be}, {0x4c0, 0x4c1}, {0x4c3, 0x4c3}, {0x4c5, 0x4c5}, {0x4c7, 0x4c7}, {0x4c9, 0x4c9}, {0x4cb, 0x4cb}, {0x4cd, 0x4cd}, {0x4d0, 0x4d0}, {0x4d2, 0x4d2}, {0x4d4, 0x4d4}, {0x4d6, 0x4d6}, {0x4d8, 0x4d8}, {0x4da, 0x4da}, {0x4dc, 0x4dc}, {0x4de, 0x4de}, {0x4e0, 0x4e0}, {0x4e2, 0x4e2}, {0x4e4, 0x4e4}, {0x4e6, 0x4e6}, {0x4e8, 0x4e8}, {0x4ea, 0x4ea}, {0x4ec, 0x4ec}, {0x4ee, 0x4ee}, {0x4f0, 0x4f0}, {0x4f2, 0x4f2}, {0x4f4, 0x4f4}, {0x4f6, 0x4f6}, {0x4f8, 0x4f8}, {0x4fa, 0x4fa}, {0x4fc, 0x4fc}, {0x4fe, 0x4fe}, {0x500, 0x500}, {0x502, 0x502}, {0x504, 0x504}, {0x506, 0x506}, {0x508, 0x508}, {0x50a, 0x50a}, {0x50c, 0x50c}, {0x50e, 0x50e}, {0x510, 0x510}, {0x512, 0x512}, {0x514, 0x514}, {0x516, 0x516}, {0x518, 0x518}, {0x51a, 0x51a}, {0x51c, 0x51c}, {0x51e, 0x51e}, {0x520, 0x520}, {0x522, 0x522}, {0x524, 0x524}, {0x526, 0x526}, {0x528, 0x528}, {0x52a, 0x52a}, {0x52c, 0x52c}, {0x52e, 0x52e}, {0x531, 0x556}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x13a0, 0x13f5}, {0x1c89, 0x1c89}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1e00, 0x1e00}, {0x1e02, 0x1e02}, {0x1e04, 0x1e04}, {0x1e06, 0x1e06}, {0x1e08, 0x1e08}, {0x1e0a, 0x1e0a}, {0x1e0c, 0x1e0c}, {0x1e0e, 0x1e0e}, {0x1e10, 0x1e10}, {0x1e12, 0x1e12}, {0x1e14, 0x1e14}, {0x1e16, 0x1e16}, {0x1e18, 0x1e18}, {0x1e1a, 0x1e1a}, {0x1e1c, 0x1e1c}, {0x1e1e, 0x1e1e}, {0x1e20, 0x1e20}, {0x1e22, 0x1e22}, {0x1e24, 0x1e24}, {0x1e26, 0x1e26}, {0x1e28, 0x1e28}, {0x1e2a, 0x1e2a}, {0x1e2c, 0x1e2c}, {0x1e2e, 0x1e2e}, {0x1e30, 0x1e30}, {0x1e32, 0x1e32}, {0x1e34, 0x1e34}, {0x1e36, 0x1e36}, {0x1e38, 0x1e38}, {0x1e3a, 0x1e3a}, {0x1e3c, 0x1e3c}, {0x1e3e, 0x1e3e}, {0x1e40, 0x1e40}, {0x1e42, 0x1e42}, {0x1e44, 0x1e44}, {0x1e46, 0x1e46}, {0x1e48, 0x1e48}, {0x1e4a, 0x1e4a}, {0x1e4c, 0x1e4c}, {0x1e4e, 0x1e4e}, {0x1e50, 0x1e50}, {0x1e52, 0x1e52}, {0x1e54, 0x1e54}, {0x1e56, 0x1e56}, {0x1e58, 0x1e58}, {0x1e5a, 0x1e5a}, {0x1e5c, 0x1e5c}, {0x1e5e, 0x1e5e}, {0x1e60, 0x1e60}, {0x1e62, 0x1e62}, {0x1e64, 0x1e64}, {0x1e66, 0x1e66}, {0x1e68, 0x1e68}, {0x1e6a, 0x1e6a}, {0x1e6c, 0x1e6c}, {0x1e6e, 0x1e6e}, {0x1e70, 0x1e70}, {0x1e72, 0x1e72}, {0x1e74, 0x1e74}, {0x1e76, 0x1e76}, {0x1e78, 0x1e78}, {0x1e7a, 0x1e7a}, {0x1e7c, 0x1e7c}, {0x1e7e, 0x1e7e}, {0x1e80, 0x1e80}, {0x1e82, 0x1e82}, {0x1e84, 0x1e84}, {0x1e86, 0x1e86}, {0x1e88, 0x1e88}, {0x1e8a, 0x1e8a}, {0x1e8c, 0x1e8c}, {0x1e8e, 0x1e8e}, {0x1e90, 0x1e90}, {0x1e92, 0x1e92}, {0x1e94, 0x1e94}, {0x1e9e, 0x1e9e}, {0x1ea0, 0x1ea0}, {0x1ea2, 0x1ea2}, {0x1ea4, 0x1ea4}, {0x1ea6, 0x1ea6}, {0x1ea8, 0x1ea8}, {0x1eaa, 0x1eaa}, {0x1eac, 0x1eac}, {0x1eae, 0x1eae}, {0x1eb0, 0x1eb0}, {0x1eb2, 0x1eb2}, {0x1eb4, 0x1eb4}, {0x1eb6, 0x1eb6}, {0x1eb8, 0x1eb8}, {0x1eba, 0x1eba}, {0x1ebc, 0x1ebc}, {0x1ebe, 0x1ebe}, {0x1ec0, 0x1ec0}, {0x1ec2, 0x1ec2}, {0x1ec4, 0x1ec4}, {0x1ec6, 0x1ec6}, {0x1ec8, 0x1ec8}, {0x1eca, 0x1eca}, {0x1ecc, 0x1ecc}, {0x1ece, 0x1ece}, {0x1ed0, 0x1ed0}, {0x1ed2, 0x1ed2}, {0x1ed4, 0x1ed4}, {0x1ed6, 0x1ed6}, {0x1ed8, 0x1ed8}, {0x1eda, 0x1eda}, {0x1edc, 0x1edc}, {0x1ede, 0x1ede}, {0x1ee0, 0x1ee0}, {0x1ee2, 0x1ee2}, {0x1ee4, 0x1ee4}, {0x1ee6, 0x1ee6}, {0x1ee8, 0x1ee8}, {0x1eea, 0x1eea}, {0x1eec, 0x1eec}, {0x1eee, 0x1eee}, {0x1ef0, 0x1ef0}, {0x1ef2, 0x1ef2}, {0x1ef4, 0x1ef4}, {0x1ef6, 0x1ef6}, {0x1ef8, 0x1ef8}, {0x1efa, 0x1efa}, {0x1efc, 0x1efc}, {0x1efe, 0x1efe}, {0x1f08, 0x1f0f}, {0x1f18, 0x1f1d}, {0x1f28, 0x1f2f}, {0x1f38, 0x1f3f}, {0x1f48, 0x1f4d}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f5f}, {0x1f68, 0x1f6f}, {0x1fb8, 0x1fbb}, {0x1fc8, 0x1fcb}, {0x1fd8, 0x1fdb}, {0x1fe8, 0x1fec}, {0x1ff8, 0x1ffb}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210b, 0x210d}, {0x2110, 0x2112}, {0x2115, 0x2115}, {0x2119, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x212d}, {0x2130, 0x2133}, {0x213e, 0x213f}, {0x2145, 0x2145}, {0x2183, 0x2183}, {0x2c00, 0x2c2f}, {0x2c60, 0x2c60}, {0x2c62, 0x2c64}, {0x2c67, 0x2c67}, {0x2c69, 0x2c69}, {0x2c6b, 0x2c6b}, {0x2c6d, 0x2c70}, {0x2c72, 0x2c72}, {0x2c75, 0x2c75}, {0x2c7e, 0x2c80}, {0x2c82, 0x2c82}, {0x2c84, 0x2c84}, {0x2c86, 0x2c86}, {0x2c88, 0x2c88}, {0x2c8a, 0x2c8a}, {0x2c8c, 0x2c8c}, {0x2c8e, 0x2c8e}, {0x2c90, 0x2c90}, {0x2c92, 0x2c92}, {0x2c94, 0x2c94}, {0x2c96, 0x2c96}, {0x2c98, 0x2c98}, {0x2c9a, 0x2c9a}, {0x2c9c, 0x2c9c}, {0x2c9e, 0x2c9e}, {0x2ca0, 0x2ca0}, {0x2ca2, 0x2ca2}, {0x2ca4, 0x2ca4}, {0x2ca6, 0x2ca6}, {0x2ca8, 0x2ca8}, {0x2caa, 0x2caa}, {0x2cac, 0x2cac}, {0x2cae, 0x2cae}, {0x2cb0, 0x2cb0}, {0x2cb2, 0x2cb2}, {0x2cb4, 0x2cb4}, {0x2cb6, 0x2cb6}, {0x2cb8, 0x2cb8}, {0x2cba, 0x2cba}, {0x2cbc, 0x2cbc}, {0x2cbe, 0x2cbe}, {0x2cc0, 0x2cc0}, {0x2cc2, 0x2cc2}, {0x2cc4, 0x2cc4}, {0x2cc6, 0x2cc6}, {0x2cc8, 0x2cc8}, {0x2cca, 0x2cca}, {0x2ccc, 0x2ccc}, {0x2cce, 0x2cce}, {0x2cd0, 0x2cd0}, {0x2cd2, 0x2cd2}, {0x2cd4, 0x2cd4}, {0x2cd6, 0x2cd6}, {0x2cd8, 0x2cd8}, {0x2cda, 0x2cda}, {0x2cdc, 0x2cdc}, {0x2cde, 0x2cde}, {0x2ce0, 0x2ce0}, {0x2ce2, 0x2ce2}, {0x2ceb, 0x2ceb}, {0x2ced, 0x2ced}, {0x2cf2, 0x2cf2}, {0xa640, 0xa640}, {0xa642, 0xa642}, {0xa644, 0xa644}, {0xa646, 0xa646}, {0xa648, 0xa648}, {0xa64a, 0xa64a}, {0xa64c, 0xa64c}, {0xa64e, 0xa64e}, {0xa650, 0xa650}, {0xa652, 0xa652}, {0xa654, 0xa654}, {0xa656, 0xa656}, {0xa658, 0xa658}, {0xa65a, 0xa65a}, {0xa65c, 0xa65c}, {0xa65e, 0xa65e}, {0xa660, 0xa660}, {0xa662, 0xa662}, {0xa664, 0xa664}, {0xa666, 0xa666}, {0xa668, 0xa668}, {0xa66a, 0xa66a}, {0xa66c, 0xa66c}, {0xa680, 0xa680}, {0xa682, 0xa682}, {0xa684, 0xa684}, {0xa686, 0xa686}, {0xa688, 0xa688}, {0xa68a, 0xa68a}, {0xa68c, 0xa68c}, {0xa68e, 0xa68e}, {0xa690, 0xa690}, {0xa692, 0xa692}, {0xa694, 0xa694}, {0xa696, 0xa696}, {0xa698, 0xa698}, {0xa69a, 0xa69a}, {0xa722, 0xa722}, {0xa724, 0xa724}, {0xa726, 0xa726}, {0xa728, 0xa728}, {0xa72a, 0xa72a}, {0xa72c, 0xa72c}, {0xa72e, 0xa72e}, {0xa732, 0xa732}, {0xa734, 0xa734}, {0xa736, 0xa736}, {0xa738, 0xa738}, {0xa73a, 0xa73a}, {0xa73c, 0xa73c}, {0xa73e, 0xa73e}, {0xa740, 0xa740}, {0xa742, 0xa742}, {0xa744, 0xa744}, {0xa746, 0xa746}, {0xa748, 0xa748}, {0xa74a, 0xa74a}, {0xa74c, 0xa74c}, {0xa74e, 0xa74e}, {0xa750, 0xa750}, {0xa752, 0xa752}, {0xa754, 0xa754}, {0xa756, 0xa756}, {0xa758, 0xa758}, {0xa75a, 0xa75a}, {0xa75c, 0xa75c}, {0xa75e, 0xa75e}, {0xa760, 0xa760}, {0xa762, 0xa762}, {0xa764, 0xa764}, {0xa766, 0xa766}, {0xa768, 0xa768}, {0xa76a, 0xa76a}, {0xa76c, 0xa76c}, {0xa76e, 0xa76e}, {0xa779, 0xa779}, {0xa77b, 0xa77b}, {0xa77d, 0xa77e}, {0xa780, 0xa780}, {0xa782, 0xa782}, {0xa784, 0xa784}, {0xa786, 0xa786}, {0xa78b, 0xa78b}, {0xa78d, 0xa78d}, {0xa790, 0xa790}, {0xa792, 0xa792}, {0xa796, 0xa796}, {0xa798, 0xa798}, {0xa79a, 0xa79a}, {0xa79c, 0xa79c}, {0xa79e, 0xa79e}, {0xa7a0, 0xa7a0}, {0xa7a2, 0xa7a2}, {0xa7a4, 0xa7a4}, {0xa7a6, 0xa7a6}, {0xa7a8, 0xa7a8}, {0xa7aa, 0xa7ae}, {0xa7b0, 0xa7b4}, {0xa7b6, 0xa7b6}, {0xa7b8, 0xa7b8}, {0xa7ba, 0xa7ba}, {0xa7bc, 0xa7bc}, {0xa7be, 0xa7be}, {0xa7c0, 0xa7c0}, {0xa7c2, 0xa7c2}, {0xa7c4, 0xa7c7}, {0xa7c9, 0xa7c9}, {0xa7cb, 0xa7cc}, {0xa7d0, 0xa7d0}, {0xa7d6, 0xa7d6}, {0xa7d8, 0xa7d8}, {0xa7da, 0xa7da}, {0xa7dc, 0xa7dc}, {0xa7f5, 0xa7f5}, {0xff21, 0xff3a}, {0x10400, 0x10427}, {0x104b0, 0x104d3}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10c80, 0x10cb2}, {0x10d50, 0x10d65}, {0x118a0, 0x118bf}, {0x16e40, 0x16e5f}, {0x1d400, 0x1d419}, {0x1d434, 0x1d44d}, {0x1d468, 0x1d481}, {0x1d49c, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b5}, {0x1d4d0, 0x1d4e9}, {0x1d504, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d538, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d56c, 0x1d585}, {0x1d5a0, 0x1d5b9}, {0x1d5d4, 0x1d5ed}, {0x1d608, 0x1d621}, {0x1d63c, 0x1d655}, {0x1d670, 0x1d689}, {0x1d6a8, 0x1d6c0}, {0x1d6e2, 0x1d6fa}, {0x1d71c, 0x1d734}, {0x1d756, 0x1d76e}, {0x1d790, 0x1d7a8}, {0x1d7ca, 0x1d7ca}, {0x1e900, 0x1e921}, }; static const TSCharacterRange sym__upper_case_identifier_without_leading_whitespace_character_set_2[] = { {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37a, 0x37d}, {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5}, {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828}, {0x840, 0x858}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x8a0, 0x8c9}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc61}, {0xc80, 0xc80}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcdd, 0xcde}, {0xce0, 0xce1}, {0xcf1, 0xcf2}, {0xd04, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61}, {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe33}, {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb3}, {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c}, {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16f1, 0x16f8}, {0x1700, 0x1711}, {0x171f, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x1884}, {0x1887, 0x18a8}, {0x18aa, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4c}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, {0x1c5a, 0x1c7d}, {0x1c80, 0x1c8a}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa}, {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2119, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x212d}, {0x212f, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2183, 0x2184}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2e2f, 0x2e2f}, {0x3005, 0x3006}, {0x3031, 0x3035}, {0x303b, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, {0xa67f, 0xa69d}, {0xa6a0, 0xa6e5}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7cd}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7dc}, {0xa7f2, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1}, {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x10340}, {0x10342, 0x10349}, {0x10350, 0x10375}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x105c0, 0x105f3}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10d4a, 0x10d65}, {0x10d6f, 0x10d85}, {0x10e80, 0x10ea9}, {0x10eb0, 0x10eb1}, {0x10ec2, 0x10ec4}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x1123f, 0x11240}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11380, 0x11389}, {0x1138b, 0x1138b}, {0x1138e, 0x1138e}, {0x11390, 0x113b5}, {0x113b7, 0x113b7}, {0x113d1, 0x113d1}, {0x113d3, 0x113d3}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f}, {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11bc0, 0x11be0}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11f02, 0x11f02}, {0x11f04, 0x11f10}, {0x11f12, 0x11f33}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, {0x13441, 0x13446}, {0x13460, 0x143fa}, {0x14400, 0x14646}, {0x16100, 0x1611d}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16d40, 0x16d6c}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18cff, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e030, 0x1e06d}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad}, {0x1e2c0, 0x1e2eb}, {0x1e4d0, 0x1e4eb}, {0x1e5d0, 0x1e5ed}, {0x1e5f0, 0x1e5f0}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, }; static const TSCharacterRange sym__lower_case_identifier_without_leading_whitespace_character_set_1[] = { {'a', 'z'}, {0xb5, 0xb5}, {0xdf, 0xf6}, {0xf8, 0xff}, {0x101, 0x101}, {0x103, 0x103}, {0x105, 0x105}, {0x107, 0x107}, {0x109, 0x109}, {0x10b, 0x10b}, {0x10d, 0x10d}, {0x10f, 0x10f}, {0x111, 0x111}, {0x113, 0x113}, {0x115, 0x115}, {0x117, 0x117}, {0x119, 0x119}, {0x11b, 0x11b}, {0x11d, 0x11d}, {0x11f, 0x11f}, {0x121, 0x121}, {0x123, 0x123}, {0x125, 0x125}, {0x127, 0x127}, {0x129, 0x129}, {0x12b, 0x12b}, {0x12d, 0x12d}, {0x12f, 0x12f}, {0x131, 0x131}, {0x133, 0x133}, {0x135, 0x135}, {0x137, 0x138}, {0x13a, 0x13a}, {0x13c, 0x13c}, {0x13e, 0x13e}, {0x140, 0x140}, {0x142, 0x142}, {0x144, 0x144}, {0x146, 0x146}, {0x148, 0x149}, {0x14b, 0x14b}, {0x14d, 0x14d}, {0x14f, 0x14f}, {0x151, 0x151}, {0x153, 0x153}, {0x155, 0x155}, {0x157, 0x157}, {0x159, 0x159}, {0x15b, 0x15b}, {0x15d, 0x15d}, {0x15f, 0x15f}, {0x161, 0x161}, {0x163, 0x163}, {0x165, 0x165}, {0x167, 0x167}, {0x169, 0x169}, {0x16b, 0x16b}, {0x16d, 0x16d}, {0x16f, 0x16f}, {0x171, 0x171}, {0x173, 0x173}, {0x175, 0x175}, {0x177, 0x177}, {0x17a, 0x17a}, {0x17c, 0x17c}, {0x17e, 0x180}, {0x183, 0x183}, {0x185, 0x185}, {0x188, 0x188}, {0x18c, 0x18d}, {0x192, 0x192}, {0x195, 0x195}, {0x199, 0x19b}, {0x19e, 0x19e}, {0x1a1, 0x1a1}, {0x1a3, 0x1a3}, {0x1a5, 0x1a5}, {0x1a8, 0x1a8}, {0x1aa, 0x1ab}, {0x1ad, 0x1ad}, {0x1b0, 0x1b0}, {0x1b4, 0x1b4}, {0x1b6, 0x1b6}, {0x1b9, 0x1ba}, {0x1bd, 0x1bf}, {0x1c6, 0x1c6}, {0x1c9, 0x1c9}, {0x1cc, 0x1cc}, {0x1ce, 0x1ce}, {0x1d0, 0x1d0}, {0x1d2, 0x1d2}, {0x1d4, 0x1d4}, {0x1d6, 0x1d6}, {0x1d8, 0x1d8}, {0x1da, 0x1da}, {0x1dc, 0x1dd}, {0x1df, 0x1df}, {0x1e1, 0x1e1}, {0x1e3, 0x1e3}, {0x1e5, 0x1e5}, {0x1e7, 0x1e7}, {0x1e9, 0x1e9}, {0x1eb, 0x1eb}, {0x1ed, 0x1ed}, {0x1ef, 0x1f0}, {0x1f3, 0x1f3}, {0x1f5, 0x1f5}, {0x1f9, 0x1f9}, {0x1fb, 0x1fb}, {0x1fd, 0x1fd}, {0x1ff, 0x1ff}, {0x201, 0x201}, {0x203, 0x203}, {0x205, 0x205}, {0x207, 0x207}, {0x209, 0x209}, {0x20b, 0x20b}, {0x20d, 0x20d}, {0x20f, 0x20f}, {0x211, 0x211}, {0x213, 0x213}, {0x215, 0x215}, {0x217, 0x217}, {0x219, 0x219}, {0x21b, 0x21b}, {0x21d, 0x21d}, {0x21f, 0x21f}, {0x221, 0x221}, {0x223, 0x223}, {0x225, 0x225}, {0x227, 0x227}, {0x229, 0x229}, {0x22b, 0x22b}, {0x22d, 0x22d}, {0x22f, 0x22f}, {0x231, 0x231}, {0x233, 0x239}, {0x23c, 0x23c}, {0x23f, 0x240}, {0x242, 0x242}, {0x247, 0x247}, {0x249, 0x249}, {0x24b, 0x24b}, {0x24d, 0x24d}, {0x24f, 0x293}, {0x295, 0x2af}, {0x371, 0x371}, {0x373, 0x373}, {0x377, 0x377}, {0x37b, 0x37d}, {0x390, 0x390}, {0x3ac, 0x3ce}, {0x3d0, 0x3d1}, {0x3d5, 0x3d7}, {0x3d9, 0x3d9}, {0x3db, 0x3db}, {0x3dd, 0x3dd}, {0x3df, 0x3df}, {0x3e1, 0x3e1}, {0x3e3, 0x3e3}, {0x3e5, 0x3e5}, {0x3e7, 0x3e7}, {0x3e9, 0x3e9}, {0x3eb, 0x3eb}, {0x3ed, 0x3ed}, {0x3ef, 0x3f3}, {0x3f5, 0x3f5}, {0x3f8, 0x3f8}, {0x3fb, 0x3fc}, {0x430, 0x45f}, {0x461, 0x461}, {0x463, 0x463}, {0x465, 0x465}, {0x467, 0x467}, {0x469, 0x469}, {0x46b, 0x46b}, {0x46d, 0x46d}, {0x46f, 0x46f}, {0x471, 0x471}, {0x473, 0x473}, {0x475, 0x475}, {0x477, 0x477}, {0x479, 0x479}, {0x47b, 0x47b}, {0x47d, 0x47d}, {0x47f, 0x47f}, {0x481, 0x481}, {0x48b, 0x48b}, {0x48d, 0x48d}, {0x48f, 0x48f}, {0x491, 0x491}, {0x493, 0x493}, {0x495, 0x495}, {0x497, 0x497}, {0x499, 0x499}, {0x49b, 0x49b}, {0x49d, 0x49d}, {0x49f, 0x49f}, {0x4a1, 0x4a1}, {0x4a3, 0x4a3}, {0x4a5, 0x4a5}, {0x4a7, 0x4a7}, {0x4a9, 0x4a9}, {0x4ab, 0x4ab}, {0x4ad, 0x4ad}, {0x4af, 0x4af}, {0x4b1, 0x4b1}, {0x4b3, 0x4b3}, {0x4b5, 0x4b5}, {0x4b7, 0x4b7}, {0x4b9, 0x4b9}, {0x4bb, 0x4bb}, {0x4bd, 0x4bd}, {0x4bf, 0x4bf}, {0x4c2, 0x4c2}, {0x4c4, 0x4c4}, {0x4c6, 0x4c6}, {0x4c8, 0x4c8}, {0x4ca, 0x4ca}, {0x4cc, 0x4cc}, {0x4ce, 0x4cf}, {0x4d1, 0x4d1}, {0x4d3, 0x4d3}, {0x4d5, 0x4d5}, {0x4d7, 0x4d7}, {0x4d9, 0x4d9}, {0x4db, 0x4db}, {0x4dd, 0x4dd}, {0x4df, 0x4df}, {0x4e1, 0x4e1}, {0x4e3, 0x4e3}, {0x4e5, 0x4e5}, {0x4e7, 0x4e7}, {0x4e9, 0x4e9}, {0x4eb, 0x4eb}, {0x4ed, 0x4ed}, {0x4ef, 0x4ef}, {0x4f1, 0x4f1}, {0x4f3, 0x4f3}, {0x4f5, 0x4f5}, {0x4f7, 0x4f7}, {0x4f9, 0x4f9}, {0x4fb, 0x4fb}, {0x4fd, 0x4fd}, {0x4ff, 0x4ff}, {0x501, 0x501}, {0x503, 0x503}, {0x505, 0x505}, {0x507, 0x507}, {0x509, 0x509}, {0x50b, 0x50b}, {0x50d, 0x50d}, {0x50f, 0x50f}, {0x511, 0x511}, {0x513, 0x513}, {0x515, 0x515}, {0x517, 0x517}, {0x519, 0x519}, {0x51b, 0x51b}, {0x51d, 0x51d}, {0x51f, 0x51f}, {0x521, 0x521}, {0x523, 0x523}, {0x525, 0x525}, {0x527, 0x527}, {0x529, 0x529}, {0x52b, 0x52b}, {0x52d, 0x52d}, {0x52f, 0x52f}, {0x560, 0x588}, {0x10d0, 0x10fa}, {0x10fd, 0x10ff}, {0x13f8, 0x13fd}, {0x1c80, 0x1c88}, {0x1c8a, 0x1c8a}, {0x1d00, 0x1d2b}, {0x1d6b, 0x1d77}, {0x1d79, 0x1d9a}, {0x1e01, 0x1e01}, {0x1e03, 0x1e03}, {0x1e05, 0x1e05}, {0x1e07, 0x1e07}, {0x1e09, 0x1e09}, {0x1e0b, 0x1e0b}, {0x1e0d, 0x1e0d}, {0x1e0f, 0x1e0f}, {0x1e11, 0x1e11}, {0x1e13, 0x1e13}, {0x1e15, 0x1e15}, {0x1e17, 0x1e17}, {0x1e19, 0x1e19}, {0x1e1b, 0x1e1b}, {0x1e1d, 0x1e1d}, {0x1e1f, 0x1e1f}, {0x1e21, 0x1e21}, {0x1e23, 0x1e23}, {0x1e25, 0x1e25}, {0x1e27, 0x1e27}, {0x1e29, 0x1e29}, {0x1e2b, 0x1e2b}, {0x1e2d, 0x1e2d}, {0x1e2f, 0x1e2f}, {0x1e31, 0x1e31}, {0x1e33, 0x1e33}, {0x1e35, 0x1e35}, {0x1e37, 0x1e37}, {0x1e39, 0x1e39}, {0x1e3b, 0x1e3b}, {0x1e3d, 0x1e3d}, {0x1e3f, 0x1e3f}, {0x1e41, 0x1e41}, {0x1e43, 0x1e43}, {0x1e45, 0x1e45}, {0x1e47, 0x1e47}, {0x1e49, 0x1e49}, {0x1e4b, 0x1e4b}, {0x1e4d, 0x1e4d}, {0x1e4f, 0x1e4f}, {0x1e51, 0x1e51}, {0x1e53, 0x1e53}, {0x1e55, 0x1e55}, {0x1e57, 0x1e57}, {0x1e59, 0x1e59}, {0x1e5b, 0x1e5b}, {0x1e5d, 0x1e5d}, {0x1e5f, 0x1e5f}, {0x1e61, 0x1e61}, {0x1e63, 0x1e63}, {0x1e65, 0x1e65}, {0x1e67, 0x1e67}, {0x1e69, 0x1e69}, {0x1e6b, 0x1e6b}, {0x1e6d, 0x1e6d}, {0x1e6f, 0x1e6f}, {0x1e71, 0x1e71}, {0x1e73, 0x1e73}, {0x1e75, 0x1e75}, {0x1e77, 0x1e77}, {0x1e79, 0x1e79}, {0x1e7b, 0x1e7b}, {0x1e7d, 0x1e7d}, {0x1e7f, 0x1e7f}, {0x1e81, 0x1e81}, {0x1e83, 0x1e83}, {0x1e85, 0x1e85}, {0x1e87, 0x1e87}, {0x1e89, 0x1e89}, {0x1e8b, 0x1e8b}, {0x1e8d, 0x1e8d}, {0x1e8f, 0x1e8f}, {0x1e91, 0x1e91}, {0x1e93, 0x1e93}, {0x1e95, 0x1e9d}, {0x1e9f, 0x1e9f}, {0x1ea1, 0x1ea1}, {0x1ea3, 0x1ea3}, {0x1ea5, 0x1ea5}, {0x1ea7, 0x1ea7}, {0x1ea9, 0x1ea9}, {0x1eab, 0x1eab}, {0x1ead, 0x1ead}, {0x1eaf, 0x1eaf}, {0x1eb1, 0x1eb1}, {0x1eb3, 0x1eb3}, {0x1eb5, 0x1eb5}, {0x1eb7, 0x1eb7}, {0x1eb9, 0x1eb9}, {0x1ebb, 0x1ebb}, {0x1ebd, 0x1ebd}, {0x1ebf, 0x1ebf}, {0x1ec1, 0x1ec1}, {0x1ec3, 0x1ec3}, {0x1ec5, 0x1ec5}, {0x1ec7, 0x1ec7}, {0x1ec9, 0x1ec9}, {0x1ecb, 0x1ecb}, {0x1ecd, 0x1ecd}, {0x1ecf, 0x1ecf}, {0x1ed1, 0x1ed1}, {0x1ed3, 0x1ed3}, {0x1ed5, 0x1ed5}, {0x1ed7, 0x1ed7}, {0x1ed9, 0x1ed9}, {0x1edb, 0x1edb}, {0x1edd, 0x1edd}, {0x1edf, 0x1edf}, {0x1ee1, 0x1ee1}, {0x1ee3, 0x1ee3}, {0x1ee5, 0x1ee5}, {0x1ee7, 0x1ee7}, {0x1ee9, 0x1ee9}, {0x1eeb, 0x1eeb}, {0x1eed, 0x1eed}, {0x1eef, 0x1eef}, {0x1ef1, 0x1ef1}, {0x1ef3, 0x1ef3}, {0x1ef5, 0x1ef5}, {0x1ef7, 0x1ef7}, {0x1ef9, 0x1ef9}, {0x1efb, 0x1efb}, {0x1efd, 0x1efd}, {0x1eff, 0x1f07}, {0x1f10, 0x1f15}, {0x1f20, 0x1f27}, {0x1f30, 0x1f37}, {0x1f40, 0x1f45}, {0x1f50, 0x1f57}, {0x1f60, 0x1f67}, {0x1f70, 0x1f7d}, {0x1f80, 0x1f87}, {0x1f90, 0x1f97}, {0x1fa0, 0x1fa7}, {0x1fb0, 0x1fb4}, {0x1fb6, 0x1fb7}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fc7}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fd7}, {0x1fe0, 0x1fe7}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ff7}, {0x210a, 0x210a}, {0x210e, 0x210f}, {0x2113, 0x2113}, {0x212f, 0x212f}, {0x2134, 0x2134}, {0x2139, 0x2139}, {0x213c, 0x213d}, {0x2146, 0x2149}, {0x214e, 0x214e}, {0x2184, 0x2184}, {0x2c30, 0x2c5f}, {0x2c61, 0x2c61}, {0x2c65, 0x2c66}, {0x2c68, 0x2c68}, {0x2c6a, 0x2c6a}, {0x2c6c, 0x2c6c}, {0x2c71, 0x2c71}, {0x2c73, 0x2c74}, {0x2c76, 0x2c7b}, {0x2c81, 0x2c81}, {0x2c83, 0x2c83}, {0x2c85, 0x2c85}, {0x2c87, 0x2c87}, {0x2c89, 0x2c89}, {0x2c8b, 0x2c8b}, {0x2c8d, 0x2c8d}, {0x2c8f, 0x2c8f}, {0x2c91, 0x2c91}, {0x2c93, 0x2c93}, {0x2c95, 0x2c95}, {0x2c97, 0x2c97}, {0x2c99, 0x2c99}, {0x2c9b, 0x2c9b}, {0x2c9d, 0x2c9d}, {0x2c9f, 0x2c9f}, {0x2ca1, 0x2ca1}, {0x2ca3, 0x2ca3}, {0x2ca5, 0x2ca5}, {0x2ca7, 0x2ca7}, {0x2ca9, 0x2ca9}, {0x2cab, 0x2cab}, {0x2cad, 0x2cad}, {0x2caf, 0x2caf}, {0x2cb1, 0x2cb1}, {0x2cb3, 0x2cb3}, {0x2cb5, 0x2cb5}, {0x2cb7, 0x2cb7}, {0x2cb9, 0x2cb9}, {0x2cbb, 0x2cbb}, {0x2cbd, 0x2cbd}, {0x2cbf, 0x2cbf}, {0x2cc1, 0x2cc1}, {0x2cc3, 0x2cc3}, {0x2cc5, 0x2cc5}, {0x2cc7, 0x2cc7}, {0x2cc9, 0x2cc9}, {0x2ccb, 0x2ccb}, {0x2ccd, 0x2ccd}, {0x2ccf, 0x2ccf}, {0x2cd1, 0x2cd1}, {0x2cd3, 0x2cd3}, {0x2cd5, 0x2cd5}, {0x2cd7, 0x2cd7}, {0x2cd9, 0x2cd9}, {0x2cdb, 0x2cdb}, {0x2cdd, 0x2cdd}, {0x2cdf, 0x2cdf}, {0x2ce1, 0x2ce1}, {0x2ce3, 0x2ce4}, {0x2cec, 0x2cec}, {0x2cee, 0x2cee}, {0x2cf3, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0xa641, 0xa641}, {0xa643, 0xa643}, {0xa645, 0xa645}, {0xa647, 0xa647}, {0xa649, 0xa649}, {0xa64b, 0xa64b}, {0xa64d, 0xa64d}, {0xa64f, 0xa64f}, {0xa651, 0xa651}, {0xa653, 0xa653}, {0xa655, 0xa655}, {0xa657, 0xa657}, {0xa659, 0xa659}, {0xa65b, 0xa65b}, {0xa65d, 0xa65d}, {0xa65f, 0xa65f}, {0xa661, 0xa661}, {0xa663, 0xa663}, {0xa665, 0xa665}, {0xa667, 0xa667}, {0xa669, 0xa669}, {0xa66b, 0xa66b}, {0xa66d, 0xa66d}, {0xa681, 0xa681}, {0xa683, 0xa683}, {0xa685, 0xa685}, {0xa687, 0xa687}, {0xa689, 0xa689}, {0xa68b, 0xa68b}, {0xa68d, 0xa68d}, {0xa68f, 0xa68f}, {0xa691, 0xa691}, {0xa693, 0xa693}, {0xa695, 0xa695}, {0xa697, 0xa697}, {0xa699, 0xa699}, {0xa69b, 0xa69b}, {0xa723, 0xa723}, {0xa725, 0xa725}, {0xa727, 0xa727}, {0xa729, 0xa729}, {0xa72b, 0xa72b}, {0xa72d, 0xa72d}, {0xa72f, 0xa731}, {0xa733, 0xa733}, {0xa735, 0xa735}, {0xa737, 0xa737}, {0xa739, 0xa739}, {0xa73b, 0xa73b}, {0xa73d, 0xa73d}, {0xa73f, 0xa73f}, {0xa741, 0xa741}, {0xa743, 0xa743}, {0xa745, 0xa745}, {0xa747, 0xa747}, {0xa749, 0xa749}, {0xa74b, 0xa74b}, {0xa74d, 0xa74d}, {0xa74f, 0xa74f}, {0xa751, 0xa751}, {0xa753, 0xa753}, {0xa755, 0xa755}, {0xa757, 0xa757}, {0xa759, 0xa759}, {0xa75b, 0xa75b}, {0xa75d, 0xa75d}, {0xa75f, 0xa75f}, {0xa761, 0xa761}, {0xa763, 0xa763}, {0xa765, 0xa765}, {0xa767, 0xa767}, {0xa769, 0xa769}, {0xa76b, 0xa76b}, {0xa76d, 0xa76d}, {0xa76f, 0xa76f}, {0xa771, 0xa778}, {0xa77a, 0xa77a}, {0xa77c, 0xa77c}, {0xa77f, 0xa77f}, {0xa781, 0xa781}, {0xa783, 0xa783}, {0xa785, 0xa785}, {0xa787, 0xa787}, {0xa78c, 0xa78c}, {0xa78e, 0xa78e}, {0xa791, 0xa791}, {0xa793, 0xa795}, {0xa797, 0xa797}, {0xa799, 0xa799}, {0xa79b, 0xa79b}, {0xa79d, 0xa79d}, {0xa79f, 0xa79f}, {0xa7a1, 0xa7a1}, {0xa7a3, 0xa7a3}, {0xa7a5, 0xa7a5}, {0xa7a7, 0xa7a7}, {0xa7a9, 0xa7a9}, {0xa7af, 0xa7af}, {0xa7b5, 0xa7b5}, {0xa7b7, 0xa7b7}, {0xa7b9, 0xa7b9}, {0xa7bb, 0xa7bb}, {0xa7bd, 0xa7bd}, {0xa7bf, 0xa7bf}, {0xa7c1, 0xa7c1}, {0xa7c3, 0xa7c3}, {0xa7c8, 0xa7c8}, {0xa7ca, 0xa7ca}, {0xa7cd, 0xa7cd}, {0xa7d1, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d5}, {0xa7d7, 0xa7d7}, {0xa7d9, 0xa7d9}, {0xa7db, 0xa7db}, {0xa7f6, 0xa7f6}, {0xa7fa, 0xa7fa}, {0xab30, 0xab5a}, {0xab60, 0xab68}, {0xab70, 0xabbf}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xff41, 0xff5a}, {0x10428, 0x1044f}, {0x104d8, 0x104fb}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x10cc0, 0x10cf2}, {0x10d70, 0x10d85}, {0x118c0, 0x118df}, {0x16e60, 0x16e7f}, {0x1d41a, 0x1d433}, {0x1d44e, 0x1d454}, {0x1d456, 0x1d467}, {0x1d482, 0x1d49b}, {0x1d4b6, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d4cf}, {0x1d4ea, 0x1d503}, {0x1d51e, 0x1d537}, {0x1d552, 0x1d56b}, {0x1d586, 0x1d59f}, {0x1d5ba, 0x1d5d3}, {0x1d5ee, 0x1d607}, {0x1d622, 0x1d63b}, {0x1d656, 0x1d66f}, {0x1d68a, 0x1d6a5}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6e1}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d71b}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d755}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d78f}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9}, {0x1d7cb, 0x1d7cb}, {0x1df00, 0x1df09}, {0x1df0b, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e922, 0x1e943}, }; static const TSCharacterRange sym_upper_case_identifier_character_set_1[] = { {'A', 'Z'}, {0xc0, 0xd6}, {0xd8, 0xde}, {0x100, 0x100}, {0x102, 0x102}, {0x104, 0x104}, {0x106, 0x106}, {0x108, 0x108}, {0x10a, 0x10a}, {0x10c, 0x10c}, {0x10e, 0x10e}, {0x110, 0x110}, {0x112, 0x112}, {0x114, 0x114}, {0x116, 0x116}, {0x118, 0x118}, {0x11a, 0x11a}, {0x11c, 0x11c}, {0x11e, 0x11e}, {0x120, 0x120}, {0x122, 0x122}, {0x124, 0x124}, {0x126, 0x126}, {0x128, 0x128}, {0x12a, 0x12a}, {0x12c, 0x12c}, {0x12e, 0x12e}, {0x130, 0x130}, {0x132, 0x132}, {0x134, 0x134}, {0x136, 0x136}, {0x139, 0x139}, {0x13b, 0x13b}, {0x13d, 0x13d}, {0x13f, 0x13f}, {0x141, 0x141}, {0x143, 0x143}, {0x145, 0x145}, {0x147, 0x147}, {0x14a, 0x14a}, {0x14c, 0x14c}, {0x14e, 0x14e}, {0x150, 0x150}, {0x152, 0x152}, {0x154, 0x154}, {0x156, 0x156}, {0x158, 0x158}, {0x15a, 0x15a}, {0x15c, 0x15c}, {0x15e, 0x15e}, {0x160, 0x160}, {0x162, 0x162}, {0x164, 0x164}, {0x166, 0x166}, {0x168, 0x168}, {0x16a, 0x16a}, {0x16c, 0x16c}, {0x16e, 0x16e}, {0x170, 0x170}, {0x172, 0x172}, {0x174, 0x174}, {0x176, 0x176}, {0x178, 0x179}, {0x17b, 0x17b}, {0x17d, 0x17d}, {0x181, 0x182}, {0x184, 0x184}, {0x186, 0x187}, {0x189, 0x18b}, {0x18e, 0x191}, {0x193, 0x194}, {0x196, 0x198}, {0x19c, 0x19d}, {0x19f, 0x1a0}, {0x1a2, 0x1a2}, {0x1a4, 0x1a4}, {0x1a6, 0x1a7}, {0x1a9, 0x1a9}, {0x1ac, 0x1ac}, {0x1ae, 0x1af}, {0x1b1, 0x1b3}, {0x1b5, 0x1b5}, {0x1b7, 0x1b8}, {0x1bc, 0x1bc}, {0x1c4, 0x1c4}, {0x1c7, 0x1c7}, {0x1ca, 0x1ca}, {0x1cd, 0x1cd}, {0x1cf, 0x1cf}, {0x1d1, 0x1d1}, {0x1d3, 0x1d3}, {0x1d5, 0x1d5}, {0x1d7, 0x1d7}, {0x1d9, 0x1d9}, {0x1db, 0x1db}, {0x1de, 0x1de}, {0x1e0, 0x1e0}, {0x1e2, 0x1e2}, {0x1e4, 0x1e4}, {0x1e6, 0x1e6}, {0x1e8, 0x1e8}, {0x1ea, 0x1ea}, {0x1ec, 0x1ec}, {0x1ee, 0x1ee}, {0x1f1, 0x1f1}, {0x1f4, 0x1f4}, {0x1f6, 0x1f8}, {0x1fa, 0x1fa}, {0x1fc, 0x1fc}, {0x1fe, 0x1fe}, {0x200, 0x200}, {0x202, 0x202}, {0x204, 0x204}, {0x206, 0x206}, {0x208, 0x208}, {0x20a, 0x20a}, {0x20c, 0x20c}, {0x20e, 0x20e}, {0x210, 0x210}, {0x212, 0x212}, {0x214, 0x214}, {0x216, 0x216}, {0x218, 0x218}, {0x21a, 0x21a}, {0x21c, 0x21c}, {0x21e, 0x21e}, {0x220, 0x220}, {0x222, 0x222}, {0x224, 0x224}, {0x226, 0x226}, {0x228, 0x228}, {0x22a, 0x22a}, {0x22c, 0x22c}, {0x22e, 0x22e}, {0x230, 0x230}, {0x232, 0x232}, {0x23a, 0x23b}, {0x23d, 0x23e}, {0x241, 0x241}, {0x243, 0x246}, {0x248, 0x248}, {0x24a, 0x24a}, {0x24c, 0x24c}, {0x24e, 0x24e}, {0x370, 0x370}, {0x372, 0x372}, {0x376, 0x376}, {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x38f}, {0x391, 0x3a1}, {0x3a3, 0x3ab}, {0x3cf, 0x3cf}, {0x3d2, 0x3d4}, {0x3d8, 0x3d8}, {0x3da, 0x3da}, {0x3dc, 0x3dc}, {0x3de, 0x3de}, {0x3e0, 0x3e0}, {0x3e2, 0x3e2}, {0x3e4, 0x3e4}, {0x3e6, 0x3e6}, {0x3e8, 0x3e8}, {0x3ea, 0x3ea}, {0x3ec, 0x3ec}, {0x3ee, 0x3ee}, {0x3f4, 0x3f4}, {0x3f7, 0x3f7}, {0x3f9, 0x3fa}, {0x3fd, 0x42f}, {0x460, 0x460}, {0x462, 0x462}, {0x464, 0x464}, {0x466, 0x466}, {0x468, 0x468}, {0x46a, 0x46a}, {0x46c, 0x46c}, {0x46e, 0x46e}, {0x470, 0x470}, {0x472, 0x472}, {0x474, 0x474}, {0x476, 0x476}, {0x478, 0x478}, {0x47a, 0x47a}, {0x47c, 0x47c}, {0x47e, 0x47e}, {0x480, 0x480}, {0x48a, 0x48a}, {0x48c, 0x48c}, {0x48e, 0x48e}, {0x490, 0x490}, {0x492, 0x492}, {0x494, 0x494}, {0x496, 0x496}, {0x498, 0x498}, {0x49a, 0x49a}, {0x49c, 0x49c}, {0x49e, 0x49e}, {0x4a0, 0x4a0}, {0x4a2, 0x4a2}, {0x4a4, 0x4a4}, {0x4a6, 0x4a6}, {0x4a8, 0x4a8}, {0x4aa, 0x4aa}, {0x4ac, 0x4ac}, {0x4ae, 0x4ae}, {0x4b0, 0x4b0}, {0x4b2, 0x4b2}, {0x4b4, 0x4b4}, {0x4b6, 0x4b6}, {0x4b8, 0x4b8}, {0x4ba, 0x4ba}, {0x4bc, 0x4bc}, {0x4be, 0x4be}, {0x4c0, 0x4c1}, {0x4c3, 0x4c3}, {0x4c5, 0x4c5}, {0x4c7, 0x4c7}, {0x4c9, 0x4c9}, {0x4cb, 0x4cb}, {0x4cd, 0x4cd}, {0x4d0, 0x4d0}, {0x4d2, 0x4d2}, {0x4d4, 0x4d4}, {0x4d6, 0x4d6}, {0x4d8, 0x4d8}, {0x4da, 0x4da}, {0x4dc, 0x4dc}, {0x4de, 0x4de}, {0x4e0, 0x4e0}, {0x4e2, 0x4e2}, {0x4e4, 0x4e4}, {0x4e6, 0x4e6}, {0x4e8, 0x4e8}, {0x4ea, 0x4ea}, {0x4ec, 0x4ec}, {0x4ee, 0x4ee}, {0x4f0, 0x4f0}, {0x4f2, 0x4f2}, {0x4f4, 0x4f4}, {0x4f6, 0x4f6}, {0x4f8, 0x4f8}, {0x4fa, 0x4fa}, {0x4fc, 0x4fc}, {0x4fe, 0x4fe}, {0x500, 0x500}, {0x502, 0x502}, {0x504, 0x504}, {0x506, 0x506}, {0x508, 0x508}, {0x50a, 0x50a}, {0x50c, 0x50c}, {0x50e, 0x50e}, {0x510, 0x510}, {0x512, 0x512}, {0x514, 0x514}, {0x516, 0x516}, {0x518, 0x518}, {0x51a, 0x51a}, {0x51c, 0x51c}, {0x51e, 0x51e}, {0x520, 0x520}, {0x522, 0x522}, {0x524, 0x524}, {0x526, 0x526}, {0x528, 0x528}, {0x52a, 0x52a}, {0x52c, 0x52c}, {0x52e, 0x52e}, {0x531, 0x556}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x13a0, 0x13f5}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1e00, 0x1e00}, {0x1e02, 0x1e02}, {0x1e04, 0x1e04}, {0x1e06, 0x1e06}, {0x1e08, 0x1e08}, {0x1e0a, 0x1e0a}, {0x1e0c, 0x1e0c}, {0x1e0e, 0x1e0e}, {0x1e10, 0x1e10}, {0x1e12, 0x1e12}, {0x1e14, 0x1e14}, {0x1e16, 0x1e16}, {0x1e18, 0x1e18}, {0x1e1a, 0x1e1a}, {0x1e1c, 0x1e1c}, {0x1e1e, 0x1e1e}, {0x1e20, 0x1e20}, {0x1e22, 0x1e22}, {0x1e24, 0x1e24}, {0x1e26, 0x1e26}, {0x1e28, 0x1e28}, {0x1e2a, 0x1e2a}, {0x1e2c, 0x1e2c}, {0x1e2e, 0x1e2e}, {0x1e30, 0x1e30}, {0x1e32, 0x1e32}, {0x1e34, 0x1e34}, {0x1e36, 0x1e36}, {0x1e38, 0x1e38}, {0x1e3a, 0x1e3a}, {0x1e3c, 0x1e3c}, {0x1e3e, 0x1e3e}, {0x1e40, 0x1e40}, {0x1e42, 0x1e42}, {0x1e44, 0x1e44}, {0x1e46, 0x1e46}, {0x1e48, 0x1e48}, {0x1e4a, 0x1e4a}, {0x1e4c, 0x1e4c}, {0x1e4e, 0x1e4e}, {0x1e50, 0x1e50}, {0x1e52, 0x1e52}, {0x1e54, 0x1e54}, {0x1e56, 0x1e56}, {0x1e58, 0x1e58}, {0x1e5a, 0x1e5a}, {0x1e5c, 0x1e5c}, {0x1e5e, 0x1e5e}, {0x1e60, 0x1e60}, {0x1e62, 0x1e62}, {0x1e64, 0x1e64}, {0x1e66, 0x1e66}, {0x1e68, 0x1e68}, {0x1e6a, 0x1e6a}, {0x1e6c, 0x1e6c}, {0x1e6e, 0x1e6e}, {0x1e70, 0x1e70}, {0x1e72, 0x1e72}, {0x1e74, 0x1e74}, {0x1e76, 0x1e76}, {0x1e78, 0x1e78}, {0x1e7a, 0x1e7a}, {0x1e7c, 0x1e7c}, {0x1e7e, 0x1e7e}, {0x1e80, 0x1e80}, {0x1e82, 0x1e82}, {0x1e84, 0x1e84}, {0x1e86, 0x1e86}, {0x1e88, 0x1e88}, {0x1e8a, 0x1e8a}, {0x1e8c, 0x1e8c}, {0x1e8e, 0x1e8e}, {0x1e90, 0x1e90}, {0x1e92, 0x1e92}, {0x1e94, 0x1e94}, {0x1e9e, 0x1e9e}, {0x1ea0, 0x1ea0}, {0x1ea2, 0x1ea2}, {0x1ea4, 0x1ea4}, {0x1ea6, 0x1ea6}, {0x1ea8, 0x1ea8}, {0x1eaa, 0x1eaa}, {0x1eac, 0x1eac}, {0x1eae, 0x1eae}, {0x1eb0, 0x1eb0}, {0x1eb2, 0x1eb2}, {0x1eb4, 0x1eb4}, {0x1eb6, 0x1eb6}, {0x1eb8, 0x1eb8}, {0x1eba, 0x1eba}, {0x1ebc, 0x1ebc}, {0x1ebe, 0x1ebe}, {0x1ec0, 0x1ec0}, {0x1ec2, 0x1ec2}, {0x1ec4, 0x1ec4}, {0x1ec6, 0x1ec6}, {0x1ec8, 0x1ec8}, {0x1eca, 0x1eca}, {0x1ecc, 0x1ecc}, {0x1ece, 0x1ece}, {0x1ed0, 0x1ed0}, {0x1ed2, 0x1ed2}, {0x1ed4, 0x1ed4}, {0x1ed6, 0x1ed6}, {0x1ed8, 0x1ed8}, {0x1eda, 0x1eda}, {0x1edc, 0x1edc}, {0x1ede, 0x1ede}, {0x1ee0, 0x1ee0}, {0x1ee2, 0x1ee2}, {0x1ee4, 0x1ee4}, {0x1ee6, 0x1ee6}, {0x1ee8, 0x1ee8}, {0x1eea, 0x1eea}, {0x1eec, 0x1eec}, {0x1eee, 0x1eee}, {0x1ef0, 0x1ef0}, {0x1ef2, 0x1ef2}, {0x1ef4, 0x1ef4}, {0x1ef6, 0x1ef6}, {0x1ef8, 0x1ef8}, {0x1efa, 0x1efa}, {0x1efc, 0x1efc}, {0x1efe, 0x1efe}, {0x1f08, 0x1f0f}, {0x1f18, 0x1f1d}, {0x1f28, 0x1f2f}, {0x1f38, 0x1f3f}, {0x1f48, 0x1f4d}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f5f}, {0x1f68, 0x1f6f}, {0x1fb8, 0x1fbb}, {0x1fc8, 0x1fcb}, {0x1fd8, 0x1fdb}, {0x1fe8, 0x1fec}, {0x1ff8, 0x1ffb}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210b, 0x210d}, {0x2110, 0x2112}, {0x2115, 0x2115}, {0x2119, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x212d}, {0x2130, 0x2133}, {0x213e, 0x213f}, {0x2145, 0x2145}, {0x2183, 0x2183}, {0x2c00, 0x2c2e}, {0x2c60, 0x2c60}, {0x2c62, 0x2c64}, {0x2c67, 0x2c67}, {0x2c69, 0x2c69}, {0x2c6b, 0x2c6b}, {0x2c6d, 0x2c70}, {0x2c72, 0x2c72}, {0x2c75, 0x2c75}, {0x2c7e, 0x2c80}, {0x2c82, 0x2c82}, {0x2c84, 0x2c84}, {0x2c86, 0x2c86}, {0x2c88, 0x2c88}, {0x2c8a, 0x2c8a}, {0x2c8c, 0x2c8c}, {0x2c8e, 0x2c8e}, {0x2c90, 0x2c90}, {0x2c92, 0x2c92}, {0x2c94, 0x2c94}, {0x2c96, 0x2c96}, {0x2c98, 0x2c98}, {0x2c9a, 0x2c9a}, {0x2c9c, 0x2c9c}, {0x2c9e, 0x2c9e}, {0x2ca0, 0x2ca0}, {0x2ca2, 0x2ca2}, {0x2ca4, 0x2ca4}, {0x2ca6, 0x2ca6}, {0x2ca8, 0x2ca8}, {0x2caa, 0x2caa}, {0x2cac, 0x2cac}, {0x2cae, 0x2cae}, {0x2cb0, 0x2cb0}, {0x2cb2, 0x2cb2}, {0x2cb4, 0x2cb4}, {0x2cb6, 0x2cb6}, {0x2cb8, 0x2cb8}, {0x2cba, 0x2cba}, {0x2cbc, 0x2cbc}, {0x2cbe, 0x2cbe}, {0x2cc0, 0x2cc0}, {0x2cc2, 0x2cc2}, {0x2cc4, 0x2cc4}, {0x2cc6, 0x2cc6}, {0x2cc8, 0x2cc8}, {0x2cca, 0x2cca}, {0x2ccc, 0x2ccc}, {0x2cce, 0x2cce}, {0x2cd0, 0x2cd0}, {0x2cd2, 0x2cd2}, {0x2cd4, 0x2cd4}, {0x2cd6, 0x2cd6}, {0x2cd8, 0x2cd8}, {0x2cda, 0x2cda}, {0x2cdc, 0x2cdc}, {0x2cde, 0x2cde}, {0x2ce0, 0x2ce0}, {0x2ce2, 0x2ce2}, {0x2ceb, 0x2ceb}, {0x2ced, 0x2ced}, {0x2cf2, 0x2cf2}, {0xa640, 0xa640}, {0xa642, 0xa642}, {0xa644, 0xa644}, {0xa646, 0xa646}, {0xa648, 0xa648}, {0xa64a, 0xa64a}, {0xa64c, 0xa64c}, {0xa64e, 0xa64e}, {0xa650, 0xa650}, {0xa652, 0xa652}, {0xa654, 0xa654}, {0xa656, 0xa656}, {0xa658, 0xa658}, {0xa65a, 0xa65a}, {0xa65c, 0xa65c}, {0xa65e, 0xa65e}, {0xa660, 0xa660}, {0xa662, 0xa662}, {0xa664, 0xa664}, {0xa666, 0xa666}, {0xa668, 0xa668}, {0xa66a, 0xa66a}, {0xa66c, 0xa66c}, {0xa680, 0xa680}, {0xa682, 0xa682}, {0xa684, 0xa684}, {0xa686, 0xa686}, {0xa688, 0xa688}, {0xa68a, 0xa68a}, {0xa68c, 0xa68c}, {0xa68e, 0xa68e}, {0xa690, 0xa690}, {0xa692, 0xa692}, {0xa694, 0xa694}, {0xa696, 0xa696}, {0xa698, 0xa698}, {0xa69a, 0xa69a}, {0xa722, 0xa722}, {0xa724, 0xa724}, {0xa726, 0xa726}, {0xa728, 0xa728}, {0xa72a, 0xa72a}, {0xa72c, 0xa72c}, {0xa72e, 0xa72e}, {0xa732, 0xa732}, {0xa734, 0xa734}, {0xa736, 0xa736}, {0xa738, 0xa738}, {0xa73a, 0xa73a}, {0xa73c, 0xa73c}, {0xa73e, 0xa73e}, {0xa740, 0xa740}, {0xa742, 0xa742}, {0xa744, 0xa744}, {0xa746, 0xa746}, {0xa748, 0xa748}, {0xa74a, 0xa74a}, {0xa74c, 0xa74c}, {0xa74e, 0xa74e}, {0xa750, 0xa750}, {0xa752, 0xa752}, {0xa754, 0xa754}, {0xa756, 0xa756}, {0xa758, 0xa758}, {0xa75a, 0xa75a}, {0xa75c, 0xa75c}, {0xa75e, 0xa75e}, {0xa760, 0xa760}, {0xa762, 0xa762}, {0xa764, 0xa764}, {0xa766, 0xa766}, {0xa768, 0xa768}, {0xa76a, 0xa76a}, {0xa76c, 0xa76c}, {0xa76e, 0xa76e}, {0xa779, 0xa779}, {0xa77b, 0xa77b}, {0xa77d, 0xa77e}, {0xa780, 0xa780}, {0xa782, 0xa782}, {0xa784, 0xa784}, {0xa786, 0xa786}, {0xa78b, 0xa78b}, {0xa78d, 0xa78d}, {0xa790, 0xa790}, {0xa792, 0xa792}, {0xa796, 0xa796}, {0xa798, 0xa798}, {0xa79a, 0xa79a}, {0xa79c, 0xa79c}, {0xa79e, 0xa79e}, {0xa7a0, 0xa7a0}, {0xa7a2, 0xa7a2}, {0xa7a4, 0xa7a4}, {0xa7a6, 0xa7a6}, {0xa7a8, 0xa7a8}, {0xa7aa, 0xa7ae}, {0xa7b0, 0xa7b4}, {0xa7b6, 0xa7b6}, {0xa7b8, 0xa7b8}, {0xa7ba, 0xa7ba}, {0xa7bc, 0xa7bc}, {0xa7be, 0xa7be}, {0xa7c2, 0xa7c2}, {0xa7c4, 0xa7c6}, {0xff21, 0xff3a}, {0x10400, 0x10427}, {0x104b0, 0x104d3}, {0x10c80, 0x10cb2}, {0x118a0, 0x118bf}, {0x16e40, 0x16e5f}, {0x1d400, 0x1d419}, {0x1d434, 0x1d44d}, {0x1d468, 0x1d481}, {0x1d49c, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b5}, {0x1d4d0, 0x1d4e9}, {0x1d504, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d538, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d56c, 0x1d585}, {0x1d5a0, 0x1d5b9}, {0x1d5d4, 0x1d5ed}, {0x1d608, 0x1d621}, {0x1d63c, 0x1d655}, {0x1d670, 0x1d689}, {0x1d6a8, 0x1d6c0}, {0x1d6e2, 0x1d6fa}, {0x1d71c, 0x1d734}, {0x1d756, 0x1d76e}, {0x1d790, 0x1d7a8}, {0x1d7ca, 0x1d7ca}, {0x1e900, 0x1e921}, }; static const TSCharacterRange sym_upper_case_identifier_character_set_2[] = { {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37a, 0x37d}, {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5}, {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828}, {0x840, 0x858}, {0x860, 0x86a}, {0x8a0, 0x8b4}, {0x8b6, 0x8bd}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc60, 0xc61}, {0xc80, 0xc80}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcde, 0xcde}, {0xce0, 0xce1}, {0xcf1, 0xcf2}, {0xd05, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61}, {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe33}, {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb3}, {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c}, {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16f1, 0x16f8}, {0x1700, 0x170c}, {0x170e, 0x1711}, {0x1720, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x1884}, {0x1887, 0x18a8}, {0x18aa, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4b}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa}, {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2119, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x212d}, {0x212f, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2183, 0x2184}, {0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, {0x2c60, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2e2f, 0x2e2f}, {0x3005, 0x3006}, {0x3031, 0x3035}, {0x303b, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31ba}, {0x31f0, 0x31ff}, {0x3400, 0x4db5}, {0x4e00, 0x9fef}, {0xa000, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, {0xa67f, 0xa69d}, {0xa6a0, 0xa6e5}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7bf}, {0xa7c2, 0xa7c6}, {0xa7f7, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1}, {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab67}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x10340}, {0x10342, 0x10349}, {0x10350, 0x10375}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f45}, {0x10fe0, 0x10ff6}, {0x11003, 0x11037}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x1145f}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x118ff}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ac0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x12000, 0x12399}, {0x12480, 0x12543}, {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, {0x18800, 0x18af2}, {0x1b000, 0x1b11e}, {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e2c0, 0x1e2eb}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}, }; static const TSCharacterRange sym_lower_case_identifier_character_set_1[] = { {'a', 'z'}, {0xb5, 0xb5}, {0xdf, 0xf6}, {0xf8, 0xff}, {0x101, 0x101}, {0x103, 0x103}, {0x105, 0x105}, {0x107, 0x107}, {0x109, 0x109}, {0x10b, 0x10b}, {0x10d, 0x10d}, {0x10f, 0x10f}, {0x111, 0x111}, {0x113, 0x113}, {0x115, 0x115}, {0x117, 0x117}, {0x119, 0x119}, {0x11b, 0x11b}, {0x11d, 0x11d}, {0x11f, 0x11f}, {0x121, 0x121}, {0x123, 0x123}, {0x125, 0x125}, {0x127, 0x127}, {0x129, 0x129}, {0x12b, 0x12b}, {0x12d, 0x12d}, {0x12f, 0x12f}, {0x131, 0x131}, {0x133, 0x133}, {0x135, 0x135}, {0x137, 0x138}, {0x13a, 0x13a}, {0x13c, 0x13c}, {0x13e, 0x13e}, {0x140, 0x140}, {0x142, 0x142}, {0x144, 0x144}, {0x146, 0x146}, {0x148, 0x149}, {0x14b, 0x14b}, {0x14d, 0x14d}, {0x14f, 0x14f}, {0x151, 0x151}, {0x153, 0x153}, {0x155, 0x155}, {0x157, 0x157}, {0x159, 0x159}, {0x15b, 0x15b}, {0x15d, 0x15d}, {0x15f, 0x15f}, {0x161, 0x161}, {0x163, 0x163}, {0x165, 0x165}, {0x167, 0x167}, {0x169, 0x169}, {0x16b, 0x16b}, {0x16d, 0x16d}, {0x16f, 0x16f}, {0x171, 0x171}, {0x173, 0x173}, {0x175, 0x175}, {0x177, 0x177}, {0x17a, 0x17a}, {0x17c, 0x17c}, {0x17e, 0x180}, {0x183, 0x183}, {0x185, 0x185}, {0x188, 0x188}, {0x18c, 0x18d}, {0x192, 0x192}, {0x195, 0x195}, {0x199, 0x19b}, {0x19e, 0x19e}, {0x1a1, 0x1a1}, {0x1a3, 0x1a3}, {0x1a5, 0x1a5}, {0x1a8, 0x1a8}, {0x1aa, 0x1ab}, {0x1ad, 0x1ad}, {0x1b0, 0x1b0}, {0x1b4, 0x1b4}, {0x1b6, 0x1b6}, {0x1b9, 0x1ba}, {0x1bd, 0x1bf}, {0x1c6, 0x1c6}, {0x1c9, 0x1c9}, {0x1cc, 0x1cc}, {0x1ce, 0x1ce}, {0x1d0, 0x1d0}, {0x1d2, 0x1d2}, {0x1d4, 0x1d4}, {0x1d6, 0x1d6}, {0x1d8, 0x1d8}, {0x1da, 0x1da}, {0x1dc, 0x1dd}, {0x1df, 0x1df}, {0x1e1, 0x1e1}, {0x1e3, 0x1e3}, {0x1e5, 0x1e5}, {0x1e7, 0x1e7}, {0x1e9, 0x1e9}, {0x1eb, 0x1eb}, {0x1ed, 0x1ed}, {0x1ef, 0x1f0}, {0x1f3, 0x1f3}, {0x1f5, 0x1f5}, {0x1f9, 0x1f9}, {0x1fb, 0x1fb}, {0x1fd, 0x1fd}, {0x1ff, 0x1ff}, {0x201, 0x201}, {0x203, 0x203}, {0x205, 0x205}, {0x207, 0x207}, {0x209, 0x209}, {0x20b, 0x20b}, {0x20d, 0x20d}, {0x20f, 0x20f}, {0x211, 0x211}, {0x213, 0x213}, {0x215, 0x215}, {0x217, 0x217}, {0x219, 0x219}, {0x21b, 0x21b}, {0x21d, 0x21d}, {0x21f, 0x21f}, {0x221, 0x221}, {0x223, 0x223}, {0x225, 0x225}, {0x227, 0x227}, {0x229, 0x229}, {0x22b, 0x22b}, {0x22d, 0x22d}, {0x22f, 0x22f}, {0x231, 0x231}, {0x233, 0x239}, {0x23c, 0x23c}, {0x23f, 0x240}, {0x242, 0x242}, {0x247, 0x247}, {0x249, 0x249}, {0x24b, 0x24b}, {0x24d, 0x24d}, {0x24f, 0x293}, {0x295, 0x2af}, {0x371, 0x371}, {0x373, 0x373}, {0x377, 0x377}, {0x37b, 0x37d}, {0x390, 0x390}, {0x3ac, 0x3ce}, {0x3d0, 0x3d1}, {0x3d5, 0x3d7}, {0x3d9, 0x3d9}, {0x3db, 0x3db}, {0x3dd, 0x3dd}, {0x3df, 0x3df}, {0x3e1, 0x3e1}, {0x3e3, 0x3e3}, {0x3e5, 0x3e5}, {0x3e7, 0x3e7}, {0x3e9, 0x3e9}, {0x3eb, 0x3eb}, {0x3ed, 0x3ed}, {0x3ef, 0x3f3}, {0x3f5, 0x3f5}, {0x3f8, 0x3f8}, {0x3fb, 0x3fc}, {0x430, 0x45f}, {0x461, 0x461}, {0x463, 0x463}, {0x465, 0x465}, {0x467, 0x467}, {0x469, 0x469}, {0x46b, 0x46b}, {0x46d, 0x46d}, {0x46f, 0x46f}, {0x471, 0x471}, {0x473, 0x473}, {0x475, 0x475}, {0x477, 0x477}, {0x479, 0x479}, {0x47b, 0x47b}, {0x47d, 0x47d}, {0x47f, 0x47f}, {0x481, 0x481}, {0x48b, 0x48b}, {0x48d, 0x48d}, {0x48f, 0x48f}, {0x491, 0x491}, {0x493, 0x493}, {0x495, 0x495}, {0x497, 0x497}, {0x499, 0x499}, {0x49b, 0x49b}, {0x49d, 0x49d}, {0x49f, 0x49f}, {0x4a1, 0x4a1}, {0x4a3, 0x4a3}, {0x4a5, 0x4a5}, {0x4a7, 0x4a7}, {0x4a9, 0x4a9}, {0x4ab, 0x4ab}, {0x4ad, 0x4ad}, {0x4af, 0x4af}, {0x4b1, 0x4b1}, {0x4b3, 0x4b3}, {0x4b5, 0x4b5}, {0x4b7, 0x4b7}, {0x4b9, 0x4b9}, {0x4bb, 0x4bb}, {0x4bd, 0x4bd}, {0x4bf, 0x4bf}, {0x4c2, 0x4c2}, {0x4c4, 0x4c4}, {0x4c6, 0x4c6}, {0x4c8, 0x4c8}, {0x4ca, 0x4ca}, {0x4cc, 0x4cc}, {0x4ce, 0x4cf}, {0x4d1, 0x4d1}, {0x4d3, 0x4d3}, {0x4d5, 0x4d5}, {0x4d7, 0x4d7}, {0x4d9, 0x4d9}, {0x4db, 0x4db}, {0x4dd, 0x4dd}, {0x4df, 0x4df}, {0x4e1, 0x4e1}, {0x4e3, 0x4e3}, {0x4e5, 0x4e5}, {0x4e7, 0x4e7}, {0x4e9, 0x4e9}, {0x4eb, 0x4eb}, {0x4ed, 0x4ed}, {0x4ef, 0x4ef}, {0x4f1, 0x4f1}, {0x4f3, 0x4f3}, {0x4f5, 0x4f5}, {0x4f7, 0x4f7}, {0x4f9, 0x4f9}, {0x4fb, 0x4fb}, {0x4fd, 0x4fd}, {0x4ff, 0x4ff}, {0x501, 0x501}, {0x503, 0x503}, {0x505, 0x505}, {0x507, 0x507}, {0x509, 0x509}, {0x50b, 0x50b}, {0x50d, 0x50d}, {0x50f, 0x50f}, {0x511, 0x511}, {0x513, 0x513}, {0x515, 0x515}, {0x517, 0x517}, {0x519, 0x519}, {0x51b, 0x51b}, {0x51d, 0x51d}, {0x51f, 0x51f}, {0x521, 0x521}, {0x523, 0x523}, {0x525, 0x525}, {0x527, 0x527}, {0x529, 0x529}, {0x52b, 0x52b}, {0x52d, 0x52d}, {0x52f, 0x52f}, {0x560, 0x588}, {0x10d0, 0x10fa}, {0x10fd, 0x10ff}, {0x13f8, 0x13fd}, {0x1c80, 0x1c88}, {0x1d00, 0x1d2b}, {0x1d6b, 0x1d77}, {0x1d79, 0x1d9a}, {0x1e01, 0x1e01}, {0x1e03, 0x1e03}, {0x1e05, 0x1e05}, {0x1e07, 0x1e07}, {0x1e09, 0x1e09}, {0x1e0b, 0x1e0b}, {0x1e0d, 0x1e0d}, {0x1e0f, 0x1e0f}, {0x1e11, 0x1e11}, {0x1e13, 0x1e13}, {0x1e15, 0x1e15}, {0x1e17, 0x1e17}, {0x1e19, 0x1e19}, {0x1e1b, 0x1e1b}, {0x1e1d, 0x1e1d}, {0x1e1f, 0x1e1f}, {0x1e21, 0x1e21}, {0x1e23, 0x1e23}, {0x1e25, 0x1e25}, {0x1e27, 0x1e27}, {0x1e29, 0x1e29}, {0x1e2b, 0x1e2b}, {0x1e2d, 0x1e2d}, {0x1e2f, 0x1e2f}, {0x1e31, 0x1e31}, {0x1e33, 0x1e33}, {0x1e35, 0x1e35}, {0x1e37, 0x1e37}, {0x1e39, 0x1e39}, {0x1e3b, 0x1e3b}, {0x1e3d, 0x1e3d}, {0x1e3f, 0x1e3f}, {0x1e41, 0x1e41}, {0x1e43, 0x1e43}, {0x1e45, 0x1e45}, {0x1e47, 0x1e47}, {0x1e49, 0x1e49}, {0x1e4b, 0x1e4b}, {0x1e4d, 0x1e4d}, {0x1e4f, 0x1e4f}, {0x1e51, 0x1e51}, {0x1e53, 0x1e53}, {0x1e55, 0x1e55}, {0x1e57, 0x1e57}, {0x1e59, 0x1e59}, {0x1e5b, 0x1e5b}, {0x1e5d, 0x1e5d}, {0x1e5f, 0x1e5f}, {0x1e61, 0x1e61}, {0x1e63, 0x1e63}, {0x1e65, 0x1e65}, {0x1e67, 0x1e67}, {0x1e69, 0x1e69}, {0x1e6b, 0x1e6b}, {0x1e6d, 0x1e6d}, {0x1e6f, 0x1e6f}, {0x1e71, 0x1e71}, {0x1e73, 0x1e73}, {0x1e75, 0x1e75}, {0x1e77, 0x1e77}, {0x1e79, 0x1e79}, {0x1e7b, 0x1e7b}, {0x1e7d, 0x1e7d}, {0x1e7f, 0x1e7f}, {0x1e81, 0x1e81}, {0x1e83, 0x1e83}, {0x1e85, 0x1e85}, {0x1e87, 0x1e87}, {0x1e89, 0x1e89}, {0x1e8b, 0x1e8b}, {0x1e8d, 0x1e8d}, {0x1e8f, 0x1e8f}, {0x1e91, 0x1e91}, {0x1e93, 0x1e93}, {0x1e95, 0x1e9d}, {0x1e9f, 0x1e9f}, {0x1ea1, 0x1ea1}, {0x1ea3, 0x1ea3}, {0x1ea5, 0x1ea5}, {0x1ea7, 0x1ea7}, {0x1ea9, 0x1ea9}, {0x1eab, 0x1eab}, {0x1ead, 0x1ead}, {0x1eaf, 0x1eaf}, {0x1eb1, 0x1eb1}, {0x1eb3, 0x1eb3}, {0x1eb5, 0x1eb5}, {0x1eb7, 0x1eb7}, {0x1eb9, 0x1eb9}, {0x1ebb, 0x1ebb}, {0x1ebd, 0x1ebd}, {0x1ebf, 0x1ebf}, {0x1ec1, 0x1ec1}, {0x1ec3, 0x1ec3}, {0x1ec5, 0x1ec5}, {0x1ec7, 0x1ec7}, {0x1ec9, 0x1ec9}, {0x1ecb, 0x1ecb}, {0x1ecd, 0x1ecd}, {0x1ecf, 0x1ecf}, {0x1ed1, 0x1ed1}, {0x1ed3, 0x1ed3}, {0x1ed5, 0x1ed5}, {0x1ed7, 0x1ed7}, {0x1ed9, 0x1ed9}, {0x1edb, 0x1edb}, {0x1edd, 0x1edd}, {0x1edf, 0x1edf}, {0x1ee1, 0x1ee1}, {0x1ee3, 0x1ee3}, {0x1ee5, 0x1ee5}, {0x1ee7, 0x1ee7}, {0x1ee9, 0x1ee9}, {0x1eeb, 0x1eeb}, {0x1eed, 0x1eed}, {0x1eef, 0x1eef}, {0x1ef1, 0x1ef1}, {0x1ef3, 0x1ef3}, {0x1ef5, 0x1ef5}, {0x1ef7, 0x1ef7}, {0x1ef9, 0x1ef9}, {0x1efb, 0x1efb}, {0x1efd, 0x1efd}, {0x1eff, 0x1f07}, {0x1f10, 0x1f15}, {0x1f20, 0x1f27}, {0x1f30, 0x1f37}, {0x1f40, 0x1f45}, {0x1f50, 0x1f57}, {0x1f60, 0x1f67}, {0x1f70, 0x1f7d}, {0x1f80, 0x1f87}, {0x1f90, 0x1f97}, {0x1fa0, 0x1fa7}, {0x1fb0, 0x1fb4}, {0x1fb6, 0x1fb7}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fc7}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fd7}, {0x1fe0, 0x1fe7}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ff7}, {0x210a, 0x210a}, {0x210e, 0x210f}, {0x2113, 0x2113}, {0x212f, 0x212f}, {0x2134, 0x2134}, {0x2139, 0x2139}, {0x213c, 0x213d}, {0x2146, 0x2149}, {0x214e, 0x214e}, {0x2184, 0x2184}, {0x2c30, 0x2c5e}, {0x2c61, 0x2c61}, {0x2c65, 0x2c66}, {0x2c68, 0x2c68}, {0x2c6a, 0x2c6a}, {0x2c6c, 0x2c6c}, {0x2c71, 0x2c71}, {0x2c73, 0x2c74}, {0x2c76, 0x2c7b}, {0x2c81, 0x2c81}, {0x2c83, 0x2c83}, {0x2c85, 0x2c85}, {0x2c87, 0x2c87}, {0x2c89, 0x2c89}, {0x2c8b, 0x2c8b}, {0x2c8d, 0x2c8d}, {0x2c8f, 0x2c8f}, {0x2c91, 0x2c91}, {0x2c93, 0x2c93}, {0x2c95, 0x2c95}, {0x2c97, 0x2c97}, {0x2c99, 0x2c99}, {0x2c9b, 0x2c9b}, {0x2c9d, 0x2c9d}, {0x2c9f, 0x2c9f}, {0x2ca1, 0x2ca1}, {0x2ca3, 0x2ca3}, {0x2ca5, 0x2ca5}, {0x2ca7, 0x2ca7}, {0x2ca9, 0x2ca9}, {0x2cab, 0x2cab}, {0x2cad, 0x2cad}, {0x2caf, 0x2caf}, {0x2cb1, 0x2cb1}, {0x2cb3, 0x2cb3}, {0x2cb5, 0x2cb5}, {0x2cb7, 0x2cb7}, {0x2cb9, 0x2cb9}, {0x2cbb, 0x2cbb}, {0x2cbd, 0x2cbd}, {0x2cbf, 0x2cbf}, {0x2cc1, 0x2cc1}, {0x2cc3, 0x2cc3}, {0x2cc5, 0x2cc5}, {0x2cc7, 0x2cc7}, {0x2cc9, 0x2cc9}, {0x2ccb, 0x2ccb}, {0x2ccd, 0x2ccd}, {0x2ccf, 0x2ccf}, {0x2cd1, 0x2cd1}, {0x2cd3, 0x2cd3}, {0x2cd5, 0x2cd5}, {0x2cd7, 0x2cd7}, {0x2cd9, 0x2cd9}, {0x2cdb, 0x2cdb}, {0x2cdd, 0x2cdd}, {0x2cdf, 0x2cdf}, {0x2ce1, 0x2ce1}, {0x2ce3, 0x2ce4}, {0x2cec, 0x2cec}, {0x2cee, 0x2cee}, {0x2cf3, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0xa641, 0xa641}, {0xa643, 0xa643}, {0xa645, 0xa645}, {0xa647, 0xa647}, {0xa649, 0xa649}, {0xa64b, 0xa64b}, {0xa64d, 0xa64d}, {0xa64f, 0xa64f}, {0xa651, 0xa651}, {0xa653, 0xa653}, {0xa655, 0xa655}, {0xa657, 0xa657}, {0xa659, 0xa659}, {0xa65b, 0xa65b}, {0xa65d, 0xa65d}, {0xa65f, 0xa65f}, {0xa661, 0xa661}, {0xa663, 0xa663}, {0xa665, 0xa665}, {0xa667, 0xa667}, {0xa669, 0xa669}, {0xa66b, 0xa66b}, {0xa66d, 0xa66d}, {0xa681, 0xa681}, {0xa683, 0xa683}, {0xa685, 0xa685}, {0xa687, 0xa687}, {0xa689, 0xa689}, {0xa68b, 0xa68b}, {0xa68d, 0xa68d}, {0xa68f, 0xa68f}, {0xa691, 0xa691}, {0xa693, 0xa693}, {0xa695, 0xa695}, {0xa697, 0xa697}, {0xa699, 0xa699}, {0xa69b, 0xa69b}, {0xa723, 0xa723}, {0xa725, 0xa725}, {0xa727, 0xa727}, {0xa729, 0xa729}, {0xa72b, 0xa72b}, {0xa72d, 0xa72d}, {0xa72f, 0xa731}, {0xa733, 0xa733}, {0xa735, 0xa735}, {0xa737, 0xa737}, {0xa739, 0xa739}, {0xa73b, 0xa73b}, {0xa73d, 0xa73d}, {0xa73f, 0xa73f}, {0xa741, 0xa741}, {0xa743, 0xa743}, {0xa745, 0xa745}, {0xa747, 0xa747}, {0xa749, 0xa749}, {0xa74b, 0xa74b}, {0xa74d, 0xa74d}, {0xa74f, 0xa74f}, {0xa751, 0xa751}, {0xa753, 0xa753}, {0xa755, 0xa755}, {0xa757, 0xa757}, {0xa759, 0xa759}, {0xa75b, 0xa75b}, {0xa75d, 0xa75d}, {0xa75f, 0xa75f}, {0xa761, 0xa761}, {0xa763, 0xa763}, {0xa765, 0xa765}, {0xa767, 0xa767}, {0xa769, 0xa769}, {0xa76b, 0xa76b}, {0xa76d, 0xa76d}, {0xa76f, 0xa76f}, {0xa771, 0xa778}, {0xa77a, 0xa77a}, {0xa77c, 0xa77c}, {0xa77f, 0xa77f}, {0xa781, 0xa781}, {0xa783, 0xa783}, {0xa785, 0xa785}, {0xa787, 0xa787}, {0xa78c, 0xa78c}, {0xa78e, 0xa78e}, {0xa791, 0xa791}, {0xa793, 0xa795}, {0xa797, 0xa797}, {0xa799, 0xa799}, {0xa79b, 0xa79b}, {0xa79d, 0xa79d}, {0xa79f, 0xa79f}, {0xa7a1, 0xa7a1}, {0xa7a3, 0xa7a3}, {0xa7a5, 0xa7a5}, {0xa7a7, 0xa7a7}, {0xa7a9, 0xa7a9}, {0xa7af, 0xa7af}, {0xa7b5, 0xa7b5}, {0xa7b7, 0xa7b7}, {0xa7b9, 0xa7b9}, {0xa7bb, 0xa7bb}, {0xa7bd, 0xa7bd}, {0xa7bf, 0xa7bf}, {0xa7c3, 0xa7c3}, {0xa7fa, 0xa7fa}, {0xab30, 0xab5a}, {0xab60, 0xab67}, {0xab70, 0xabbf}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xff41, 0xff5a}, {0x10428, 0x1044f}, {0x104d8, 0x104fb}, {0x10cc0, 0x10cf2}, {0x118c0, 0x118df}, {0x16e60, 0x16e7f}, {0x1d41a, 0x1d433}, {0x1d44e, 0x1d454}, {0x1d456, 0x1d467}, {0x1d482, 0x1d49b}, {0x1d4b6, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d4cf}, {0x1d4ea, 0x1d503}, {0x1d51e, 0x1d537}, {0x1d552, 0x1d56b}, {0x1d586, 0x1d59f}, {0x1d5ba, 0x1d5d3}, {0x1d5ee, 0x1d607}, {0x1d622, 0x1d63b}, {0x1d656, 0x1d66f}, {0x1d68a, 0x1d6a5}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6e1}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d71b}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d755}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d78f}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9}, {0x1d7cb, 0x1d7cb}, {0x1e922, 0x1e943}, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: if (eof) ADVANCE(69); ADVANCE_MAP( '"', 92, '&', 26, '\'', 85, '(', 73, ')', 75, '*', 128, '+', 123, ',', 74, '-', 125, '.', 80, '/', 129, '0', 104, ':', 118, '<', 134, '=', 116, '>', 135, '[', 97, '\\', 2, ']', 98, '^', 131, '_', 120, '{', 83, '|', 82, '}', 84, ); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(66); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); if (lookahead == 0x1c89 || lookahead == 0x2c2f || lookahead == 0xa7c0 || lookahead == 0xa7c7 || lookahead == 0xa7c9 || lookahead == 0xa7cb || lookahead == 0xa7cc || lookahead == 0xa7d0 || lookahead == 0xa7d6 || lookahead == 0xa7d8 || lookahead == 0xa7da || lookahead == 0xa7dc || lookahead == 0xa7f5 || (0x10570 <= lookahead && lookahead <= 0x1057a) || (0x1057c <= lookahead && lookahead <= 0x1058a) || (0x1058c <= lookahead && lookahead <= 0x10592) || lookahead == 0x10594 || lookahead == 0x10595 || (0x10d50 <= lookahead && lookahead <= 0x10d65)) ADVANCE(77); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(76); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 1: if (lookahead == '\n') SKIP(13); END_STATE(); case 2: if (lookahead == '\n') SKIP(13); if (lookahead == '\r') SKIP(1); if (lookahead == 'u') ADVANCE(44); if (lookahead == '"' || lookahead == '\'' || lookahead == '\\' || lookahead == 'n' || lookahead == 'r' || lookahead == 't') ADVANCE(109); END_STATE(); case 3: if (lookahead == '\n') SKIP(23); END_STATE(); case 4: if (lookahead == '\n') SKIP(23); if (lookahead == '\r') SKIP(3); END_STATE(); case 5: if (lookahead == '\n') SKIP(25); END_STATE(); case 6: if (lookahead == '\n') SKIP(25); if (lookahead == '\r') SKIP(5); END_STATE(); case 7: if (lookahead == '\n') SKIP(21); END_STATE(); case 8: if (lookahead == '\n') SKIP(21); if (lookahead == '\r') SKIP(7); END_STATE(); case 9: ADVANCE_MAP( '\n', 112, '\r', 110, 'u', 113, '"', 109, '\'', 109, '\\', 109, 'n', 109, 'r', 109, 't', 109, ); if (lookahead != 0) ADVANCE(110); END_STATE(); case 10: if (lookahead == '\n') SKIP(32); END_STATE(); case 11: if (lookahead == '\n') SKIP(32); if (lookahead == '\r') SKIP(10); END_STATE(); case 12: ADVANCE_MAP( '\n', 111, '\r', 110, 'u', 113, '"', 109, '\'', 109, '\\', 109, 'n', 109, 'r', 109, 't', 109, ); if (lookahead != 0) ADVANCE(110); END_STATE(); case 13: ADVANCE_MAP( '"', 92, '&', 26, '\'', 85, '(', 73, ')', 75, '*', 128, '+', 123, ',', 74, '-', 125, '.', 122, '/', 129, '0', 104, ':', 118, '<', 134, '=', 116, '>', 135, '[', 97, '\\', 2, ']', 98, '^', 131, '_', 120, '{', 83, '|', 82, '}', 84, ); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(13); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(102); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 14: ADVANCE_MAP( '"', 92, '&', 26, '\'', 85, '(', 73, ')', 75, '*', 128, '+', 123, ',', 74, '-', 126, '.', 79, '/', 129, '0', 104, ':', 37, '<', 134, '=', 38, '>', 135, '[', 97, '\\', 119, ']', 98, '^', 131, '{', 83, '|', 36, '}', 84, ); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(15); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(102); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 15: ADVANCE_MAP( '"', 92, '&', 26, '\'', 85, '(', 73, ')', 75, '*', 128, '+', 123, ',', 74, '-', 126, '.', 121, '/', 129, '0', 104, ':', 37, '<', 134, '=', 38, '>', 135, '[', 97, '\\', 119, ']', 98, '^', 131, '{', 83, '|', 36, '}', 84, ); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(15); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(102); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 16: if (lookahead == '"') ADVANCE(17); END_STATE(); case 17: if (lookahead == '"') ADVANCE(90); END_STATE(); case 18: if (lookahead == '"') ADVANCE(91); if (lookahead == '-') ADVANCE(94); if (lookahead == '\\') ADVANCE(9); if (lookahead == '{') ADVANCE(94); if (lookahead == '\n' || lookahead == '\r') SKIP(19); if (lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) ADVANCE(93); if (lookahead != 0) ADVANCE(95); END_STATE(); case 19: if (lookahead == '"') ADVANCE(91); if (lookahead == '-') ADVANCE(27); if (lookahead == '\\') ADVANCE(9); if (lookahead == '{') ADVANCE(29); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(19); END_STATE(); case 20: if (lookahead == '"') ADVANCE(16); if (lookahead == '-') ADVANCE(27); if (lookahead == '\\') ADVANCE(9); if (lookahead == '{') ADVANCE(29); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(20); END_STATE(); case 21: ADVANCE_MAP( '&', 26, '(', 73, ')', 75, '*', 128, '+', 123, ',', 74, '-', 124, '.', 34, '/', 129, ':', 37, '<', 134, '=', 116, '>', 135, ); if (lookahead == '\\') SKIP(8); if (lookahead == ']') ADVANCE(98); if (lookahead == '^') ADVANCE(131); if (lookahead == '{') ADVANCE(29); if (lookahead == '|') ADVANCE(36); if (lookahead == '}') ADVANCE(84); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(21); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(102); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 22: ADVANCE_MAP( '&', 26, '(', 73, ')', 75, '*', 128, '+', 123, '-', 127, '.', 79, '/', 129, ':', 37, '<', 134, '=', 38, '>', 135, ); if (lookahead == '\\') SKIP(4); if (lookahead == '^') ADVANCE(131); if (lookahead == '{') ADVANCE(83); if (lookahead == '|') ADVANCE(35); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(23); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(102); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 23: ADVANCE_MAP( '&', 26, '(', 73, ')', 75, '*', 128, '+', 123, '-', 127, '/', 129, ':', 37, '<', 134, '=', 38, '>', 135, ); if (lookahead == '\\') SKIP(4); if (lookahead == '^') ADVANCE(131); if (lookahead == '{') ADVANCE(83); if (lookahead == '|') ADVANCE(35); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(23); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(102); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 24: ADVANCE_MAP( '&', 26, ')', 75, '*', 128, '+', 123, ',', 74, '-', 124, '.', 79, '/', 129, ':', 37, '<', 134, '=', 38, '>', 135, ); if (lookahead == '\\') SKIP(6); if (lookahead == ']') ADVANCE(98); if (lookahead == '^') ADVANCE(131); if (lookahead == '{') ADVANCE(29); if (lookahead == '|') ADVANCE(36); if (lookahead == '}') ADVANCE(84); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(25); if (set_contains(sym__upper_case_identifier_without_leading_whitespace_character_set_1, 651, lookahead)) ADVANCE(77); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 25: ADVANCE_MAP( '&', 26, ')', 75, '*', 128, '+', 123, ',', 74, '-', 124, '/', 129, ':', 37, '<', 134, '=', 38, '>', 135, ); if (lookahead == '\\') SKIP(6); if (lookahead == ']') ADVANCE(98); if (lookahead == '^') ADVANCE(131); if (lookahead == '{') ADVANCE(29); if (lookahead == '|') ADVANCE(36); if (lookahead == '}') ADVANCE(84); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(25); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 26: if (lookahead == '&') ADVANCE(138); END_STATE(); case 27: if (lookahead == '-') ADVANCE(72); END_STATE(); case 28: if (lookahead == '-') ADVANCE(72); if (lookahead == '0') ADVANCE(104); if (lookahead == '>') ADVANCE(117); if (lookahead == '}') ADVANCE(71); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); END_STATE(); case 29: if (lookahead == '-') ADVANCE(70); END_STATE(); case 30: if (lookahead == '-') ADVANCE(87); if (lookahead == '\\') ADVANCE(12); if (lookahead == '{') ADVANCE(88); if (lookahead == '\n' || lookahead == '\r') SKIP(30); if (lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) ADVANCE(89); if (lookahead != 0 && lookahead != '\'') ADVANCE(86); END_STATE(); case 31: if (lookahead == '-') ADVANCE(58); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(107); END_STATE(); case 32: if (lookahead == '-') ADVANCE(27); if (lookahead == '\\') SKIP(11); if (lookahead == '{') ADVANCE(29); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(32); END_STATE(); case 33: if (lookahead == '-') ADVANCE(27); if (lookahead == '\\') SKIP(11); if (lookahead == '{') ADVANCE(29); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(32); if (set_contains(sym__upper_case_identifier_without_leading_whitespace_character_set_1, 651, lookahead)) ADVANCE(77); if (set_contains(sym__lower_case_identifier_without_leading_whitespace_character_set_1, 662, lookahead)) ADVANCE(78); END_STATE(); case 34: if (lookahead == '.') ADVANCE(114); END_STATE(); case 35: if (lookahead == '.') ADVANCE(147); if (lookahead == '=') ADVANCE(148); if (lookahead == '>') ADVANCE(142); if (lookahead == ']') ADVANCE(101); if (lookahead == '|') ADVANCE(139); END_STATE(); case 36: if (lookahead == '.') ADVANCE(147); if (lookahead == '=') ADVANCE(148); if (lookahead == '>') ADVANCE(142); if (lookahead == '|') ADVANCE(139); END_STATE(); case 37: if (lookahead == ':') ADVANCE(99); END_STATE(); case 38: if (lookahead == '=') ADVANCE(132); END_STATE(); case 39: if (lookahead == '>') ADVANCE(145); END_STATE(); case 40: if (lookahead == '>') ADVANCE(146); END_STATE(); case 41: if (lookahead == 'l') ADVANCE(43); END_STATE(); case 42: if (lookahead == 'l') ADVANCE(45); END_STATE(); case 43: if (lookahead == 's') ADVANCE(42); END_STATE(); case 44: if (lookahead == '{') ADVANCE(63); END_STATE(); case 45: if (lookahead == '|') ADVANCE(100); END_STATE(); case 46: if (lookahead == '}') ADVANCE(109); END_STATE(); case 47: if (lookahead == '}') ADVANCE(109); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(46); END_STATE(); case 48: if (lookahead == '}') ADVANCE(109); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(47); END_STATE(); case 49: if (lookahead == '}') ADVANCE(109); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); if (lookahead != 0) ADVANCE(56); END_STATE(); case 50: if (lookahead == '}') ADVANCE(109); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(49); if (lookahead != 0) ADVANCE(56); END_STATE(); case 51: if (lookahead == '}') ADVANCE(109); if (lookahead != 0) ADVANCE(56); END_STATE(); case 52: if (lookahead == '}') ADVANCE(110); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(50); if (lookahead != 0) ADVANCE(56); END_STATE(); case 53: if (lookahead == '}') ADVANCE(110); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(52); if (lookahead != 0) ADVANCE(56); END_STATE(); case 54: if (lookahead == '}') ADVANCE(110); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(53); if (lookahead != 0) ADVANCE(56); END_STATE(); case 55: if (lookahead == '}') ADVANCE(110); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(54); if (lookahead != 0) ADVANCE(56); END_STATE(); case 56: if (lookahead == '}') ADVANCE(110); if (lookahead != 0) ADVANCE(56); END_STATE(); case 57: if (('0' <= lookahead && lookahead <= '9')) ADVANCE(106); END_STATE(); case 58: if (('0' <= lookahead && lookahead <= '9')) ADVANCE(107); END_STATE(); case 59: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(108); END_STATE(); case 60: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(48); END_STATE(); case 61: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(60); END_STATE(); case 62: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(61); END_STATE(); case 63: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(62); END_STATE(); case 64: if (eof) ADVANCE(69); if (lookahead == '\n') SKIP(68); END_STATE(); case 65: if (eof) ADVANCE(69); if (lookahead == '\n') SKIP(68); if (lookahead == '\r') SKIP(64); END_STATE(); case 66: if (eof) ADVANCE(69); ADVANCE_MAP( '"', 92, '&', 26, '\'', 85, '(', 73, ')', 75, '*', 128, '+', 123, ',', 74, '-', 125, '.', 122, '/', 129, '0', 104, ':', 118, '<', 134, '=', 116, '>', 135, '[', 97, '\\', 2, ']', 98, '^', 131, '_', 120, '{', 83, '|', 82, '}', 84, ); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(66); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(102); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 67: if (eof) ADVANCE(69); ADVANCE_MAP( '"', 92, '\'', 85, '(', 73, ')', 75, ',', 74, '-', 28, '.', 79, '0', 104, ':', 118, '=', 115, '[', 96, ); if (lookahead == '\\') SKIP(65); if (lookahead == ']') ADVANCE(98); if (lookahead == '_') ADVANCE(120); if (lookahead == '{') ADVANCE(83); if (lookahead == '|') ADVANCE(81); if (lookahead == '}') ADVANCE(84); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(68); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(102); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 68: if (eof) ADVANCE(69); ADVANCE_MAP( '"', 92, '\'', 85, '(', 73, ')', 75, ',', 74, '-', 28, '0', 104, ':', 118, '=', 115, '[', 96, ); if (lookahead == '\\') SKIP(65); if (lookahead == ']') ADVANCE(98); if (lookahead == '_') ADVANCE(120); if (lookahead == '{') ADVANCE(83); if (lookahead == '|') ADVANCE(81); if (lookahead == '}') ADVANCE(84); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(68); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); if (set_contains(sym_upper_case_identifier_character_set_1, 636, lookahead)) ADVANCE(102); if (set_contains(sym_lower_case_identifier_character_set_1, 642, lookahead)) ADVANCE(103); END_STATE(); case 69: ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 70: ACCEPT_TOKEN(anon_sym_LBRACE_DASH); END_STATE(); case 71: ACCEPT_TOKEN(anon_sym_DASH_RBRACE); END_STATE(); case 72: ACCEPT_TOKEN(sym_line_comment); if (lookahead != 0 && lookahead != '\n' && lookahead != '\r') ADVANCE(72); END_STATE(); case 73: ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 74: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 75: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 76: ACCEPT_TOKEN(sym__upper_case_identifier_without_leading_whitespace); if ((0x870 <= lookahead && lookahead <= 0x887) || (0x889 <= lookahead && lookahead <= 0x88e) || lookahead == 0x8b5 || (0x8be <= lookahead && lookahead <= 0x8c9) || lookahead == 0xc5d || lookahead == 0xcdd || lookahead == 0xd04 || lookahead == 0x170d || lookahead == 0x171f || lookahead == 0x1b4c || lookahead == 0x1c89 || lookahead == 0x1c8a || lookahead == 0x2c2f || lookahead == 0x2c5f || (0x31bb <= lookahead && lookahead <= 0x31bf) || (0x4db6 <= lookahead && lookahead <= 0x4dbf) || (0x9ff0 <= lookahead && lookahead <= 0x9fff) || lookahead == 0xa7c0 || lookahead == 0xa7c1 || (0xa7c7 <= lookahead && lookahead <= 0xa7cd) || lookahead == 0xa7d0 || lookahead == 0xa7d1 || lookahead == 0xa7d3 || (0xa7d5 <= lookahead && lookahead <= 0xa7dc) || (0xa7f2 <= lookahead && lookahead <= 0xa7f6) || lookahead == 0xab68 || lookahead == 0xab69 || (0x10570 <= lookahead && lookahead <= 0x1057a) || (0x1057c <= lookahead && lookahead <= 0x1058a) || (0x1058c <= lookahead && lookahead <= 0x10592) || lookahead == 0x10594 || lookahead == 0x10595 || (0x10597 <= lookahead && lookahead <= 0x105a1) || (0x105a3 <= lookahead && lookahead <= 0x105b1) || (0x105b3 <= lookahead && lookahead <= 0x105b9) || lookahead == 0x105bb || lookahead == 0x105bc || (0x105c0 <= lookahead && lookahead <= 0x105f3) || (0x10780 <= lookahead && lookahead <= 0x10785) || (0x10787 <= lookahead && lookahead <= 0x107b0) || (0x107b2 <= lookahead && lookahead <= 0x107ba) || (0x10d4a <= lookahead && lookahead <= 0x10d65) || (0x10d6f <= lookahead && lookahead <= 0x10d85) || (0x10e80 <= lookahead && lookahead <= 0x10ea9) || lookahead == 0x10eb0 || lookahead == 0x10eb1 || (0x10ec2 <= lookahead && lookahead <= 0x10ec4) || (0x10f70 <= lookahead && lookahead <= 0x10f81) || (0x10fb0 <= lookahead && lookahead <= 0x10fc4) || lookahead == 0x11071 || lookahead == 0x11072 || lookahead == 0x11075 || lookahead == 0x11147 || lookahead == 0x1123f || lookahead == 0x11240 || (0x11380 <= lookahead && lookahead <= 0x11389) || lookahead == 0x1138b || lookahead == 0x1138e || (0x11390 <= lookahead && lookahead <= 0x113b5) || lookahead == 0x113b7 || lookahead == 0x113d1 || lookahead == 0x113d3 || lookahead == 0x11460 || lookahead == 0x11461 || (0x11740 <= lookahead && lookahead <= 0x11746) || (0x11900 <= lookahead && lookahead <= 0x11906) || lookahead == 0x11909 || (0x1190c <= lookahead && lookahead <= 0x11913) || lookahead == 0x11915 || lookahead == 0x11916 || (0x11918 <= lookahead && lookahead <= 0x1192f) || lookahead == 0x1193f || lookahead == 0x11941 || (0x11ab0 <= lookahead && lookahead <= 0x11abf) || (0x11bc0 <= lookahead && lookahead <= 0x11be0) || lookahead == 0x11f02 || (0x11f04 <= lookahead && lookahead <= 0x11f10) || (0x11f12 <= lookahead && lookahead <= 0x11f33) || lookahead == 0x11fb0 || (0x12f90 <= lookahead && lookahead <= 0x12ff0) || lookahead == 0x1342f || (0x13441 <= lookahead && lookahead <= 0x13446) || (0x13460 <= lookahead && lookahead <= 0x143fa) || (0x16100 <= lookahead && lookahead <= 0x1611d) || (0x16a70 <= lookahead && lookahead <= 0x16abe) || (0x16d40 <= lookahead && lookahead <= 0x16d6c) || (0x18af3 <= lookahead && lookahead <= 0x18cd5) || (0x18cff <= lookahead && lookahead <= 0x18d08) || (0x1aff0 <= lookahead && lookahead <= 0x1aff3) || (0x1aff5 <= lookahead && lookahead <= 0x1affb) || lookahead == 0x1affd || lookahead == 0x1affe || (0x1b11f <= lookahead && lookahead <= 0x1b122) || lookahead == 0x1b132 || lookahead == 0x1b155 || (0x1df00 <= lookahead && lookahead <= 0x1df1e) || (0x1df25 <= lookahead && lookahead <= 0x1df2a) || (0x1e030 <= lookahead && lookahead <= 0x1e06d) || (0x1e290 <= lookahead && lookahead <= 0x1e2ad) || (0x1e4d0 <= lookahead && lookahead <= 0x1e4eb) || (0x1e5d0 <= lookahead && lookahead <= 0x1e5ed) || lookahead == 0x1e5f0 || (0x1e7e0 <= lookahead && lookahead <= 0x1e7e6) || (0x1e7e8 <= lookahead && lookahead <= 0x1e7eb) || lookahead == 0x1e7ed || lookahead == 0x1e7ee || (0x1e7f0 <= lookahead && lookahead <= 0x1e7fe) || (0x2a6d7 <= lookahead && lookahead <= 0x2a6df) || (0x2b735 <= lookahead && lookahead <= 0x2b739) || (0x2ebf0 <= lookahead && lookahead <= 0x2ee5d) || (0x30000 <= lookahead && lookahead <= 0x3134a) || (0x31350 <= lookahead && lookahead <= 0x323af)) ADVANCE(77); if (set_contains(sym_upper_case_identifier_character_set_2, 611, lookahead)) ADVANCE(76); END_STATE(); case 77: ACCEPT_TOKEN(sym__upper_case_identifier_without_leading_whitespace); if (set_contains(sym__upper_case_identifier_without_leading_whitespace_character_set_2, 679, lookahead)) ADVANCE(77); END_STATE(); case 78: ACCEPT_TOKEN(sym__lower_case_identifier_without_leading_whitespace); if (set_contains(sym__upper_case_identifier_without_leading_whitespace_character_set_2, 679, lookahead)) ADVANCE(78); END_STATE(); case 79: ACCEPT_TOKEN(anon_sym_DOT); END_STATE(); case 80: ACCEPT_TOKEN(anon_sym_DOT); if (lookahead == '.') ADVANCE(114); END_STATE(); case 81: ACCEPT_TOKEN(anon_sym_PIPE); END_STATE(); case 82: ACCEPT_TOKEN(anon_sym_PIPE); if (lookahead == '.') ADVANCE(147); if (lookahead == '=') ADVANCE(148); if (lookahead == '>') ADVANCE(142); if (lookahead == ']') ADVANCE(101); if (lookahead == '|') ADVANCE(139); END_STATE(); case 83: ACCEPT_TOKEN(anon_sym_LBRACE); if (lookahead == '-') ADVANCE(70); END_STATE(); case 84: ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 85: ACCEPT_TOKEN(anon_sym_SQUOTE); END_STATE(); case 86: ACCEPT_TOKEN(aux_sym_char_constant_expr_token1); END_STATE(); case 87: ACCEPT_TOKEN(aux_sym_char_constant_expr_token1); if (lookahead == '-') ADVANCE(72); END_STATE(); case 88: ACCEPT_TOKEN(aux_sym_char_constant_expr_token1); if (lookahead == '-') ADVANCE(70); END_STATE(); case 89: ACCEPT_TOKEN(aux_sym_char_constant_expr_token1); if (lookahead == '-') ADVANCE(87); if (lookahead == '\\') ADVANCE(12); if (lookahead == '{') ADVANCE(88); if (lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) ADVANCE(89); if (lookahead != 0 && lookahead != '\n' && lookahead != '\r' && lookahead != '\'') ADVANCE(86); END_STATE(); case 90: ACCEPT_TOKEN(anon_sym_DQUOTE_DQUOTE_DQUOTE); END_STATE(); case 91: ACCEPT_TOKEN(anon_sym_DQUOTE); END_STATE(); case 92: ACCEPT_TOKEN(anon_sym_DQUOTE); if (lookahead == '"') ADVANCE(17); END_STATE(); case 93: ACCEPT_TOKEN(aux_sym_string_constant_expr_token1); if (lookahead == '-') ADVANCE(94); if (lookahead == '{') ADVANCE(94); if (lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) ADVANCE(93); if (lookahead != 0 && lookahead != '\n' && lookahead != '\r' && lookahead != '"' && lookahead != '\\') ADVANCE(95); END_STATE(); case 94: ACCEPT_TOKEN(aux_sym_string_constant_expr_token1); if (lookahead == '-') ADVANCE(95); if (lookahead != 0 && lookahead != '\n' && lookahead != '\r' && lookahead != '"' && lookahead != '\\') ADVANCE(95); END_STATE(); case 95: ACCEPT_TOKEN(aux_sym_string_constant_expr_token1); if (lookahead != 0 && lookahead != '\n' && lookahead != '\r' && lookahead != '"' && lookahead != '\\') ADVANCE(95); END_STATE(); case 96: ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 97: ACCEPT_TOKEN(anon_sym_LBRACK); if (lookahead == 'g') ADVANCE(41); END_STATE(); case 98: ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 99: ACCEPT_TOKEN(anon_sym_COLON_COLON); END_STATE(); case 100: ACCEPT_TOKEN(anon_sym_LBRACKglsl_PIPE); END_STATE(); case 101: ACCEPT_TOKEN(anon_sym_PIPE_RBRACK); END_STATE(); case 102: ACCEPT_TOKEN(sym_upper_case_identifier); if (set_contains(sym_upper_case_identifier_character_set_2, 611, lookahead)) ADVANCE(102); END_STATE(); case 103: ACCEPT_TOKEN(sym_lower_case_identifier); if (set_contains(sym_upper_case_identifier_character_set_2, 611, lookahead)) ADVANCE(103); END_STATE(); case 104: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '.') ADVANCE(57); if (lookahead == 'e') ADVANCE(31); if (lookahead == 'x') ADVANCE(59); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(105); END_STATE(); case 105: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '.') ADVANCE(57); if (lookahead == 'e') ADVANCE(31); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(105); END_STATE(); case 106: ACCEPT_TOKEN(sym_number_literal); if (lookahead == 'e') ADVANCE(31); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(106); END_STATE(); case 107: ACCEPT_TOKEN(sym_number_literal); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(107); END_STATE(); case 108: ACCEPT_TOKEN(sym_number_literal); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(108); END_STATE(); case 109: ACCEPT_TOKEN(sym_string_escape); END_STATE(); case 110: ACCEPT_TOKEN(sym_invalid_string_escape); END_STATE(); case 111: ACCEPT_TOKEN(sym_invalid_string_escape); if (lookahead == '-') ADVANCE(87); if (lookahead == '\\') ADVANCE(12); if (lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) ADVANCE(89); END_STATE(); case 112: ACCEPT_TOKEN(sym_invalid_string_escape); if (lookahead == '-') ADVANCE(27); if (lookahead == '\\') ADVANCE(9); END_STATE(); case 113: ACCEPT_TOKEN(sym_invalid_string_escape); if (lookahead == '{') ADVANCE(55); END_STATE(); case 114: ACCEPT_TOKEN(sym_double_dot); END_STATE(); case 115: ACCEPT_TOKEN(sym_eq); END_STATE(); case 116: ACCEPT_TOKEN(sym_eq); if (lookahead == '=') ADVANCE(132); END_STATE(); case 117: ACCEPT_TOKEN(sym_arrow); END_STATE(); case 118: ACCEPT_TOKEN(sym_colon); if (lookahead == ':') ADVANCE(99); END_STATE(); case 119: ACCEPT_TOKEN(sym_backslash); END_STATE(); case 120: ACCEPT_TOKEN(sym_underscore); END_STATE(); case 121: ACCEPT_TOKEN(sym_dot); END_STATE(); case 122: ACCEPT_TOKEN(sym_dot); if (lookahead == '.') ADVANCE(114); END_STATE(); case 123: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '+') ADVANCE(140); END_STATE(); case 124: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(72); END_STATE(); case 125: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(72); if (lookahead == '0') ADVANCE(104); if (lookahead == '>') ADVANCE(117); if (lookahead == '}') ADVANCE(71); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); END_STATE(); case 126: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(72); if (lookahead == '0') ADVANCE(104); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(105); END_STATE(); case 127: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(72); if (lookahead == '>') ADVANCE(117); END_STATE(); case 128: ACCEPT_TOKEN(anon_sym_STAR); END_STATE(); case 129: ACCEPT_TOKEN(anon_sym_SLASH); if (lookahead == '/') ADVANCE(130); if (lookahead == '=') ADVANCE(133); END_STATE(); case 130: ACCEPT_TOKEN(anon_sym_SLASH_SLASH); END_STATE(); case 131: ACCEPT_TOKEN(anon_sym_CARET); END_STATE(); case 132: ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); case 133: ACCEPT_TOKEN(anon_sym_SLASH_EQ); END_STATE(); case 134: ACCEPT_TOKEN(anon_sym_LT); if (lookahead == '/') ADVANCE(39); if (lookahead == '<') ADVANCE(143); if (lookahead == '=') ADVANCE(136); if (lookahead == '?') ADVANCE(40); if (lookahead == '|') ADVANCE(141); END_STATE(); case 135: ACCEPT_TOKEN(anon_sym_GT); if (lookahead == '=') ADVANCE(137); if (lookahead == '>') ADVANCE(144); END_STATE(); case 136: ACCEPT_TOKEN(anon_sym_LT_EQ); END_STATE(); case 137: ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); case 138: ACCEPT_TOKEN(anon_sym_AMP_AMP); END_STATE(); case 139: ACCEPT_TOKEN(anon_sym_PIPE_PIPE); END_STATE(); case 140: ACCEPT_TOKEN(anon_sym_PLUS_PLUS); END_STATE(); case 141: ACCEPT_TOKEN(anon_sym_LT_PIPE); END_STATE(); case 142: ACCEPT_TOKEN(anon_sym_PIPE_GT); END_STATE(); case 143: ACCEPT_TOKEN(anon_sym_LT_LT); END_STATE(); case 144: ACCEPT_TOKEN(anon_sym_GT_GT); END_STATE(); case 145: ACCEPT_TOKEN(anon_sym_LT_SLASH_GT); END_STATE(); case 146: ACCEPT_TOKEN(anon_sym_LT_QMARK_GT); END_STATE(); case 147: ACCEPT_TOKEN(anon_sym_PIPE_DOT); END_STATE(); case 148: ACCEPT_TOKEN(anon_sym_PIPE_EQ); END_STATE(); default: return false; } } static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: if (lookahead == '\\') SKIP(1); if (lookahead == 'a') ADVANCE(2); if (lookahead == 'c') ADVANCE(3); if (lookahead == 'e') ADVANCE(4); if (lookahead == 'i') ADVANCE(5); if (lookahead == 'l') ADVANCE(6); if (lookahead == 'm') ADVANCE(7); if (lookahead == 'n') ADVANCE(8); if (lookahead == 'o') ADVANCE(9); if (lookahead == 'p') ADVANCE(10); if (lookahead == 'r') ADVANCE(11); if (lookahead == 't') ADVANCE(12); if (lookahead == 'w') ADVANCE(13); if (lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x200b || lookahead == 0x2060 || lookahead == 0xfeff) SKIP(0); END_STATE(); case 1: if (lookahead == '\n') SKIP(0); if (lookahead == '\r') SKIP(14); END_STATE(); case 2: if (lookahead == 'l') ADVANCE(15); if (lookahead == 's') ADVANCE(16); END_STATE(); case 3: if (lookahead == 'a') ADVANCE(17); END_STATE(); case 4: if (lookahead == 'f') ADVANCE(18); if (lookahead == 'l') ADVANCE(19); if (lookahead == 'x') ADVANCE(20); END_STATE(); case 5: if (lookahead == 'f') ADVANCE(21); if (lookahead == 'm') ADVANCE(22); if (lookahead == 'n') ADVANCE(23); END_STATE(); case 6: if (lookahead == 'e') ADVANCE(24); END_STATE(); case 7: if (lookahead == 'o') ADVANCE(25); END_STATE(); case 8: if (lookahead == 'o') ADVANCE(26); END_STATE(); case 9: if (lookahead == 'f') ADVANCE(27); END_STATE(); case 10: if (lookahead == 'o') ADVANCE(28); END_STATE(); case 11: if (lookahead == 'i') ADVANCE(29); END_STATE(); case 12: if (lookahead == 'h') ADVANCE(30); if (lookahead == 'y') ADVANCE(31); END_STATE(); case 13: if (lookahead == 'h') ADVANCE(32); END_STATE(); case 14: if (lookahead == '\n') SKIP(0); END_STATE(); case 15: if (lookahead == 'i') ADVANCE(33); END_STATE(); case 16: ACCEPT_TOKEN(sym_as); END_STATE(); case 17: if (lookahead == 's') ADVANCE(34); END_STATE(); case 18: if (lookahead == 'f') ADVANCE(35); END_STATE(); case 19: if (lookahead == 's') ADVANCE(36); END_STATE(); case 20: if (lookahead == 'p') ADVANCE(37); END_STATE(); case 21: ACCEPT_TOKEN(anon_sym_if); END_STATE(); case 22: if (lookahead == 'p') ADVANCE(38); END_STATE(); case 23: ACCEPT_TOKEN(anon_sym_in); if (lookahead == 'f') ADVANCE(39); END_STATE(); case 24: if (lookahead == 'f') ADVANCE(40); if (lookahead == 't') ADVANCE(41); END_STATE(); case 25: if (lookahead == 'd') ADVANCE(42); END_STATE(); case 26: if (lookahead == 'n') ADVANCE(43); END_STATE(); case 27: ACCEPT_TOKEN(sym_of); END_STATE(); case 28: if (lookahead == 'r') ADVANCE(44); END_STATE(); case 29: if (lookahead == 'g') ADVANCE(45); END_STATE(); case 30: if (lookahead == 'e') ADVANCE(46); END_STATE(); case 31: if (lookahead == 'p') ADVANCE(47); END_STATE(); case 32: if (lookahead == 'e') ADVANCE(48); END_STATE(); case 33: if (lookahead == 'a') ADVANCE(49); END_STATE(); case 34: if (lookahead == 'e') ADVANCE(50); END_STATE(); case 35: if (lookahead == 'e') ADVANCE(51); END_STATE(); case 36: if (lookahead == 'e') ADVANCE(52); END_STATE(); case 37: if (lookahead == 'o') ADVANCE(53); END_STATE(); case 38: if (lookahead == 'o') ADVANCE(54); END_STATE(); case 39: if (lookahead == 'i') ADVANCE(55); END_STATE(); case 40: if (lookahead == 't') ADVANCE(56); END_STATE(); case 41: ACCEPT_TOKEN(anon_sym_let); END_STATE(); case 42: if (lookahead == 'u') ADVANCE(57); END_STATE(); case 43: ACCEPT_TOKEN(anon_sym_non); END_STATE(); case 44: if (lookahead == 't') ADVANCE(58); END_STATE(); case 45: if (lookahead == 'h') ADVANCE(59); END_STATE(); case 46: if (lookahead == 'n') ADVANCE(60); END_STATE(); case 47: if (lookahead == 'e') ADVANCE(61); END_STATE(); case 48: if (lookahead == 'r') ADVANCE(62); END_STATE(); case 49: if (lookahead == 's') ADVANCE(63); END_STATE(); case 50: ACCEPT_TOKEN(sym_case); END_STATE(); case 51: if (lookahead == 'c') ADVANCE(64); END_STATE(); case 52: ACCEPT_TOKEN(anon_sym_else); END_STATE(); case 53: if (lookahead == 's') ADVANCE(65); END_STATE(); case 54: if (lookahead == 'r') ADVANCE(66); END_STATE(); case 55: if (lookahead == 'x') ADVANCE(67); END_STATE(); case 56: ACCEPT_TOKEN(anon_sym_left); END_STATE(); case 57: if (lookahead == 'l') ADVANCE(68); END_STATE(); case 58: ACCEPT_TOKEN(sym_port); END_STATE(); case 59: if (lookahead == 't') ADVANCE(69); END_STATE(); case 60: ACCEPT_TOKEN(anon_sym_then); END_STATE(); case 61: ACCEPT_TOKEN(sym_type); END_STATE(); case 62: if (lookahead == 'e') ADVANCE(70); END_STATE(); case 63: ACCEPT_TOKEN(sym_alias); END_STATE(); case 64: if (lookahead == 't') ADVANCE(71); END_STATE(); case 65: if (lookahead == 'i') ADVANCE(72); END_STATE(); case 66: if (lookahead == 't') ADVANCE(73); END_STATE(); case 67: ACCEPT_TOKEN(sym_infix); END_STATE(); case 68: if (lookahead == 'e') ADVANCE(74); END_STATE(); case 69: ACCEPT_TOKEN(anon_sym_right); END_STATE(); case 70: ACCEPT_TOKEN(sym_where); END_STATE(); case 71: ACCEPT_TOKEN(sym_effect); END_STATE(); case 72: if (lookahead == 'n') ADVANCE(75); END_STATE(); case 73: ACCEPT_TOKEN(sym_import); END_STATE(); case 74: ACCEPT_TOKEN(sym_module); END_STATE(); case 75: if (lookahead == 'g') ADVANCE(76); END_STATE(); case 76: ACCEPT_TOKEN(sym_exposing); END_STATE(); default: return false; } } static const TSLexerMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0, .external_lex_state = 1}, [1] = {.lex_state = 67}, [2] = {.lex_state = 15, .external_lex_state = 2}, [3] = {.lex_state = 15, .external_lex_state = 2}, [4] = {.lex_state = 15, .external_lex_state = 2}, [5] = {.lex_state = 15, .external_lex_state = 2}, [6] = {.lex_state = 15, .external_lex_state = 2}, [7] = {.lex_state = 15, .external_lex_state = 2}, [8] = {.lex_state = 15, .external_lex_state = 2}, [9] = {.lex_state = 15, .external_lex_state = 2}, [10] = {.lex_state = 15, .external_lex_state = 2}, [11] = {.lex_state = 15, .external_lex_state = 2}, [12] = {.lex_state = 15, .external_lex_state = 2}, [13] = {.lex_state = 15, .external_lex_state = 2}, [14] = {.lex_state = 15, .external_lex_state = 3}, [15] = {.lex_state = 15, .external_lex_state = 3}, [16] = {.lex_state = 15, .external_lex_state = 3}, [17] = {.lex_state = 15, .external_lex_state = 4}, [18] = {.lex_state = 15, .external_lex_state = 4}, [19] = {.lex_state = 15, .external_lex_state = 4}, [20] = {.lex_state = 14, .external_lex_state = 2}, [21] = {.lex_state = 14, .external_lex_state = 2}, [22] = {.lex_state = 14, .external_lex_state = 2}, [23] = {.lex_state = 14, .external_lex_state = 2}, [24] = {.lex_state = 14, .external_lex_state = 2}, [25] = {.lex_state = 15, .external_lex_state = 2}, [26] = {.lex_state = 15, .external_lex_state = 2}, [27] = {.lex_state = 15, .external_lex_state = 2}, [28] = {.lex_state = 14, .external_lex_state = 2}, [29] = {.lex_state = 15, .external_lex_state = 2}, [30] = {.lex_state = 14, .external_lex_state = 2}, [31] = {.lex_state = 14, .external_lex_state = 2}, [32] = {.lex_state = 14, .external_lex_state = 2}, [33] = {.lex_state = 14, .external_lex_state = 2}, [34] = {.lex_state = 14, .external_lex_state = 2}, [35] = {.lex_state = 14, .external_lex_state = 2}, [36] = {.lex_state = 15, .external_lex_state = 2}, [37] = {.lex_state = 14, .external_lex_state = 2}, [38] = {.lex_state = 15, .external_lex_state = 2}, [39] = {.lex_state = 15, .external_lex_state = 2}, [40] = {.lex_state = 15, .external_lex_state = 2}, [41] = {.lex_state = 14, .external_lex_state = 2}, [42] = {.lex_state = 14, .external_lex_state = 2}, [43] = {.lex_state = 14, .external_lex_state = 2}, [44] = {.lex_state = 15, .external_lex_state = 2}, [45] = {.lex_state = 14, .external_lex_state = 2}, [46] = {.lex_state = 14, .external_lex_state = 2}, [47] = {.lex_state = 14, .external_lex_state = 2}, [48] = {.lex_state = 15, .external_lex_state = 2}, [49] = {.lex_state = 15, .external_lex_state = 2}, [50] = {.lex_state = 15, .external_lex_state = 2}, [51] = {.lex_state = 15, .external_lex_state = 2}, [52] = {.lex_state = 15, .external_lex_state = 2}, [53] = {.lex_state = 15, .external_lex_state = 2}, [54] = {.lex_state = 15, .external_lex_state = 2}, [55] = {.lex_state = 15, .external_lex_state = 2}, [56] = {.lex_state = 15, .external_lex_state = 2}, [57] = {.lex_state = 15, .external_lex_state = 2}, [58] = {.lex_state = 15, .external_lex_state = 2}, [59] = {.lex_state = 15, .external_lex_state = 2}, [60] = {.lex_state = 15, .external_lex_state = 2}, [61] = {.lex_state = 15, .external_lex_state = 2}, [62] = {.lex_state = 15, .external_lex_state = 2}, [63] = {.lex_state = 15, .external_lex_state = 2}, [64] = {.lex_state = 15, .external_lex_state = 2}, [65] = {.lex_state = 15, .external_lex_state = 2}, [66] = {.lex_state = 15, .external_lex_state = 2}, [67] = {.lex_state = 15, .external_lex_state = 2}, [68] = {.lex_state = 15, .external_lex_state = 2}, [69] = {.lex_state = 15, .external_lex_state = 2}, [70] = {.lex_state = 15, .external_lex_state = 2}, [71] = {.lex_state = 15, .external_lex_state = 2}, [72] = {.lex_state = 15, .external_lex_state = 2}, [73] = {.lex_state = 15, .external_lex_state = 2}, [74] = {.lex_state = 15, .external_lex_state = 2}, [75] = {.lex_state = 15, .external_lex_state = 2}, [76] = {.lex_state = 15, .external_lex_state = 2}, [77] = {.lex_state = 15, .external_lex_state = 2}, [78] = {.lex_state = 15, .external_lex_state = 2}, [79] = {.lex_state = 15, .external_lex_state = 2}, [80] = {.lex_state = 15, .external_lex_state = 2}, [81] = {.lex_state = 15, .external_lex_state = 2}, [82] = {.lex_state = 15, .external_lex_state = 2}, [83] = {.lex_state = 15, .external_lex_state = 2}, [84] = {.lex_state = 15, .external_lex_state = 2}, [85] = {.lex_state = 15, .external_lex_state = 2}, [86] = {.lex_state = 15, .external_lex_state = 2}, [87] = {.lex_state = 15, .external_lex_state = 2}, [88] = {.lex_state = 15, .external_lex_state = 2}, [89] = {.lex_state = 15, .external_lex_state = 2}, [90] = {.lex_state = 15, .external_lex_state = 2}, [91] = {.lex_state = 15, .external_lex_state = 2}, [92] = {.lex_state = 15, .external_lex_state = 2}, [93] = {.lex_state = 15, .external_lex_state = 2}, [94] = {.lex_state = 14, .external_lex_state = 3}, [95] = {.lex_state = 15, .external_lex_state = 2}, [96] = {.lex_state = 14, .external_lex_state = 3}, [97] = {.lex_state = 15, .external_lex_state = 2}, [98] = {.lex_state = 15, .external_lex_state = 2}, [99] = {.lex_state = 15, .external_lex_state = 2}, [100] = {.lex_state = 15, .external_lex_state = 2}, [101] = {.lex_state = 15, .external_lex_state = 2}, [102] = {.lex_state = 15, .external_lex_state = 2}, [103] = {.lex_state = 15, .external_lex_state = 2}, [104] = {.lex_state = 15, .external_lex_state = 2}, [105] = {.lex_state = 15, .external_lex_state = 2}, [106] = {.lex_state = 15, .external_lex_state = 2}, [107] = {.lex_state = 15, .external_lex_state = 2}, [108] = {.lex_state = 15, .external_lex_state = 2}, [109] = {.lex_state = 15, .external_lex_state = 2}, [110] = {.lex_state = 15, .external_lex_state = 2}, [111] = {.lex_state = 15, .external_lex_state = 2}, [112] = {.lex_state = 15, .external_lex_state = 2}, [113] = {.lex_state = 15, .external_lex_state = 2}, [114] = {.lex_state = 15, .external_lex_state = 2}, [115] = {.lex_state = 15, .external_lex_state = 2}, [116] = {.lex_state = 15, .external_lex_state = 2}, [117] = {.lex_state = 15, .external_lex_state = 2}, [118] = {.lex_state = 15, .external_lex_state = 2}, [119] = {.lex_state = 15, .external_lex_state = 2}, [120] = {.lex_state = 15, .external_lex_state = 2}, [121] = {.lex_state = 15, .external_lex_state = 2}, [122] = {.lex_state = 15, .external_lex_state = 2}, [123] = {.lex_state = 15, .external_lex_state = 2}, [124] = {.lex_state = 15, .external_lex_state = 2}, [125] = {.lex_state = 15, .external_lex_state = 2}, [126] = {.lex_state = 15, .external_lex_state = 2}, [127] = {.lex_state = 15, .external_lex_state = 2}, [128] = {.lex_state = 15, .external_lex_state = 2}, [129] = {.lex_state = 15, .external_lex_state = 2}, [130] = {.lex_state = 15, .external_lex_state = 2}, [131] = {.lex_state = 15, .external_lex_state = 3}, [132] = {.lex_state = 15, .external_lex_state = 3}, [133] = {.lex_state = 15, .external_lex_state = 3}, [134] = {.lex_state = 14, .external_lex_state = 3}, [135] = {.lex_state = 14, .external_lex_state = 3}, [136] = {.lex_state = 14, .external_lex_state = 3}, [137] = {.lex_state = 14, .external_lex_state = 4}, [138] = {.lex_state = 15, .external_lex_state = 2}, [139] = {.lex_state = 15, .external_lex_state = 2}, [140] = {.lex_state = 15, .external_lex_state = 2}, [141] = {.lex_state = 15, .external_lex_state = 2}, [142] = {.lex_state = 15, .external_lex_state = 2}, [143] = {.lex_state = 14, .external_lex_state = 3}, [144] = {.lex_state = 15, .external_lex_state = 2}, [145] = {.lex_state = 14, .external_lex_state = 4}, [146] = {.lex_state = 14, .external_lex_state = 3}, [147] = {.lex_state = 14, .external_lex_state = 3}, [148] = {.lex_state = 14, .external_lex_state = 3}, [149] = {.lex_state = 14, .external_lex_state = 3}, [150] = {.lex_state = 14, .external_lex_state = 4}, [151] = {.lex_state = 14, .external_lex_state = 4}, [152] = {.lex_state = 15, .external_lex_state = 4}, [153] = {.lex_state = 15, .external_lex_state = 4}, [154] = {.lex_state = 14, .external_lex_state = 3}, [155] = {.lex_state = 14, .external_lex_state = 3}, [156] = {.lex_state = 14, .external_lex_state = 3}, [157] = {.lex_state = 14, .external_lex_state = 4}, [158] = {.lex_state = 14, .external_lex_state = 3}, [159] = {.lex_state = 14, .external_lex_state = 3}, [160] = {.lex_state = 14, .external_lex_state = 3}, [161] = {.lex_state = 15, .external_lex_state = 4}, [162] = {.lex_state = 14, .external_lex_state = 3}, [163] = {.lex_state = 14, .external_lex_state = 3}, [164] = {.lex_state = 14, .external_lex_state = 3}, [165] = {.lex_state = 15, .external_lex_state = 3}, [166] = {.lex_state = 15, .external_lex_state = 2}, [167] = {.lex_state = 15, .external_lex_state = 2}, [168] = {.lex_state = 15, .external_lex_state = 3}, [169] = {.lex_state = 15, .external_lex_state = 3}, [170] = {.lex_state = 15, .external_lex_state = 3}, [171] = {.lex_state = 15, .external_lex_state = 3}, [172] = {.lex_state = 15, .external_lex_state = 3}, [173] = {.lex_state = 15, .external_lex_state = 2}, [174] = {.lex_state = 15, .external_lex_state = 3}, [175] = {.lex_state = 15, .external_lex_state = 3}, [176] = {.lex_state = 15, .external_lex_state = 3}, [177] = {.lex_state = 15, .external_lex_state = 3}, [178] = {.lex_state = 15, .external_lex_state = 3}, [179] = {.lex_state = 15, .external_lex_state = 2}, [180] = {.lex_state = 15, .external_lex_state = 3}, [181] = {.lex_state = 15, .external_lex_state = 3}, [182] = {.lex_state = 15, .external_lex_state = 3}, [183] = {.lex_state = 15, .external_lex_state = 3}, [184] = {.lex_state = 15, .external_lex_state = 3}, [185] = {.lex_state = 15, .external_lex_state = 3}, [186] = {.lex_state = 15, .external_lex_state = 3}, [187] = {.lex_state = 15, .external_lex_state = 2}, [188] = {.lex_state = 15, .external_lex_state = 3}, [189] = {.lex_state = 15, .external_lex_state = 3}, [190] = {.lex_state = 15, .external_lex_state = 3}, [191] = {.lex_state = 15, .external_lex_state = 3}, [192] = {.lex_state = 15, .external_lex_state = 3}, [193] = {.lex_state = 14, .external_lex_state = 4}, [194] = {.lex_state = 15, .external_lex_state = 3}, [195] = {.lex_state = 15, .external_lex_state = 3}, [196] = {.lex_state = 15, .external_lex_state = 3}, [197] = {.lex_state = 15, .external_lex_state = 3}, [198] = {.lex_state = 15, .external_lex_state = 3}, [199] = {.lex_state = 15, .external_lex_state = 3}, [200] = {.lex_state = 15, .external_lex_state = 3}, [201] = {.lex_state = 15, .external_lex_state = 3}, [202] = {.lex_state = 15, .external_lex_state = 3}, [203] = {.lex_state = 15, .external_lex_state = 3}, [204] = {.lex_state = 15, .external_lex_state = 3}, [205] = {.lex_state = 15, .external_lex_state = 3}, [206] = {.lex_state = 15, .external_lex_state = 2}, [207] = {.lex_state = 14, .external_lex_state = 4}, [208] = {.lex_state = 14, .external_lex_state = 4}, [209] = {.lex_state = 14, .external_lex_state = 4}, [210] = {.lex_state = 67}, [211] = {.lex_state = 67}, [212] = {.lex_state = 14, .external_lex_state = 4}, [213] = {.lex_state = 14, .external_lex_state = 4}, [214] = {.lex_state = 14, .external_lex_state = 4}, [215] = {.lex_state = 15, .external_lex_state = 2}, [216] = {.lex_state = 67}, [217] = {.lex_state = 14, .external_lex_state = 4}, [218] = {.lex_state = 14, .external_lex_state = 4}, [219] = {.lex_state = 14, .external_lex_state = 4}, [220] = {.lex_state = 15, .external_lex_state = 2}, [221] = {.lex_state = 14, .external_lex_state = 4}, [222] = {.lex_state = 14, .external_lex_state = 4}, [223] = {.lex_state = 14, .external_lex_state = 4}, [224] = {.lex_state = 15, .external_lex_state = 2}, [225] = {.lex_state = 14, .external_lex_state = 4}, [226] = {.lex_state = 15, .external_lex_state = 2}, [227] = {.lex_state = 15, .external_lex_state = 2}, [228] = {.lex_state = 15, .external_lex_state = 2}, [229] = {.lex_state = 15, .external_lex_state = 4}, [230] = {.lex_state = 15, .external_lex_state = 4}, [231] = {.lex_state = 15, .external_lex_state = 4}, [232] = {.lex_state = 15, .external_lex_state = 4}, [233] = {.lex_state = 15, .external_lex_state = 4}, [234] = {.lex_state = 15, .external_lex_state = 4}, [235] = {.lex_state = 15, .external_lex_state = 4}, [236] = {.lex_state = 15, .external_lex_state = 4}, [237] = {.lex_state = 15, .external_lex_state = 4}, [238] = {.lex_state = 15, .external_lex_state = 4}, [239] = {.lex_state = 15, .external_lex_state = 4}, [240] = {.lex_state = 15, .external_lex_state = 4}, [241] = {.lex_state = 15, .external_lex_state = 4}, [242] = {.lex_state = 15, .external_lex_state = 4}, [243] = {.lex_state = 15, .external_lex_state = 4}, [244] = {.lex_state = 15, .external_lex_state = 4}, [245] = {.lex_state = 15, .external_lex_state = 4}, [246] = {.lex_state = 15, .external_lex_state = 4}, [247] = {.lex_state = 15, .external_lex_state = 4}, [248] = {.lex_state = 15, .external_lex_state = 4}, [249] = {.lex_state = 15, .external_lex_state = 4}, [250] = {.lex_state = 15, .external_lex_state = 4}, [251] = {.lex_state = 15, .external_lex_state = 4}, [252] = {.lex_state = 15, .external_lex_state = 4}, [253] = {.lex_state = 15, .external_lex_state = 4}, [254] = {.lex_state = 15, .external_lex_state = 4}, [255] = {.lex_state = 15, .external_lex_state = 4}, [256] = {.lex_state = 15, .external_lex_state = 4}, [257] = {.lex_state = 15, .external_lex_state = 4}, [258] = {.lex_state = 15, .external_lex_state = 4}, [259] = {.lex_state = 15, .external_lex_state = 4}, [260] = {.lex_state = 15, .external_lex_state = 4}, [261] = {.lex_state = 15, .external_lex_state = 4}, [262] = {.lex_state = 15, .external_lex_state = 4}, [263] = {.lex_state = 15, .external_lex_state = 4}, [264] = {.lex_state = 67}, [265] = {.lex_state = 67}, [266] = {.lex_state = 67}, [267] = {.lex_state = 67}, [268] = {.lex_state = 67}, [269] = {.lex_state = 22, .external_lex_state = 5}, [270] = {.lex_state = 24}, [271] = {.lex_state = 22, .external_lex_state = 6}, [272] = {.lex_state = 22, .external_lex_state = 5}, [273] = {.lex_state = 22, .external_lex_state = 6}, [274] = {.lex_state = 24}, [275] = {.lex_state = 24}, [276] = {.lex_state = 24}, [277] = {.lex_state = 24}, [278] = {.lex_state = 24}, [279] = {.lex_state = 24}, [280] = {.lex_state = 24}, [281] = {.lex_state = 24}, [282] = {.lex_state = 22, .external_lex_state = 6}, [283] = {.lex_state = 24}, [284] = {.lex_state = 24}, [285] = {.lex_state = 22, .external_lex_state = 5}, [286] = {.lex_state = 24}, [287] = {.lex_state = 22, .external_lex_state = 6}, [288] = {.lex_state = 24}, [289] = {.lex_state = 24}, [290] = {.lex_state = 67}, [291] = {.lex_state = 67}, [292] = {.lex_state = 24}, [293] = {.lex_state = 24}, [294] = {.lex_state = 67}, [295] = {.lex_state = 21}, [296] = {.lex_state = 24}, [297] = {.lex_state = 24}, [298] = {.lex_state = 24}, [299] = {.lex_state = 24}, [300] = {.lex_state = 24}, [301] = {.lex_state = 24, .external_lex_state = 6}, [302] = {.lex_state = 24}, [303] = {.lex_state = 24}, [304] = {.lex_state = 24}, [305] = {.lex_state = 24}, [306] = {.lex_state = 24}, [307] = {.lex_state = 24}, [308] = {.lex_state = 67}, [309] = {.lex_state = 24}, [310] = {.lex_state = 24}, [311] = {.lex_state = 24}, [312] = {.lex_state = 24}, [313] = {.lex_state = 24}, [314] = {.lex_state = 24}, [315] = {.lex_state = 24}, [316] = {.lex_state = 24}, [317] = {.lex_state = 24}, [318] = {.lex_state = 24}, [319] = {.lex_state = 24}, [320] = {.lex_state = 24}, [321] = {.lex_state = 24}, [322] = {.lex_state = 24}, [323] = {.lex_state = 24}, [324] = {.lex_state = 67}, [325] = {.lex_state = 67}, [326] = {.lex_state = 67}, [327] = {.lex_state = 67}, [328] = {.lex_state = 67}, [329] = {.lex_state = 24}, [330] = {.lex_state = 24}, [331] = {.lex_state = 24}, [332] = {.lex_state = 24}, [333] = {.lex_state = 24}, [334] = {.lex_state = 24}, [335] = {.lex_state = 24}, [336] = {.lex_state = 67}, [337] = {.lex_state = 24, .external_lex_state = 6}, [338] = {.lex_state = 24}, [339] = {.lex_state = 24}, [340] = {.lex_state = 24, .external_lex_state = 6}, [341] = {.lex_state = 24, .external_lex_state = 6}, [342] = {.lex_state = 24, .external_lex_state = 6}, [343] = {.lex_state = 24, .external_lex_state = 6}, [344] = {.lex_state = 22, .external_lex_state = 5}, [345] = {.lex_state = 24, .external_lex_state = 6}, [346] = {.lex_state = 67}, [347] = {.lex_state = 67}, [348] = {.lex_state = 67}, [349] = {.lex_state = 67}, [350] = {.lex_state = 24, .external_lex_state = 5}, [351] = {.lex_state = 67}, [352] = {.lex_state = 67}, [353] = {.lex_state = 67}, [354] = {.lex_state = 24, .external_lex_state = 5}, [355] = {.lex_state = 67}, [356] = {.lex_state = 67}, [357] = {.lex_state = 67}, [358] = {.lex_state = 24, .external_lex_state = 5}, [359] = {.lex_state = 67}, [360] = {.lex_state = 67}, [361] = {.lex_state = 67}, [362] = {.lex_state = 24, .external_lex_state = 5}, [363] = {.lex_state = 24, .external_lex_state = 5}, [364] = {.lex_state = 24, .external_lex_state = 6}, [365] = {.lex_state = 24, .external_lex_state = 6}, [366] = {.lex_state = 24, .external_lex_state = 6}, [367] = {.lex_state = 24, .external_lex_state = 6}, [368] = {.lex_state = 24, .external_lex_state = 6}, [369] = {.lex_state = 24, .external_lex_state = 6}, [370] = {.lex_state = 24, .external_lex_state = 6}, [371] = {.lex_state = 67}, [372] = {.lex_state = 24, .external_lex_state = 6}, [373] = {.lex_state = 24, .external_lex_state = 6}, [374] = {.lex_state = 24, .external_lex_state = 5}, [375] = {.lex_state = 67}, [376] = {.lex_state = 67}, [377] = {.lex_state = 67}, [378] = {.lex_state = 67}, [379] = {.lex_state = 67}, [380] = {.lex_state = 67}, [381] = {.lex_state = 67}, [382] = {.lex_state = 67}, [383] = {.lex_state = 67}, [384] = {.lex_state = 67}, [385] = {.lex_state = 67}, [386] = {.lex_state = 67}, [387] = {.lex_state = 67}, [388] = {.lex_state = 67}, [389] = {.lex_state = 67}, [390] = {.lex_state = 67}, [391] = {.lex_state = 67}, [392] = {.lex_state = 67}, [393] = {.lex_state = 67}, [394] = {.lex_state = 24, .external_lex_state = 6}, [395] = {.lex_state = 24, .external_lex_state = 6}, [396] = {.lex_state = 24, .external_lex_state = 6}, [397] = {.lex_state = 24, .external_lex_state = 6}, [398] = {.lex_state = 24, .external_lex_state = 6}, [399] = {.lex_state = 24, .external_lex_state = 6}, [400] = {.lex_state = 24, .external_lex_state = 6}, [401] = {.lex_state = 24, .external_lex_state = 6}, [402] = {.lex_state = 24, .external_lex_state = 6}, [403] = {.lex_state = 67}, [404] = {.lex_state = 24, .external_lex_state = 6}, [405] = {.lex_state = 24, .external_lex_state = 6}, [406] = {.lex_state = 24, .external_lex_state = 6}, [407] = {.lex_state = 24, .external_lex_state = 6}, [408] = {.lex_state = 24, .external_lex_state = 6}, [409] = {.lex_state = 24, .external_lex_state = 6}, [410] = {.lex_state = 24, .external_lex_state = 6}, [411] = {.lex_state = 24, .external_lex_state = 6}, [412] = {.lex_state = 24, .external_lex_state = 6}, [413] = {.lex_state = 24, .external_lex_state = 6}, [414] = {.lex_state = 24, .external_lex_state = 6}, [415] = {.lex_state = 24, .external_lex_state = 6}, [416] = {.lex_state = 24, .external_lex_state = 6}, [417] = {.lex_state = 24, .external_lex_state = 6}, [418] = {.lex_state = 24, .external_lex_state = 6}, [419] = {.lex_state = 24, .external_lex_state = 6}, [420] = {.lex_state = 24, .external_lex_state = 6}, [421] = {.lex_state = 24, .external_lex_state = 6}, [422] = {.lex_state = 24, .external_lex_state = 6}, [423] = {.lex_state = 24, .external_lex_state = 6}, [424] = {.lex_state = 24, .external_lex_state = 6}, [425] = {.lex_state = 24, .external_lex_state = 6}, [426] = {.lex_state = 24, .external_lex_state = 5}, [427] = {.lex_state = 67}, [428] = {.lex_state = 67}, [429] = {.lex_state = 24, .external_lex_state = 6}, [430] = {.lex_state = 24, .external_lex_state = 5}, [431] = {.lex_state = 24, .external_lex_state = 5}, [432] = {.lex_state = 24}, [433] = {.lex_state = 24, .external_lex_state = 5}, [434] = {.lex_state = 24}, [435] = {.lex_state = 24}, [436] = {.lex_state = 24}, [437] = {.lex_state = 24}, [438] = {.lex_state = 24}, [439] = {.lex_state = 24}, [440] = {.lex_state = 24}, [441] = {.lex_state = 24}, [442] = {.lex_state = 24}, [443] = {.lex_state = 24}, [444] = {.lex_state = 24}, [445] = {.lex_state = 24, .external_lex_state = 5}, [446] = {.lex_state = 24, .external_lex_state = 5}, [447] = {.lex_state = 24, .external_lex_state = 5}, [448] = {.lex_state = 24, .external_lex_state = 5}, [449] = {.lex_state = 24, .external_lex_state = 5}, [450] = {.lex_state = 24, .external_lex_state = 5}, [451] = {.lex_state = 24, .external_lex_state = 5}, [452] = {.lex_state = 67}, [453] = {.lex_state = 24, .external_lex_state = 5}, [454] = {.lex_state = 24, .external_lex_state = 5}, [455] = {.lex_state = 24, .external_lex_state = 5}, [456] = {.lex_state = 24, .external_lex_state = 5}, [457] = {.lex_state = 24, .external_lex_state = 5}, [458] = {.lex_state = 24, .external_lex_state = 5}, [459] = {.lex_state = 24, .external_lex_state = 5}, [460] = {.lex_state = 24, .external_lex_state = 5}, [461] = {.lex_state = 24, .external_lex_state = 5}, [462] = {.lex_state = 67}, [463] = {.lex_state = 24}, [464] = {.lex_state = 24, .external_lex_state = 5}, [465] = {.lex_state = 24, .external_lex_state = 5}, [466] = {.lex_state = 24, .external_lex_state = 5}, [467] = {.lex_state = 24, .external_lex_state = 5}, [468] = {.lex_state = 24, .external_lex_state = 5}, [469] = {.lex_state = 24, .external_lex_state = 5}, [470] = {.lex_state = 24, .external_lex_state = 5}, [471] = {.lex_state = 24, .external_lex_state = 5}, [472] = {.lex_state = 24, .external_lex_state = 5}, [473] = {.lex_state = 24, .external_lex_state = 5}, [474] = {.lex_state = 24, .external_lex_state = 5}, [475] = {.lex_state = 24, .external_lex_state = 5}, [476] = {.lex_state = 24, .external_lex_state = 5}, [477] = {.lex_state = 24, .external_lex_state = 5}, [478] = {.lex_state = 24, .external_lex_state = 5}, [479] = {.lex_state = 24, .external_lex_state = 5}, [480] = {.lex_state = 24, .external_lex_state = 5}, [481] = {.lex_state = 67}, [482] = {.lex_state = 24, .external_lex_state = 5}, [483] = {.lex_state = 24, .external_lex_state = 5}, [484] = {.lex_state = 24, .external_lex_state = 5}, [485] = {.lex_state = 67}, [486] = {.lex_state = 24, .external_lex_state = 5}, [487] = {.lex_state = 24, .external_lex_state = 5}, [488] = {.lex_state = 67}, [489] = {.lex_state = 67}, [490] = {.lex_state = 67}, [491] = {.lex_state = 67}, [492] = {.lex_state = 67}, [493] = {.lex_state = 67}, [494] = {.lex_state = 67}, [495] = {.lex_state = 67}, [496] = {.lex_state = 67}, [497] = {.lex_state = 67}, [498] = {.lex_state = 67}, [499] = {.lex_state = 67}, [500] = {.lex_state = 67}, [501] = {.lex_state = 67}, [502] = {.lex_state = 67}, [503] = {.lex_state = 67}, [504] = {.lex_state = 67}, [505] = {.lex_state = 67}, [506] = {.lex_state = 67}, [507] = {.lex_state = 67}, [508] = {.lex_state = 67}, [509] = {.lex_state = 67}, [510] = {.lex_state = 67}, [511] = {.lex_state = 67}, [512] = {.lex_state = 67}, [513] = {.lex_state = 67}, [514] = {.lex_state = 67}, [515] = {.lex_state = 67}, [516] = {.lex_state = 67}, [517] = {.lex_state = 15, .external_lex_state = 2}, [518] = {.lex_state = 67}, [519] = {.lex_state = 67}, [520] = {.lex_state = 67}, [521] = {.lex_state = 15, .external_lex_state = 2}, [522] = {.lex_state = 67}, [523] = {.lex_state = 67}, [524] = {.lex_state = 67, .external_lex_state = 6}, [525] = {.lex_state = 67}, [526] = {.lex_state = 67, .external_lex_state = 6}, [527] = {.lex_state = 67, .external_lex_state = 6}, [528] = {.lex_state = 67}, [529] = {.lex_state = 67}, [530] = {.lex_state = 67}, [531] = {.lex_state = 67}, [532] = {.lex_state = 67}, [533] = {.lex_state = 67, .external_lex_state = 5}, [534] = {.lex_state = 67}, [535] = {.lex_state = 67}, [536] = {.lex_state = 67, .external_lex_state = 5}, [537] = {.lex_state = 67}, [538] = {.lex_state = 67, .external_lex_state = 5}, [539] = {.lex_state = 67}, [540] = {.lex_state = 67}, [541] = {.lex_state = 67}, [542] = {.lex_state = 67}, [543] = {.lex_state = 67, .external_lex_state = 5}, [544] = {.lex_state = 67, .external_lex_state = 5}, [545] = {.lex_state = 67, .external_lex_state = 5}, [546] = {.lex_state = 67}, [547] = {.lex_state = 67}, [548] = {.lex_state = 67}, [549] = {.lex_state = 67}, [550] = {.lex_state = 67}, [551] = {.lex_state = 67, .external_lex_state = 5}, [552] = {.lex_state = 67}, [553] = {.lex_state = 67}, [554] = {.lex_state = 67, .external_lex_state = 6}, [555] = {.lex_state = 67, .external_lex_state = 5}, [556] = {.lex_state = 67, .external_lex_state = 5}, [557] = {.lex_state = 67, .external_lex_state = 5}, [558] = {.lex_state = 67}, [559] = {.lex_state = 67}, [560] = {.lex_state = 67}, [561] = {.lex_state = 67}, [562] = {.lex_state = 67}, [563] = {.lex_state = 67}, [564] = {.lex_state = 67}, [565] = {.lex_state = 21}, [566] = {.lex_state = 67}, [567] = {.lex_state = 67}, [568] = {.lex_state = 67}, [569] = {.lex_state = 67}, [570] = {.lex_state = 67}, [571] = {.lex_state = 67, .external_lex_state = 6}, [572] = {.lex_state = 67, .external_lex_state = 6}, [573] = {.lex_state = 67}, [574] = {.lex_state = 67}, [575] = {.lex_state = 67, .external_lex_state = 5}, [576] = {.lex_state = 67, .external_lex_state = 6}, [577] = {.lex_state = 67, .external_lex_state = 6}, [578] = {.lex_state = 67, .external_lex_state = 6}, [579] = {.lex_state = 67, .external_lex_state = 6}, [580] = {.lex_state = 67, .external_lex_state = 6}, [581] = {.lex_state = 67, .external_lex_state = 6}, [582] = {.lex_state = 67, .external_lex_state = 6}, [583] = {.lex_state = 67, .external_lex_state = 6}, [584] = {.lex_state = 67, .external_lex_state = 6}, [585] = {.lex_state = 67, .external_lex_state = 6}, [586] = {.lex_state = 67, .external_lex_state = 5}, [587] = {.lex_state = 67, .external_lex_state = 5}, [588] = {.lex_state = 67, .external_lex_state = 5}, [589] = {.lex_state = 67, .external_lex_state = 5}, [590] = {.lex_state = 0}, [591] = {.lex_state = 67, .external_lex_state = 5}, [592] = {.lex_state = 67, .external_lex_state = 5}, [593] = {.lex_state = 0}, [594] = {.lex_state = 67, .external_lex_state = 5}, [595] = {.lex_state = 67, .external_lex_state = 5}, [596] = {.lex_state = 67, .external_lex_state = 5}, [597] = {.lex_state = 67, .external_lex_state = 5}, [598] = {.lex_state = 67, .external_lex_state = 5}, [599] = {.lex_state = 67, .external_lex_state = 5}, [600] = {.lex_state = 67, .external_lex_state = 5}, [601] = {.lex_state = 0}, [602] = {.lex_state = 67, .external_lex_state = 5}, [603] = {.lex_state = 67, .external_lex_state = 5}, [604] = {.lex_state = 67, .external_lex_state = 5}, [605] = {.lex_state = 0}, [606] = {.lex_state = 67, .external_lex_state = 5}, [607] = {.lex_state = 67, .external_lex_state = 5}, [608] = {.lex_state = 67, .external_lex_state = 5}, [609] = {.lex_state = 0}, [610] = {.lex_state = 67, .external_lex_state = 5}, [611] = {.lex_state = 67, .external_lex_state = 5}, [612] = {.lex_state = 67, .external_lex_state = 5}, [613] = {.lex_state = 67, .external_lex_state = 5}, [614] = {.lex_state = 0}, [615] = {.lex_state = 67, .external_lex_state = 5}, [616] = {.lex_state = 67, .external_lex_state = 5}, [617] = {.lex_state = 67, .external_lex_state = 5}, [618] = {.lex_state = 20, .external_lex_state = 7}, [619] = {.lex_state = 0, .external_lex_state = 6}, [620] = {.lex_state = 18}, [621] = {.lex_state = 0}, [622] = {.lex_state = 20, .external_lex_state = 7}, [623] = {.lex_state = 67}, [624] = {.lex_state = 20, .external_lex_state = 7}, [625] = {.lex_state = 18}, [626] = {.lex_state = 20, .external_lex_state = 7}, [627] = {.lex_state = 18}, [628] = {.lex_state = 0}, [629] = {.lex_state = 0, .external_lex_state = 6}, [630] = {.lex_state = 20, .external_lex_state = 7}, [631] = {.lex_state = 18}, [632] = {.lex_state = 20, .external_lex_state = 7}, [633] = {.lex_state = 18}, [634] = {.lex_state = 20, .external_lex_state = 7}, [635] = {.lex_state = 20, .external_lex_state = 7}, [636] = {.lex_state = 18}, [637] = {.lex_state = 20, .external_lex_state = 7}, [638] = {.lex_state = 0}, [639] = {.lex_state = 0}, [640] = {.lex_state = 0, .external_lex_state = 6}, [641] = {.lex_state = 20, .external_lex_state = 7}, [642] = {.lex_state = 18}, [643] = {.lex_state = 20, .external_lex_state = 7}, [644] = {.lex_state = 18}, [645] = {.lex_state = 0, .external_lex_state = 6}, [646] = {.lex_state = 67}, [647] = {.lex_state = 20, .external_lex_state = 7}, [648] = {.lex_state = 18}, [649] = {.lex_state = 20, .external_lex_state = 7}, [650] = {.lex_state = 18}, [651] = {.lex_state = 18}, [652] = {.lex_state = 0, .external_lex_state = 6}, [653] = {.lex_state = 67}, [654] = {.lex_state = 18}, [655] = {.lex_state = 67}, [656] = {.lex_state = 20, .external_lex_state = 7}, [657] = {.lex_state = 0, .external_lex_state = 6}, [658] = {.lex_state = 18}, [659] = {.lex_state = 20, .external_lex_state = 7}, [660] = {.lex_state = 18}, [661] = {.lex_state = 0, .external_lex_state = 5}, [662] = {.lex_state = 18}, [663] = {.lex_state = 67}, [664] = {.lex_state = 0, .external_lex_state = 6}, [665] = {.lex_state = 67}, [666] = {.lex_state = 18}, [667] = {.lex_state = 67}, [668] = {.lex_state = 67}, [669] = {.lex_state = 0}, [670] = {.lex_state = 67}, [671] = {.lex_state = 0, .external_lex_state = 6}, [672] = {.lex_state = 0, .external_lex_state = 6}, [673] = {.lex_state = 67, .external_lex_state = 5}, [674] = {.lex_state = 67}, [675] = {.lex_state = 67, .external_lex_state = 6}, [676] = {.lex_state = 67}, [677] = {.lex_state = 67}, [678] = {.lex_state = 67, .external_lex_state = 5}, [679] = {.lex_state = 67, .external_lex_state = 6}, [680] = {.lex_state = 67, .external_lex_state = 5}, [681] = {.lex_state = 67}, [682] = {.lex_state = 67}, [683] = {.lex_state = 0, .external_lex_state = 6}, [684] = {.lex_state = 67}, [685] = {.lex_state = 67, .external_lex_state = 5}, [686] = {.lex_state = 67, .external_lex_state = 5}, [687] = {.lex_state = 67}, [688] = {.lex_state = 20, .external_lex_state = 7}, [689] = {.lex_state = 0, .external_lex_state = 6}, [690] = {.lex_state = 0, .external_lex_state = 6}, [691] = {.lex_state = 67}, [692] = {.lex_state = 67}, [693] = {.lex_state = 67, .external_lex_state = 6}, [694] = {.lex_state = 0, .external_lex_state = 6}, [695] = {.lex_state = 0, .external_lex_state = 6}, [696] = {.lex_state = 0}, [697] = {.lex_state = 0, .external_lex_state = 6}, [698] = {.lex_state = 33}, [699] = {.lex_state = 67, .external_lex_state = 5}, [700] = {.lex_state = 0}, [701] = {.lex_state = 0}, [702] = {.lex_state = 67, .external_lex_state = 6}, [703] = {.lex_state = 0}, [704] = {.lex_state = 0}, [705] = {.lex_state = 0}, [706] = {.lex_state = 0}, [707] = {.lex_state = 0}, [708] = {.lex_state = 0}, [709] = {.lex_state = 33}, [710] = {.lex_state = 0}, [711] = {.lex_state = 0}, [712] = {.lex_state = 0}, [713] = {.lex_state = 0}, [714] = {.lex_state = 0}, [715] = {.lex_state = 33}, [716] = {.lex_state = 0}, [717] = {.lex_state = 0}, [718] = {.lex_state = 0}, [719] = {.lex_state = 0}, [720] = {.lex_state = 0}, [721] = {.lex_state = 0}, [722] = {.lex_state = 33}, [723] = {.lex_state = 0}, [724] = {.lex_state = 0}, [725] = {.lex_state = 0}, [726] = {.lex_state = 30}, [727] = {.lex_state = 0}, [728] = {.lex_state = 0}, [729] = {.lex_state = 0, .external_lex_state = 5}, [730] = {.lex_state = 0}, [731] = {.lex_state = 0}, [732] = {.lex_state = 0}, [733] = {.lex_state = 0}, [734] = {.lex_state = 0}, [735] = {.lex_state = 0}, [736] = {.lex_state = 33}, [737] = {.lex_state = 0}, [738] = {.lex_state = 0}, [739] = {.lex_state = 0}, [740] = {.lex_state = 0}, [741] = {.lex_state = 0}, [742] = {.lex_state = 0}, [743] = {.lex_state = 0}, [744] = {.lex_state = 33}, [745] = {.lex_state = 0}, [746] = {.lex_state = 0}, [747] = {.lex_state = 0}, [748] = {.lex_state = 0}, [749] = {.lex_state = 0}, [750] = {.lex_state = 0}, [751] = {.lex_state = 0}, [752] = {.lex_state = 67, .external_lex_state = 6}, [753] = {.lex_state = 67, .external_lex_state = 6}, [754] = {.lex_state = 0}, [755] = {.lex_state = 0, .external_lex_state = 6}, [756] = {.lex_state = 0}, [757] = {.lex_state = 0}, [758] = {.lex_state = 0}, [759] = {.lex_state = 0}, [760] = {.lex_state = 33}, [761] = {.lex_state = 0}, [762] = {.lex_state = 0}, [763] = {.lex_state = 0}, [764] = {.lex_state = 0}, [765] = {.lex_state = 0}, [766] = {.lex_state = 0}, [767] = {.lex_state = 33}, [768] = {.lex_state = 0}, [769] = {.lex_state = 0}, [770] = {.lex_state = 0}, [771] = {.lex_state = 0}, [772] = {.lex_state = 33}, [773] = {.lex_state = 0}, [774] = {.lex_state = 0}, [775] = {.lex_state = 67, .external_lex_state = 5}, [776] = {.lex_state = 0}, [777] = {.lex_state = 0}, [778] = {.lex_state = 0}, [779] = {.lex_state = 0}, [780] = {.lex_state = 0}, [781] = {.lex_state = 33}, [782] = {.lex_state = 0}, [783] = {.lex_state = 0}, [784] = {.lex_state = 0}, [785] = {.lex_state = 33}, [786] = {.lex_state = 0}, [787] = {.lex_state = 0}, [788] = {.lex_state = 0}, [789] = {.lex_state = 0}, [790] = {.lex_state = 0}, [791] = {.lex_state = 0}, [792] = {.lex_state = 0}, [793] = {.lex_state = 33}, [794] = {.lex_state = 0}, [795] = {.lex_state = 0}, [796] = {.lex_state = 0}, [797] = {.lex_state = 33}, [798] = {.lex_state = 0}, [799] = {.lex_state = 0}, [800] = {.lex_state = 0}, [801] = {.lex_state = 0}, [802] = {.lex_state = 30}, [803] = {.lex_state = 0}, [804] = {.lex_state = 0, .external_lex_state = 6}, [805] = {.lex_state = 0, .external_lex_state = 6}, [806] = {.lex_state = 0, .external_lex_state = 6}, [807] = {.lex_state = 67, .external_lex_state = 5}, [808] = {.lex_state = 30}, [809] = {.lex_state = 0, .external_lex_state = 6}, [810] = {.lex_state = 0, .external_lex_state = 6}, [811] = {.lex_state = 0, .external_lex_state = 6}, [812] = {.lex_state = 30}, [813] = {.lex_state = 0, .external_lex_state = 6}, [814] = {.lex_state = 0, .external_lex_state = 6}, [815] = {.lex_state = 30}, [816] = {.lex_state = 0}, [817] = {.lex_state = 0, .external_lex_state = 6}, [818] = {.lex_state = 0, .external_lex_state = 6}, [819] = {.lex_state = 0}, [820] = {.lex_state = 30}, [821] = {.lex_state = 30}, [822] = {.lex_state = 0, .external_lex_state = 6}, [823] = {.lex_state = 0, .external_lex_state = 6}, [824] = {.lex_state = 0, .external_lex_state = 6}, [825] = {.lex_state = 0}, [826] = {.lex_state = 0}, [827] = {.lex_state = 0}, [828] = {.lex_state = 0}, [829] = {.lex_state = 0}, [830] = {.lex_state = 0, .external_lex_state = 6}, [831] = {.lex_state = 0, .external_lex_state = 6}, [832] = {.lex_state = 33}, [833] = {.lex_state = 0}, [834] = {.lex_state = 0}, [835] = {.lex_state = 0, .external_lex_state = 8}, [836] = {.lex_state = 0}, [837] = {.lex_state = 0}, [838] = {.lex_state = 0}, [839] = {.lex_state = 67}, [840] = {.lex_state = 67}, [841] = {.lex_state = 0}, [842] = {.lex_state = 0, .external_lex_state = 6}, [843] = {.lex_state = 0}, [844] = {.lex_state = 0, .external_lex_state = 6}, [845] = {.lex_state = 67, .external_lex_state = 5}, [846] = {.lex_state = 67}, [847] = {.lex_state = 22}, [848] = {.lex_state = 22}, [849] = {.lex_state = 22}, [850] = {.lex_state = 0}, [851] = {.lex_state = 0}, [852] = {.lex_state = 0}, [853] = {.lex_state = 33}, [854] = {.lex_state = 0}, [855] = {.lex_state = 0, .external_lex_state = 8}, [856] = {.lex_state = 0}, [857] = {.lex_state = 0}, [858] = {.lex_state = 0}, [859] = {.lex_state = 67, .external_lex_state = 5}, [860] = {.lex_state = 67, .external_lex_state = 5}, [861] = {.lex_state = 0, .external_lex_state = 8}, [862] = {.lex_state = 67}, [863] = {.lex_state = 67, .external_lex_state = 5}, [864] = {.lex_state = 0}, [865] = {.lex_state = 0}, [866] = {.lex_state = 67}, [867] = {.lex_state = 0, .external_lex_state = 6}, [868] = {.lex_state = 67}, [869] = {.lex_state = 0}, [870] = {.lex_state = 0}, [871] = {.lex_state = 0}, [872] = {.lex_state = 0, .external_lex_state = 8}, [873] = {.lex_state = 22}, [874] = {.lex_state = 0}, [875] = {.lex_state = 0}, [876] = {.lex_state = 0}, [877] = {.lex_state = 0}, [878] = {.lex_state = 0}, [879] = {.lex_state = 0, .external_lex_state = 8}, [880] = {.lex_state = 67}, [881] = {.lex_state = 0}, [882] = {.lex_state = 67}, [883] = {.lex_state = 0}, [884] = {.lex_state = 0}, [885] = {.lex_state = 0}, [886] = {.lex_state = 67, .external_lex_state = 5}, [887] = {.lex_state = 0, .external_lex_state = 5}, [888] = {.lex_state = 0}, [889] = {.lex_state = 0}, [890] = {.lex_state = 67}, [891] = {.lex_state = 0}, [892] = {.lex_state = 0}, [893] = {.lex_state = 0}, [894] = {.lex_state = 0}, [895] = {.lex_state = 0}, [896] = {.lex_state = 0, .external_lex_state = 8}, [897] = {.lex_state = 0}, [898] = {.lex_state = 0}, [899] = {.lex_state = 67}, [900] = {.lex_state = 0}, [901] = {.lex_state = 67}, [902] = {.lex_state = 0}, [903] = {.lex_state = 0}, [904] = {.lex_state = 67}, [905] = {.lex_state = 0}, [906] = {.lex_state = 0, .external_lex_state = 6}, [907] = {.lex_state = 0}, [908] = {.lex_state = 67}, [909] = {.lex_state = 22}, [910] = {.lex_state = 0}, [911] = {.lex_state = 0}, [912] = {.lex_state = 22}, [913] = {.lex_state = 0}, [914] = {.lex_state = 0}, [915] = {.lex_state = 0}, [916] = {.lex_state = 0}, [917] = {.lex_state = 0}, [918] = {.lex_state = 33}, [919] = {.lex_state = 0, .external_lex_state = 8}, [920] = {.lex_state = 0, .external_lex_state = 5}, [921] = {.lex_state = 0, .external_lex_state = 9}, [922] = {.lex_state = 0}, [923] = {.lex_state = 0}, [924] = {.lex_state = 0, .external_lex_state = 5}, [925] = {.lex_state = 24}, [926] = {.lex_state = 0}, [927] = {.lex_state = 0, .external_lex_state = 5}, [928] = {.lex_state = 0, .external_lex_state = 10}, [929] = {.lex_state = 0, .external_lex_state = 5}, [930] = {.lex_state = 33}, [931] = {.lex_state = 67}, [932] = {.lex_state = 24}, [933] = {.lex_state = 0}, [934] = {.lex_state = 0}, [935] = {.lex_state = 0}, [936] = {.lex_state = 0}, [937] = {.lex_state = 33}, [938] = {.lex_state = 0, .external_lex_state = 5}, [939] = {.lex_state = 0, .external_lex_state = 5}, [940] = {.lex_state = 0, .external_lex_state = 5}, [941] = {.lex_state = 33}, [942] = {.lex_state = 33}, [943] = {.lex_state = 0, .external_lex_state = 10}, [944] = {.lex_state = 0, .external_lex_state = 5}, [945] = {.lex_state = 67}, [946] = {.lex_state = 0, .external_lex_state = 8}, [947] = {.lex_state = 0}, [948] = {.lex_state = 0}, [949] = {.lex_state = 0}, [950] = {.lex_state = 67}, [951] = {.lex_state = 0}, [952] = {.lex_state = 0}, [953] = {.lex_state = 0}, [954] = {.lex_state = 24}, [955] = {.lex_state = 0, .external_lex_state = 5}, [956] = {.lex_state = 24}, [957] = {.lex_state = 33}, [958] = {.lex_state = 33}, [959] = {.lex_state = 0}, [960] = {.lex_state = 67}, [961] = {.lex_state = 67}, [962] = {.lex_state = 0}, [963] = {.lex_state = 24}, [964] = {.lex_state = 0}, [965] = {.lex_state = 67}, [966] = {.lex_state = 0, .external_lex_state = 9}, [967] = {.lex_state = 0, .external_lex_state = 9}, [968] = {.lex_state = 0, .external_lex_state = 5}, [969] = {.lex_state = 24}, [970] = {.lex_state = 0}, [971] = {.lex_state = 0}, [972] = {.lex_state = 33}, [973] = {.lex_state = 0}, [974] = {.lex_state = 0}, [975] = {.lex_state = 0}, [976] = {.lex_state = 0}, [977] = {.lex_state = 0}, [978] = {.lex_state = 0}, [979] = {.lex_state = 0}, [980] = {.lex_state = 0, .external_lex_state = 8}, [981] = {.lex_state = 0}, [982] = {.lex_state = 0, .external_lex_state = 9}, [983] = {.lex_state = 0}, [984] = {.lex_state = 0}, [985] = {.lex_state = 0}, [986] = {.lex_state = 67}, [987] = {.lex_state = 0}, [988] = {.lex_state = 0, .external_lex_state = 5}, [989] = {.lex_state = 0, .external_lex_state = 5}, [990] = {.lex_state = 0, .external_lex_state = 11}, [991] = {.lex_state = 33}, [992] = {.lex_state = 0}, [993] = {.lex_state = 33}, [994] = {.lex_state = 0}, [995] = {.lex_state = 0}, [996] = {.lex_state = 0}, [997] = {.lex_state = 0}, [998] = {.lex_state = 0}, [999] = {.lex_state = 0}, [1000] = {.lex_state = 24}, [1001] = {.lex_state = 24}, [1002] = {.lex_state = 0, .external_lex_state = 9}, [1003] = {.lex_state = 67}, [1004] = {.lex_state = 0, .external_lex_state = 5}, [1005] = {.lex_state = 0}, [1006] = {.lex_state = 0, .external_lex_state = 10}, [1007] = {.lex_state = 0, .external_lex_state = 5}, [1008] = {.lex_state = 33}, [1009] = {.lex_state = 0}, [1010] = {.lex_state = 0, .external_lex_state = 9}, [1011] = {.lex_state = 0, .external_lex_state = 5}, [1012] = {.lex_state = 0}, [1013] = {.lex_state = 0}, [1014] = {.lex_state = 0}, [1015] = {.lex_state = 0, .external_lex_state = 5}, [1016] = {.lex_state = 0}, [1017] = {.lex_state = 0}, [1018] = {.lex_state = 0, .external_lex_state = 10}, [1019] = {.lex_state = 0, .external_lex_state = 10}, [1020] = {.lex_state = 33}, [1021] = {.lex_state = 67}, [1022] = {.lex_state = 0, .external_lex_state = 10}, [1023] = {.lex_state = 0, .external_lex_state = 10}, [1024] = {.lex_state = 67}, [1025] = {.lex_state = 0, .external_lex_state = 10}, [1026] = {.lex_state = 0, .external_lex_state = 10}, [1027] = {.lex_state = 0}, [1028] = {.lex_state = 0, .external_lex_state = 10}, [1029] = {.lex_state = 0, .external_lex_state = 10}, [1030] = {.lex_state = 0, .external_lex_state = 10}, [1031] = {.lex_state = 0, .external_lex_state = 10}, [1032] = {.lex_state = 0, .external_lex_state = 10}, [1033] = {.lex_state = 0, .external_lex_state = 8}, [1034] = {.lex_state = 0}, [1035] = {.lex_state = 0}, [1036] = {.lex_state = 0, .external_lex_state = 10}, [1037] = {.lex_state = 0}, [1038] = {.lex_state = 0}, [1039] = {.lex_state = 0, .external_lex_state = 10}, [1040] = {.lex_state = 0}, [1041] = {.lex_state = 0}, [1042] = {.lex_state = 0, .external_lex_state = 10}, [1043] = {.lex_state = 0}, [1044] = {.lex_state = 0}, [1045] = {.lex_state = 0}, [1046] = {.lex_state = 0}, [1047] = {.lex_state = 0, .external_lex_state = 10}, [1048] = {.lex_state = 0}, [1049] = {.lex_state = 0, .external_lex_state = 5}, [1050] = {.lex_state = 0}, [1051] = {.lex_state = 0}, [1052] = {.lex_state = 0}, [1053] = {.lex_state = 67}, [1054] = {.lex_state = 0, .external_lex_state = 8}, [1055] = {.lex_state = 0, .external_lex_state = 5}, [1056] = {.lex_state = 21}, [1057] = {.lex_state = 0, .external_lex_state = 8}, [1058] = {.lex_state = 0, .external_lex_state = 9}, [1059] = {(TSStateId)(-1),}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(0)] = { [sym_block_comment] = STATE(0), [ts_builtin_sym_end] = ACTIONS(1), [sym_lower_case_identifier] = ACTIONS(1), [anon_sym_LBRACE_DASH] = ACTIONS(3), [anon_sym_DASH_RBRACE] = ACTIONS(1), [sym_line_comment] = ACTIONS(5), [anon_sym_LPAREN] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), [anon_sym_RPAREN] = ACTIONS(1), [sym__upper_case_identifier_without_leading_whitespace] = ACTIONS(1), [anon_sym_DOT] = ACTIONS(1), [anon_sym_PIPE] = ACTIONS(1), [anon_sym_LBRACE] = ACTIONS(1), [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_SQUOTE] = ACTIONS(1), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(1), [anon_sym_DQUOTE] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), [anon_sym_else] = ACTIONS(1), [anon_sym_if] = ACTIONS(1), [anon_sym_then] = ACTIONS(1), [anon_sym_let] = ACTIONS(1), [anon_sym_in] = ACTIONS(1), [anon_sym_COLON_COLON] = ACTIONS(1), [anon_sym_left] = ACTIONS(1), [anon_sym_right] = ACTIONS(1), [anon_sym_non] = ACTIONS(1), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(1), [anon_sym_PIPE_RBRACK] = ACTIONS(1), [sym_upper_case_identifier] = ACTIONS(1), [sym_number_literal] = ACTIONS(1), [sym_string_escape] = ACTIONS(1), [sym_module] = ACTIONS(1), [sym_effect] = ACTIONS(1), [sym_where] = ACTIONS(1), [sym_import] = ACTIONS(1), [sym_as] = ACTIONS(1), [sym_exposing] = ACTIONS(1), [sym_case] = ACTIONS(1), [sym_of] = ACTIONS(1), [sym_type] = ACTIONS(1), [sym_alias] = ACTIONS(1), [sym_port] = ACTIONS(1), [sym_infix] = ACTIONS(1), [sym_double_dot] = ACTIONS(1), [sym_eq] = ACTIONS(1), [sym_arrow] = ACTIONS(1), [sym_colon] = ACTIONS(1), [sym_underscore] = ACTIONS(1), [sym_dot] = ACTIONS(1), [anon_sym_PLUS] = ACTIONS(1), [anon_sym_DASH] = ACTIONS(1), [anon_sym_STAR] = ACTIONS(1), [anon_sym_SLASH] = ACTIONS(1), [anon_sym_SLASH_SLASH] = ACTIONS(1), [anon_sym_CARET] = ACTIONS(1), [anon_sym_EQ_EQ] = ACTIONS(1), [anon_sym_SLASH_EQ] = ACTIONS(1), [anon_sym_LT] = ACTIONS(1), [anon_sym_GT] = ACTIONS(1), [anon_sym_LT_EQ] = ACTIONS(1), [anon_sym_GT_EQ] = ACTIONS(1), [anon_sym_AMP_AMP] = ACTIONS(1), [anon_sym_PIPE_PIPE] = ACTIONS(1), [anon_sym_PLUS_PLUS] = ACTIONS(1), [anon_sym_LT_PIPE] = ACTIONS(1), [anon_sym_PIPE_GT] = ACTIONS(1), [anon_sym_LT_LT] = ACTIONS(1), [anon_sym_GT_GT] = ACTIONS(1), [anon_sym_LT_SLASH_GT] = ACTIONS(1), [anon_sym_LT_QMARK_GT] = ACTIONS(1), [anon_sym_PIPE_DOT] = ACTIONS(1), [anon_sym_PIPE_EQ] = ACTIONS(1), [sym__virtual_end_decl] = ACTIONS(1), [sym__virtual_open_section] = ACTIONS(1), [sym__virtual_end_section] = ACTIONS(1), [sym_minus_without_trailing_whitespace] = ACTIONS(1), [sym_glsl_content] = ACTIONS(1), [sym__block_comment_content] = ACTIONS(1), [sym__string_content_multiline] = ACTIONS(1), }, [STATE(1)] = { [sym_file] = STATE(996), [sym_block_comment] = STATE(1), [sym_module_declaration] = STATE(968), [aux_sym__import_list] = STATE(216), [aux_sym__top_decl_list] = STATE(265), [sym_upper_case_qid] = STATE(291), [sym_import_clause] = STATE(920), [sym_value_declaration] = STATE(938), [sym_function_declaration_left] = STATE(965), [sym_type_declaration] = STATE(938), [sym_type_alias_declaration] = STATE(938), [sym_type_annotation] = STATE(938), [sym_port_annotation] = STATE(938), [sym__literal_expr_group] = STATE(511), [sym_char_constant_expr] = STATE(497), [sym_number_constant_expr] = STATE(497), [sym_string_constant_expr] = STATE(497), [sym_unit_expr] = STATE(511), [sym_pattern] = STATE(1003), [sym_cons_pattern] = STATE(516), [sym__single_pattern_cons] = STATE(964), [sym__single_pattern] = STATE(520), [sym_lower_pattern] = STATE(511), [sym_anything_pattern] = STATE(511), [sym_record_pattern] = STATE(511), [sym_list_pattern] = STATE(511), [sym_union_pattern] = STATE(511), [sym_tuple_pattern] = STATE(511), [sym__parenthesized_pattern] = STATE(496), [sym_infix_declaration] = STATE(938), [ts_builtin_sym_end] = ACTIONS(7), [sym_lower_case_identifier] = ACTIONS(9), [anon_sym_LBRACE_DASH] = ACTIONS(3), [sym_line_comment] = ACTIONS(5), [anon_sym_LPAREN] = ACTIONS(11), [anon_sym_LBRACE] = ACTIONS(13), [anon_sym_SQUOTE] = ACTIONS(15), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(17), [anon_sym_DQUOTE] = ACTIONS(19), [anon_sym_LBRACK] = ACTIONS(21), [sym_upper_case_identifier] = ACTIONS(23), [sym_number_literal] = ACTIONS(25), [sym_module] = ACTIONS(27), [sym_effect] = ACTIONS(29), [sym_import] = ACTIONS(31), [sym_type] = ACTIONS(33), [sym_port] = ACTIONS(35), [sym_infix] = ACTIONS(37), [sym_underscore] = ACTIONS(39), }, [STATE(2)] = { [sym_block_comment] = STATE(2), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(68), [sym_operator_as_function_expr] = STATE(68), [sym__operator_as_function_inner] = STATE(60), [sym__atom] = STATE(53), [sym_field_access_expr] = STATE(41), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(68), [sym_parenthesized_expr] = STATE(41), [sym__literal_expr_group] = STATE(68), [sym_char_constant_expr] = STATE(64), [sym_number_constant_expr] = STATE(64), [sym_string_constant_expr] = STATE(64), [sym_anonymous_function_expr] = STATE(68), [sym_value_expr] = STATE(41), [sym_tuple_expr] = STATE(68), [sym_unit_expr] = STATE(68), [sym_list_expr] = STATE(68), [sym_record_expr] = STATE(41), [sym_if_else_expr] = STATE(68), [sym__if] = STATE(883), [sym_case_of_expr] = STATE(68), [sym_let_in_expr] = STATE(68), [sym_glsl_code_expr] = STATE(68), [sym__glsl_begin] = STATE(1058), [aux_sym_function_call_expr_repeat1] = STATE(3), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(47), [anon_sym_COMMA] = ACTIONS(49), [anon_sym_RPAREN] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_RBRACE] = ACTIONS(49), [anon_sym_SQUOTE] = ACTIONS(53), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(55), [anon_sym_DQUOTE] = ACTIONS(57), [anon_sym_LBRACK] = ACTIONS(59), [anon_sym_RBRACK] = ACTIONS(49), [anon_sym_else] = ACTIONS(49), [anon_sym_if] = ACTIONS(61), [anon_sym_then] = ACTIONS(49), [anon_sym_let] = ACTIONS(63), [anon_sym_COLON_COLON] = ACTIONS(49), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(69), [sym_case] = ACTIONS(71), [sym_of] = ACTIONS(49), [sym_backslash] = ACTIONS(73), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(49), [anon_sym_DASH] = ACTIONS(49), [anon_sym_STAR] = ACTIONS(49), [anon_sym_SLASH] = ACTIONS(49), [anon_sym_SLASH_SLASH] = ACTIONS(49), [anon_sym_CARET] = ACTIONS(49), [anon_sym_EQ_EQ] = ACTIONS(49), [anon_sym_SLASH_EQ] = ACTIONS(49), [anon_sym_LT] = ACTIONS(49), [anon_sym_GT] = ACTIONS(49), [anon_sym_LT_EQ] = ACTIONS(49), [anon_sym_GT_EQ] = ACTIONS(49), [anon_sym_AMP_AMP] = ACTIONS(49), [anon_sym_PIPE_PIPE] = ACTIONS(49), [anon_sym_PLUS_PLUS] = ACTIONS(49), [anon_sym_LT_PIPE] = ACTIONS(49), [anon_sym_PIPE_GT] = ACTIONS(49), [anon_sym_LT_LT] = ACTIONS(49), [anon_sym_GT_GT] = ACTIONS(49), [anon_sym_LT_SLASH_GT] = ACTIONS(49), [anon_sym_LT_QMARK_GT] = ACTIONS(49), [anon_sym_PIPE_DOT] = ACTIONS(49), [anon_sym_PIPE_EQ] = ACTIONS(49), [sym_minus_without_trailing_whitespace] = ACTIONS(77), }, [STATE(3)] = { [sym_block_comment] = STATE(3), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(68), [sym_operator_as_function_expr] = STATE(68), [sym__operator_as_function_inner] = STATE(60), [sym__atom] = STATE(53), [sym_field_access_expr] = STATE(41), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(68), [sym_parenthesized_expr] = STATE(41), [sym__literal_expr_group] = STATE(68), [sym_char_constant_expr] = STATE(64), [sym_number_constant_expr] = STATE(64), [sym_string_constant_expr] = STATE(64), [sym_anonymous_function_expr] = STATE(68), [sym_value_expr] = STATE(41), [sym_tuple_expr] = STATE(68), [sym_unit_expr] = STATE(68), [sym_list_expr] = STATE(68), [sym_record_expr] = STATE(41), [sym_if_else_expr] = STATE(68), [sym__if] = STATE(883), [sym_case_of_expr] = STATE(68), [sym_let_in_expr] = STATE(68), [sym_glsl_code_expr] = STATE(68), [sym__glsl_begin] = STATE(1058), [aux_sym_function_call_expr_repeat1] = STATE(3), [sym_lower_case_identifier] = ACTIONS(79), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(82), [anon_sym_COMMA] = ACTIONS(85), [anon_sym_RPAREN] = ACTIONS(85), [anon_sym_LBRACE] = ACTIONS(87), [anon_sym_RBRACE] = ACTIONS(85), [anon_sym_SQUOTE] = ACTIONS(90), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(93), [anon_sym_DQUOTE] = ACTIONS(96), [anon_sym_LBRACK] = ACTIONS(99), [anon_sym_RBRACK] = ACTIONS(85), [anon_sym_else] = ACTIONS(85), [anon_sym_if] = ACTIONS(102), [anon_sym_then] = ACTIONS(85), [anon_sym_let] = ACTIONS(105), [anon_sym_COLON_COLON] = ACTIONS(85), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(108), [sym_upper_case_identifier] = ACTIONS(111), [sym_number_literal] = ACTIONS(114), [sym_case] = ACTIONS(117), [sym_of] = ACTIONS(85), [sym_backslash] = ACTIONS(120), [sym_dot] = ACTIONS(123), [anon_sym_PLUS] = ACTIONS(85), [anon_sym_DASH] = ACTIONS(85), [anon_sym_STAR] = ACTIONS(85), [anon_sym_SLASH] = ACTIONS(85), [anon_sym_SLASH_SLASH] = ACTIONS(85), [anon_sym_CARET] = ACTIONS(85), [anon_sym_EQ_EQ] = ACTIONS(85), [anon_sym_SLASH_EQ] = ACTIONS(85), [anon_sym_LT] = ACTIONS(85), [anon_sym_GT] = ACTIONS(85), [anon_sym_LT_EQ] = ACTIONS(85), [anon_sym_GT_EQ] = ACTIONS(85), [anon_sym_AMP_AMP] = ACTIONS(85), [anon_sym_PIPE_PIPE] = ACTIONS(85), [anon_sym_PLUS_PLUS] = ACTIONS(85), [anon_sym_LT_PIPE] = ACTIONS(85), [anon_sym_PIPE_GT] = ACTIONS(85), [anon_sym_LT_LT] = ACTIONS(85), [anon_sym_GT_GT] = ACTIONS(85), [anon_sym_LT_SLASH_GT] = ACTIONS(85), [anon_sym_LT_QMARK_GT] = ACTIONS(85), [anon_sym_PIPE_DOT] = ACTIONS(85), [anon_sym_PIPE_EQ] = ACTIONS(85), [sym_minus_without_trailing_whitespace] = ACTIONS(126), }, [STATE(4)] = { [sym_block_comment] = STATE(4), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(68), [sym_operator_as_function_expr] = STATE(68), [sym__operator_as_function_inner] = STATE(60), [sym__atom] = STATE(53), [sym_field_access_expr] = STATE(41), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(68), [sym_parenthesized_expr] = STATE(41), [sym__literal_expr_group] = STATE(68), [sym_char_constant_expr] = STATE(64), [sym_number_constant_expr] = STATE(64), [sym_string_constant_expr] = STATE(64), [sym_anonymous_function_expr] = STATE(68), [sym_value_expr] = STATE(41), [sym_tuple_expr] = STATE(68), [sym_unit_expr] = STATE(68), [sym_list_expr] = STATE(68), [sym_record_expr] = STATE(41), [sym_if_else_expr] = STATE(68), [sym__if] = STATE(883), [sym_case_of_expr] = STATE(68), [sym_let_in_expr] = STATE(68), [sym_glsl_code_expr] = STATE(68), [sym__glsl_begin] = STATE(1058), [aux_sym_function_call_expr_repeat1] = STATE(3), [sym_lower_case_identifier] = ACTIONS(129), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(132), [anon_sym_COMMA] = ACTIONS(49), [anon_sym_RPAREN] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(135), [anon_sym_RBRACE] = ACTIONS(49), [anon_sym_SQUOTE] = ACTIONS(138), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(141), [anon_sym_DQUOTE] = ACTIONS(144), [anon_sym_LBRACK] = ACTIONS(147), [anon_sym_RBRACK] = ACTIONS(49), [anon_sym_else] = ACTIONS(49), [anon_sym_if] = ACTIONS(150), [anon_sym_then] = ACTIONS(49), [anon_sym_let] = ACTIONS(153), [anon_sym_COLON_COLON] = ACTIONS(49), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(156), [sym_upper_case_identifier] = ACTIONS(159), [sym_number_literal] = ACTIONS(162), [sym_case] = ACTIONS(165), [sym_of] = ACTIONS(49), [sym_backslash] = ACTIONS(168), [sym_dot] = ACTIONS(171), [anon_sym_PLUS] = ACTIONS(49), [anon_sym_DASH] = ACTIONS(49), [anon_sym_STAR] = ACTIONS(49), [anon_sym_SLASH] = ACTIONS(49), [anon_sym_SLASH_SLASH] = ACTIONS(49), [anon_sym_CARET] = ACTIONS(49), [anon_sym_EQ_EQ] = ACTIONS(49), [anon_sym_SLASH_EQ] = ACTIONS(49), [anon_sym_LT] = ACTIONS(49), [anon_sym_GT] = ACTIONS(49), [anon_sym_LT_EQ] = ACTIONS(49), [anon_sym_GT_EQ] = ACTIONS(49), [anon_sym_AMP_AMP] = ACTIONS(49), [anon_sym_PIPE_PIPE] = ACTIONS(49), [anon_sym_PLUS_PLUS] = ACTIONS(49), [anon_sym_LT_PIPE] = ACTIONS(49), [anon_sym_PIPE_GT] = ACTIONS(49), [anon_sym_LT_LT] = ACTIONS(49), [anon_sym_GT_GT] = ACTIONS(49), [anon_sym_LT_SLASH_GT] = ACTIONS(49), [anon_sym_LT_QMARK_GT] = ACTIONS(49), [anon_sym_PIPE_DOT] = ACTIONS(49), [anon_sym_PIPE_EQ] = ACTIONS(49), [sym_minus_without_trailing_whitespace] = ACTIONS(174), }, [STATE(5)] = { [sym_block_comment] = STATE(5), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(52), [sym__expression] = STATE(700), [sym_bin_op_expr] = STATE(303), [sym_operator_as_function_expr] = STATE(52), [sym__operator_as_function_inner] = STATE(60), [sym__call_or_atom] = STATE(277), [sym_function_call_expr] = STATE(323), [sym__function_call_target] = STATE(206), [sym__atom] = STATE(323), [sym_field_access_expr] = STATE(34), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(315), [sym_parenthesized_expr] = STATE(34), [sym__literal_expr_group] = STATE(315), [sym_char_constant_expr] = STATE(314), [sym_number_constant_expr] = STATE(314), [sym_string_constant_expr] = STATE(314), [sym_anonymous_function_expr] = STATE(315), [sym_value_expr] = STATE(34), [sym_tuple_expr] = STATE(315), [sym_unit_expr] = STATE(315), [sym_list_expr] = STATE(315), [sym_record_expr] = STATE(286), [sym_if_else_expr] = STATE(315), [sym__if] = STATE(864), [sym_case_of_expr] = STATE(315), [sym_let_in_expr] = STATE(315), [sym_glsl_code_expr] = STATE(315), [sym__glsl_begin] = STATE(966), [sym_operator_identifier] = STATE(970), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(177), [anon_sym_RPAREN] = ACTIONS(179), [anon_sym_LBRACE] = ACTIONS(181), [anon_sym_SQUOTE] = ACTIONS(183), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(185), [anon_sym_DQUOTE] = ACTIONS(187), [anon_sym_LBRACK] = ACTIONS(189), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(191), [anon_sym_COLON_COLON] = ACTIONS(193), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(195), [sym_case] = ACTIONS(197), [sym_backslash] = ACTIONS(199), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(193), [anon_sym_DASH] = ACTIONS(193), [anon_sym_STAR] = ACTIONS(193), [anon_sym_SLASH] = ACTIONS(193), [anon_sym_SLASH_SLASH] = ACTIONS(193), [anon_sym_CARET] = ACTIONS(193), [anon_sym_EQ_EQ] = ACTIONS(193), [anon_sym_SLASH_EQ] = ACTIONS(193), [anon_sym_LT] = ACTIONS(193), [anon_sym_GT] = ACTIONS(193), [anon_sym_LT_EQ] = ACTIONS(193), [anon_sym_GT_EQ] = ACTIONS(193), [anon_sym_AMP_AMP] = ACTIONS(193), [anon_sym_PIPE_PIPE] = ACTIONS(193), [anon_sym_PLUS_PLUS] = ACTIONS(193), [anon_sym_LT_PIPE] = ACTIONS(193), [anon_sym_PIPE_GT] = ACTIONS(193), [anon_sym_LT_LT] = ACTIONS(193), [anon_sym_GT_GT] = ACTIONS(193), [anon_sym_LT_SLASH_GT] = ACTIONS(193), [anon_sym_LT_QMARK_GT] = ACTIONS(193), [anon_sym_PIPE_DOT] = ACTIONS(193), [anon_sym_PIPE_EQ] = ACTIONS(193), [sym_minus_without_trailing_whitespace] = ACTIONS(201), }, [STATE(6)] = { [sym_block_comment] = STATE(6), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(52), [sym__expression] = STATE(713), [sym_bin_op_expr] = STATE(303), [sym_operator_as_function_expr] = STATE(52), [sym__operator_as_function_inner] = STATE(60), [sym__call_or_atom] = STATE(277), [sym_function_call_expr] = STATE(323), [sym__function_call_target] = STATE(206), [sym__atom] = STATE(323), [sym_field_access_expr] = STATE(34), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(315), [sym_parenthesized_expr] = STATE(34), [sym__literal_expr_group] = STATE(315), [sym_char_constant_expr] = STATE(314), [sym_number_constant_expr] = STATE(314), [sym_string_constant_expr] = STATE(314), [sym_anonymous_function_expr] = STATE(315), [sym_value_expr] = STATE(34), [sym_tuple_expr] = STATE(315), [sym_unit_expr] = STATE(315), [sym_list_expr] = STATE(315), [sym_record_expr] = STATE(286), [sym_if_else_expr] = STATE(315), [sym__if] = STATE(864), [sym_case_of_expr] = STATE(315), [sym_let_in_expr] = STATE(315), [sym_glsl_code_expr] = STATE(315), [sym__glsl_begin] = STATE(966), [sym_operator_identifier] = STATE(983), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(177), [anon_sym_RPAREN] = ACTIONS(179), [anon_sym_LBRACE] = ACTIONS(181), [anon_sym_SQUOTE] = ACTIONS(183), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(185), [anon_sym_DQUOTE] = ACTIONS(187), [anon_sym_LBRACK] = ACTIONS(189), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(191), [anon_sym_COLON_COLON] = ACTIONS(193), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(195), [sym_case] = ACTIONS(197), [sym_backslash] = ACTIONS(199), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(193), [anon_sym_DASH] = ACTIONS(193), [anon_sym_STAR] = ACTIONS(193), [anon_sym_SLASH] = ACTIONS(193), [anon_sym_SLASH_SLASH] = ACTIONS(193), [anon_sym_CARET] = ACTIONS(193), [anon_sym_EQ_EQ] = ACTIONS(193), [anon_sym_SLASH_EQ] = ACTIONS(193), [anon_sym_LT] = ACTIONS(193), [anon_sym_GT] = ACTIONS(193), [anon_sym_LT_EQ] = ACTIONS(193), [anon_sym_GT_EQ] = ACTIONS(193), [anon_sym_AMP_AMP] = ACTIONS(193), [anon_sym_PIPE_PIPE] = ACTIONS(193), [anon_sym_PLUS_PLUS] = ACTIONS(193), [anon_sym_LT_PIPE] = ACTIONS(193), [anon_sym_PIPE_GT] = ACTIONS(193), [anon_sym_LT_LT] = ACTIONS(193), [anon_sym_GT_GT] = ACTIONS(193), [anon_sym_LT_SLASH_GT] = ACTIONS(193), [anon_sym_LT_QMARK_GT] = ACTIONS(193), [anon_sym_PIPE_DOT] = ACTIONS(193), [anon_sym_PIPE_EQ] = ACTIONS(193), [sym_minus_without_trailing_whitespace] = ACTIONS(201), }, [STATE(7)] = { [sym_block_comment] = STATE(7), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(52), [sym__expression] = STATE(791), [sym_bin_op_expr] = STATE(303), [sym_operator_as_function_expr] = STATE(52), [sym__operator_as_function_inner] = STATE(60), [sym__call_or_atom] = STATE(277), [sym_function_call_expr] = STATE(323), [sym__function_call_target] = STATE(206), [sym__atom] = STATE(323), [sym_field_access_expr] = STATE(34), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(315), [sym_parenthesized_expr] = STATE(34), [sym__literal_expr_group] = STATE(315), [sym_char_constant_expr] = STATE(314), [sym_number_constant_expr] = STATE(314), [sym_string_constant_expr] = STATE(314), [sym_anonymous_function_expr] = STATE(315), [sym_value_expr] = STATE(34), [sym_tuple_expr] = STATE(315), [sym_unit_expr] = STATE(315), [sym_list_expr] = STATE(315), [sym_record_expr] = STATE(286), [sym_if_else_expr] = STATE(315), [sym__if] = STATE(864), [sym_case_of_expr] = STATE(315), [sym_let_in_expr] = STATE(315), [sym_glsl_code_expr] = STATE(315), [sym__glsl_begin] = STATE(966), [sym_operator_identifier] = STATE(1013), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(177), [anon_sym_RPAREN] = ACTIONS(203), [anon_sym_LBRACE] = ACTIONS(181), [anon_sym_SQUOTE] = ACTIONS(183), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(185), [anon_sym_DQUOTE] = ACTIONS(187), [anon_sym_LBRACK] = ACTIONS(189), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(191), [anon_sym_COLON_COLON] = ACTIONS(193), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(195), [sym_case] = ACTIONS(205), [sym_backslash] = ACTIONS(199), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(193), [anon_sym_DASH] = ACTIONS(193), [anon_sym_STAR] = ACTIONS(193), [anon_sym_SLASH] = ACTIONS(193), [anon_sym_SLASH_SLASH] = ACTIONS(193), [anon_sym_CARET] = ACTIONS(193), [anon_sym_EQ_EQ] = ACTIONS(193), [anon_sym_SLASH_EQ] = ACTIONS(193), [anon_sym_LT] = ACTIONS(193), [anon_sym_GT] = ACTIONS(193), [anon_sym_LT_EQ] = ACTIONS(193), [anon_sym_GT_EQ] = ACTIONS(193), [anon_sym_AMP_AMP] = ACTIONS(193), [anon_sym_PIPE_PIPE] = ACTIONS(193), [anon_sym_PLUS_PLUS] = ACTIONS(193), [anon_sym_LT_PIPE] = ACTIONS(193), [anon_sym_PIPE_GT] = ACTIONS(193), [anon_sym_LT_LT] = ACTIONS(193), [anon_sym_GT_GT] = ACTIONS(193), [anon_sym_LT_SLASH_GT] = ACTIONS(193), [anon_sym_LT_QMARK_GT] = ACTIONS(193), [anon_sym_PIPE_DOT] = ACTIONS(193), [anon_sym_PIPE_EQ] = ACTIONS(193), [sym_minus_without_trailing_whitespace] = ACTIONS(201), }, [STATE(8)] = { [sym_block_comment] = STATE(8), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(52), [sym__expression] = STATE(734), [sym_bin_op_expr] = STATE(303), [sym_operator_as_function_expr] = STATE(52), [sym__operator_as_function_inner] = STATE(60), [sym__call_or_atom] = STATE(277), [sym_function_call_expr] = STATE(323), [sym__function_call_target] = STATE(206), [sym__atom] = STATE(323), [sym_field_access_expr] = STATE(34), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(315), [sym_parenthesized_expr] = STATE(34), [sym__literal_expr_group] = STATE(315), [sym_char_constant_expr] = STATE(314), [sym_number_constant_expr] = STATE(314), [sym_string_constant_expr] = STATE(314), [sym_anonymous_function_expr] = STATE(315), [sym_value_expr] = STATE(34), [sym_tuple_expr] = STATE(315), [sym_unit_expr] = STATE(315), [sym_list_expr] = STATE(315), [sym_record_expr] = STATE(286), [sym_if_else_expr] = STATE(315), [sym__if] = STATE(864), [sym_case_of_expr] = STATE(315), [sym_let_in_expr] = STATE(315), [sym_glsl_code_expr] = STATE(315), [sym__glsl_begin] = STATE(966), [sym_operator_identifier] = STATE(948), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(177), [anon_sym_RPAREN] = ACTIONS(207), [anon_sym_LBRACE] = ACTIONS(181), [anon_sym_SQUOTE] = ACTIONS(183), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(185), [anon_sym_DQUOTE] = ACTIONS(187), [anon_sym_LBRACK] = ACTIONS(189), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(191), [anon_sym_COLON_COLON] = ACTIONS(193), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(195), [sym_case] = ACTIONS(209), [sym_backslash] = ACTIONS(199), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(193), [anon_sym_DASH] = ACTIONS(193), [anon_sym_STAR] = ACTIONS(193), [anon_sym_SLASH] = ACTIONS(193), [anon_sym_SLASH_SLASH] = ACTIONS(193), [anon_sym_CARET] = ACTIONS(193), [anon_sym_EQ_EQ] = ACTIONS(193), [anon_sym_SLASH_EQ] = ACTIONS(193), [anon_sym_LT] = ACTIONS(193), [anon_sym_GT] = ACTIONS(193), [anon_sym_LT_EQ] = ACTIONS(193), [anon_sym_GT_EQ] = ACTIONS(193), [anon_sym_AMP_AMP] = ACTIONS(193), [anon_sym_PIPE_PIPE] = ACTIONS(193), [anon_sym_PLUS_PLUS] = ACTIONS(193), [anon_sym_LT_PIPE] = ACTIONS(193), [anon_sym_PIPE_GT] = ACTIONS(193), [anon_sym_LT_LT] = ACTIONS(193), [anon_sym_GT_GT] = ACTIONS(193), [anon_sym_LT_SLASH_GT] = ACTIONS(193), [anon_sym_LT_QMARK_GT] = ACTIONS(193), [anon_sym_PIPE_DOT] = ACTIONS(193), [anon_sym_PIPE_EQ] = ACTIONS(193), [sym_minus_without_trailing_whitespace] = ACTIONS(201), }, [STATE(9)] = { [sym_block_comment] = STATE(9), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(52), [sym__expression] = STATE(801), [sym_bin_op_expr] = STATE(303), [sym_operator_as_function_expr] = STATE(52), [sym__operator_as_function_inner] = STATE(60), [sym__call_or_atom] = STATE(277), [sym_function_call_expr] = STATE(323), [sym__function_call_target] = STATE(206), [sym__atom] = STATE(323), [sym_field_access_expr] = STATE(34), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(315), [sym_parenthesized_expr] = STATE(34), [sym__literal_expr_group] = STATE(315), [sym_char_constant_expr] = STATE(314), [sym_number_constant_expr] = STATE(314), [sym_string_constant_expr] = STATE(314), [sym_anonymous_function_expr] = STATE(315), [sym_value_expr] = STATE(34), [sym_tuple_expr] = STATE(315), [sym_unit_expr] = STATE(315), [sym_list_expr] = STATE(315), [sym_record_expr] = STATE(286), [sym_if_else_expr] = STATE(315), [sym__if] = STATE(864), [sym_case_of_expr] = STATE(315), [sym_let_in_expr] = STATE(315), [sym_glsl_code_expr] = STATE(315), [sym__glsl_begin] = STATE(966), [sym_operator_identifier] = STATE(1013), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(177), [anon_sym_RPAREN] = ACTIONS(211), [anon_sym_LBRACE] = ACTIONS(181), [anon_sym_SQUOTE] = ACTIONS(183), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(185), [anon_sym_DQUOTE] = ACTIONS(187), [anon_sym_LBRACK] = ACTIONS(189), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(191), [anon_sym_COLON_COLON] = ACTIONS(193), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(195), [sym_case] = ACTIONS(213), [sym_backslash] = ACTIONS(199), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(193), [anon_sym_DASH] = ACTIONS(193), [anon_sym_STAR] = ACTIONS(193), [anon_sym_SLASH] = ACTIONS(193), [anon_sym_SLASH_SLASH] = ACTIONS(193), [anon_sym_CARET] = ACTIONS(193), [anon_sym_EQ_EQ] = ACTIONS(193), [anon_sym_SLASH_EQ] = ACTIONS(193), [anon_sym_LT] = ACTIONS(193), [anon_sym_GT] = ACTIONS(193), [anon_sym_LT_EQ] = ACTIONS(193), [anon_sym_GT_EQ] = ACTIONS(193), [anon_sym_AMP_AMP] = ACTIONS(193), [anon_sym_PIPE_PIPE] = ACTIONS(193), [anon_sym_PLUS_PLUS] = ACTIONS(193), [anon_sym_LT_PIPE] = ACTIONS(193), [anon_sym_PIPE_GT] = ACTIONS(193), [anon_sym_LT_LT] = ACTIONS(193), [anon_sym_GT_GT] = ACTIONS(193), [anon_sym_LT_SLASH_GT] = ACTIONS(193), [anon_sym_LT_QMARK_GT] = ACTIONS(193), [anon_sym_PIPE_DOT] = ACTIONS(193), [anon_sym_PIPE_EQ] = ACTIONS(193), [sym_minus_without_trailing_whitespace] = ACTIONS(201), }, [STATE(10)] = { [sym_block_comment] = STATE(10), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(52), [sym__expression] = STATE(779), [sym_bin_op_expr] = STATE(303), [sym_operator_as_function_expr] = STATE(52), [sym__operator_as_function_inner] = STATE(60), [sym__call_or_atom] = STATE(277), [sym_function_call_expr] = STATE(323), [sym__function_call_target] = STATE(206), [sym__atom] = STATE(323), [sym_field_access_expr] = STATE(34), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(315), [sym_parenthesized_expr] = STATE(34), [sym__literal_expr_group] = STATE(315), [sym_char_constant_expr] = STATE(314), [sym_number_constant_expr] = STATE(314), [sym_string_constant_expr] = STATE(314), [sym_anonymous_function_expr] = STATE(315), [sym_value_expr] = STATE(34), [sym_tuple_expr] = STATE(315), [sym_unit_expr] = STATE(315), [sym_list_expr] = STATE(315), [sym_record_expr] = STATE(286), [sym_if_else_expr] = STATE(315), [sym__if] = STATE(864), [sym_case_of_expr] = STATE(315), [sym_let_in_expr] = STATE(315), [sym_glsl_code_expr] = STATE(315), [sym__glsl_begin] = STATE(966), [sym_operator_identifier] = STATE(948), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(177), [anon_sym_RPAREN] = ACTIONS(215), [anon_sym_LBRACE] = ACTIONS(181), [anon_sym_SQUOTE] = ACTIONS(183), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(185), [anon_sym_DQUOTE] = ACTIONS(187), [anon_sym_LBRACK] = ACTIONS(189), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(191), [anon_sym_COLON_COLON] = ACTIONS(193), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(195), [sym_case] = ACTIONS(217), [sym_backslash] = ACTIONS(199), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(193), [anon_sym_DASH] = ACTIONS(193), [anon_sym_STAR] = ACTIONS(193), [anon_sym_SLASH] = ACTIONS(193), [anon_sym_SLASH_SLASH] = ACTIONS(193), [anon_sym_CARET] = ACTIONS(193), [anon_sym_EQ_EQ] = ACTIONS(193), [anon_sym_SLASH_EQ] = ACTIONS(193), [anon_sym_LT] = ACTIONS(193), [anon_sym_GT] = ACTIONS(193), [anon_sym_LT_EQ] = ACTIONS(193), [anon_sym_GT_EQ] = ACTIONS(193), [anon_sym_AMP_AMP] = ACTIONS(193), [anon_sym_PIPE_PIPE] = ACTIONS(193), [anon_sym_PLUS_PLUS] = ACTIONS(193), [anon_sym_LT_PIPE] = ACTIONS(193), [anon_sym_PIPE_GT] = ACTIONS(193), [anon_sym_LT_LT] = ACTIONS(193), [anon_sym_GT_GT] = ACTIONS(193), [anon_sym_LT_SLASH_GT] = ACTIONS(193), [anon_sym_LT_QMARK_GT] = ACTIONS(193), [anon_sym_PIPE_DOT] = ACTIONS(193), [anon_sym_PIPE_EQ] = ACTIONS(193), [sym_minus_without_trailing_whitespace] = ACTIONS(201), }, [STATE(11)] = { [sym_block_comment] = STATE(11), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(52), [sym__expression] = STATE(803), [sym_bin_op_expr] = STATE(303), [sym_operator_as_function_expr] = STATE(52), [sym__operator_as_function_inner] = STATE(60), [sym__call_or_atom] = STATE(277), [sym_function_call_expr] = STATE(323), [sym__function_call_target] = STATE(206), [sym__atom] = STATE(323), [sym_field_access_expr] = STATE(34), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(315), [sym_parenthesized_expr] = STATE(34), [sym__literal_expr_group] = STATE(315), [sym_char_constant_expr] = STATE(314), [sym_number_constant_expr] = STATE(314), [sym_string_constant_expr] = STATE(314), [sym_anonymous_function_expr] = STATE(315), [sym_value_expr] = STATE(34), [sym_tuple_expr] = STATE(315), [sym_unit_expr] = STATE(315), [sym_list_expr] = STATE(315), [sym_record_expr] = STATE(286), [sym_if_else_expr] = STATE(315), [sym__if] = STATE(864), [sym_case_of_expr] = STATE(315), [sym_let_in_expr] = STATE(315), [sym_glsl_code_expr] = STATE(315), [sym__glsl_begin] = STATE(966), [sym_operator_identifier] = STATE(970), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(177), [anon_sym_RPAREN] = ACTIONS(219), [anon_sym_LBRACE] = ACTIONS(181), [anon_sym_SQUOTE] = ACTIONS(183), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(185), [anon_sym_DQUOTE] = ACTIONS(187), [anon_sym_LBRACK] = ACTIONS(189), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(191), [anon_sym_COLON_COLON] = ACTIONS(193), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(195), [sym_case] = ACTIONS(221), [sym_backslash] = ACTIONS(199), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(193), [anon_sym_DASH] = ACTIONS(193), [anon_sym_STAR] = ACTIONS(193), [anon_sym_SLASH] = ACTIONS(193), [anon_sym_SLASH_SLASH] = ACTIONS(193), [anon_sym_CARET] = ACTIONS(193), [anon_sym_EQ_EQ] = ACTIONS(193), [anon_sym_SLASH_EQ] = ACTIONS(193), [anon_sym_LT] = ACTIONS(193), [anon_sym_GT] = ACTIONS(193), [anon_sym_LT_EQ] = ACTIONS(193), [anon_sym_GT_EQ] = ACTIONS(193), [anon_sym_AMP_AMP] = ACTIONS(193), [anon_sym_PIPE_PIPE] = ACTIONS(193), [anon_sym_PLUS_PLUS] = ACTIONS(193), [anon_sym_LT_PIPE] = ACTIONS(193), [anon_sym_PIPE_GT] = ACTIONS(193), [anon_sym_LT_LT] = ACTIONS(193), [anon_sym_GT_GT] = ACTIONS(193), [anon_sym_LT_SLASH_GT] = ACTIONS(193), [anon_sym_LT_QMARK_GT] = ACTIONS(193), [anon_sym_PIPE_DOT] = ACTIONS(193), [anon_sym_PIPE_EQ] = ACTIONS(193), [sym_minus_without_trailing_whitespace] = ACTIONS(201), }, [STATE(12)] = { [sym_block_comment] = STATE(12), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(52), [sym__expression] = STATE(758), [sym_bin_op_expr] = STATE(303), [sym_operator_as_function_expr] = STATE(52), [sym__operator_as_function_inner] = STATE(60), [sym__call_or_atom] = STATE(277), [sym_function_call_expr] = STATE(323), [sym__function_call_target] = STATE(206), [sym__atom] = STATE(323), [sym_field_access_expr] = STATE(34), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(315), [sym_parenthesized_expr] = STATE(34), [sym__literal_expr_group] = STATE(315), [sym_char_constant_expr] = STATE(314), [sym_number_constant_expr] = STATE(314), [sym_string_constant_expr] = STATE(314), [sym_anonymous_function_expr] = STATE(315), [sym_value_expr] = STATE(34), [sym_tuple_expr] = STATE(315), [sym_unit_expr] = STATE(315), [sym_list_expr] = STATE(315), [sym_record_expr] = STATE(286), [sym_if_else_expr] = STATE(315), [sym__if] = STATE(864), [sym_case_of_expr] = STATE(315), [sym_let_in_expr] = STATE(315), [sym_glsl_code_expr] = STATE(315), [sym__glsl_begin] = STATE(966), [sym_operator_identifier] = STATE(975), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(177), [anon_sym_RPAREN] = ACTIONS(207), [anon_sym_LBRACE] = ACTIONS(181), [anon_sym_SQUOTE] = ACTIONS(183), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(185), [anon_sym_DQUOTE] = ACTIONS(187), [anon_sym_LBRACK] = ACTIONS(189), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(191), [anon_sym_COLON_COLON] = ACTIONS(193), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(195), [sym_case] = ACTIONS(209), [sym_backslash] = ACTIONS(199), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(193), [anon_sym_DASH] = ACTIONS(193), [anon_sym_STAR] = ACTIONS(193), [anon_sym_SLASH] = ACTIONS(193), [anon_sym_SLASH_SLASH] = ACTIONS(193), [anon_sym_CARET] = ACTIONS(193), [anon_sym_EQ_EQ] = ACTIONS(193), [anon_sym_SLASH_EQ] = ACTIONS(193), [anon_sym_LT] = ACTIONS(193), [anon_sym_GT] = ACTIONS(193), [anon_sym_LT_EQ] = ACTIONS(193), [anon_sym_GT_EQ] = ACTIONS(193), [anon_sym_AMP_AMP] = ACTIONS(193), [anon_sym_PIPE_PIPE] = ACTIONS(193), [anon_sym_PLUS_PLUS] = ACTIONS(193), [anon_sym_LT_PIPE] = ACTIONS(193), [anon_sym_PIPE_GT] = ACTIONS(193), [anon_sym_LT_LT] = ACTIONS(193), [anon_sym_GT_GT] = ACTIONS(193), [anon_sym_LT_SLASH_GT] = ACTIONS(193), [anon_sym_LT_QMARK_GT] = ACTIONS(193), [anon_sym_PIPE_DOT] = ACTIONS(193), [anon_sym_PIPE_EQ] = ACTIONS(193), [sym_minus_without_trailing_whitespace] = ACTIONS(201), }, [STATE(13)] = { [sym_block_comment] = STATE(13), [sym_upper_case_qid] = STATE(32), [sym_value_qid] = STATE(32), [sym_field_accessor_function_expr] = STATE(52), [sym__expression] = STATE(800), [sym_bin_op_expr] = STATE(303), [sym_operator_as_function_expr] = STATE(52), [sym__operator_as_function_inner] = STATE(60), [sym__call_or_atom] = STATE(277), [sym_function_call_expr] = STATE(323), [sym__function_call_target] = STATE(206), [sym__atom] = STATE(323), [sym_field_access_expr] = STATE(34), [sym__field_access_start] = STATE(691), [sym_negate_expr] = STATE(315), [sym_parenthesized_expr] = STATE(34), [sym__literal_expr_group] = STATE(315), [sym_char_constant_expr] = STATE(314), [sym_number_constant_expr] = STATE(314), [sym_string_constant_expr] = STATE(314), [sym_anonymous_function_expr] = STATE(315), [sym_value_expr] = STATE(34), [sym_tuple_expr] = STATE(315), [sym_unit_expr] = STATE(315), [sym_list_expr] = STATE(315), [sym_record_expr] = STATE(286), [sym_if_else_expr] = STATE(315), [sym__if] = STATE(864), [sym_case_of_expr] = STATE(315), [sym_let_in_expr] = STATE(315), [sym_glsl_code_expr] = STATE(315), [sym__glsl_begin] = STATE(966), [sym_operator_identifier] = STATE(933), [sym_lower_case_identifier] = ACTIONS(41), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(177), [anon_sym_RPAREN] = ACTIONS(203), [anon_sym_LBRACE] = ACTIONS(181), [anon_sym_SQUOTE] = ACTIONS(183), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(185), [anon_sym_DQUOTE] = ACTIONS(187), [anon_sym_LBRACK] = ACTIONS(189), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(191), [anon_sym_COLON_COLON] = ACTIONS(193), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(67), [sym_number_literal] = ACTIONS(195), [sym_case] = ACTIONS(205), [sym_backslash] = ACTIONS(199), [sym_dot] = ACTIONS(75), [anon_sym_PLUS] = ACTIONS(193), [anon_sym_DASH] = ACTIONS(193), [anon_sym_STAR] = ACTIONS(193), [anon_sym_SLASH] = ACTIONS(193), [anon_sym_SLASH_SLASH] = ACTIONS(193), [anon_sym_CARET] = ACTIONS(193), [anon_sym_EQ_EQ] = ACTIONS(193), [anon_sym_SLASH_EQ] = ACTIONS(193), [anon_sym_LT] = ACTIONS(193), [anon_sym_GT] = ACTIONS(193), [anon_sym_LT_EQ] = ACTIONS(193), [anon_sym_GT_EQ] = ACTIONS(193), [anon_sym_AMP_AMP] = ACTIONS(193), [anon_sym_PIPE_PIPE] = ACTIONS(193), [anon_sym_PLUS_PLUS] = ACTIONS(193), [anon_sym_LT_PIPE] = ACTIONS(193), [anon_sym_PIPE_GT] = ACTIONS(193), [anon_sym_LT_LT] = ACTIONS(193), [anon_sym_GT_GT] = ACTIONS(193), [anon_sym_LT_SLASH_GT] = ACTIONS(193), [anon_sym_LT_QMARK_GT] = ACTIONS(193), [anon_sym_PIPE_DOT] = ACTIONS(193), [anon_sym_PIPE_EQ] = ACTIONS(193), [sym_minus_without_trailing_whitespace] = ACTIONS(201), }, [STATE(14)] = { [sym_block_comment] = STATE(14), [sym_upper_case_qid] = STATE(149), [sym_value_qid] = STATE(149), [sym_field_accessor_function_expr] = STATE(194), [sym_operator_as_function_expr] = STATE(194), [sym__operator_as_function_inner] = STATE(178), [sym__atom] = STATE(165), [sym_field_access_expr] = STATE(147), [sym__field_access_start] = STATE(670), [sym_negate_expr] = STATE(194), [sym_parenthesized_expr] = STATE(147), [sym__literal_expr_group] = STATE(194), [sym_char_constant_expr] = STATE(199), [sym_number_constant_expr] = STATE(199), [sym_string_constant_expr] = STATE(199), [sym_anonymous_function_expr] = STATE(194), [sym_value_expr] = STATE(147), [sym_tuple_expr] = STATE(194), [sym_unit_expr] = STATE(194), [sym_list_expr] = STATE(194), [sym_record_expr] = STATE(147), [sym_if_else_expr] = STATE(194), [sym__if] = STATE(897), [sym_case_of_expr] = STATE(194), [sym_let_in_expr] = STATE(194), [sym_glsl_code_expr] = STATE(194), [sym__glsl_begin] = STATE(1010), [aux_sym_function_call_expr_repeat1] = STATE(15), [sym_lower_case_identifier] = ACTIONS(223), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(225), [anon_sym_RPAREN] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(227), [anon_sym_SQUOTE] = ACTIONS(229), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(231), [anon_sym_DQUOTE] = ACTIONS(233), [anon_sym_LBRACK] = ACTIONS(235), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(237), [anon_sym_COLON_COLON] = ACTIONS(49), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(239), [sym_number_literal] = ACTIONS(241), [sym_case] = ACTIONS(243), [sym_backslash] = ACTIONS(245), [sym_dot] = ACTIONS(247), [anon_sym_PLUS] = ACTIONS(49), [anon_sym_DASH] = ACTIONS(49), [anon_sym_STAR] = ACTIONS(49), [anon_sym_SLASH] = ACTIONS(49), [anon_sym_SLASH_SLASH] = ACTIONS(49), [anon_sym_CARET] = ACTIONS(49), [anon_sym_EQ_EQ] = ACTIONS(49), [anon_sym_SLASH_EQ] = ACTIONS(49), [anon_sym_LT] = ACTIONS(49), [anon_sym_GT] = ACTIONS(49), [anon_sym_LT_EQ] = ACTIONS(49), [anon_sym_GT_EQ] = ACTIONS(49), [anon_sym_AMP_AMP] = ACTIONS(49), [anon_sym_PIPE_PIPE] = ACTIONS(49), [anon_sym_PLUS_PLUS] = ACTIONS(49), [anon_sym_LT_PIPE] = ACTIONS(49), [anon_sym_PIPE_GT] = ACTIONS(49), [anon_sym_LT_LT] = ACTIONS(49), [anon_sym_GT_GT] = ACTIONS(49), [anon_sym_LT_SLASH_GT] = ACTIONS(49), [anon_sym_LT_QMARK_GT] = ACTIONS(49), [anon_sym_PIPE_DOT] = ACTIONS(49), [anon_sym_PIPE_EQ] = ACTIONS(49), [sym__virtual_end_decl] = ACTIONS(249), [sym__virtual_end_section] = ACTIONS(249), [sym_minus_without_trailing_whitespace] = ACTIONS(251), }, [STATE(15)] = { [sym_block_comment] = STATE(15), [sym_upper_case_qid] = STATE(149), [sym_value_qid] = STATE(149), [sym_field_accessor_function_expr] = STATE(194), [sym_operator_as_function_expr] = STATE(194), [sym__operator_as_function_inner] = STATE(178), [sym__atom] = STATE(165), [sym_field_access_expr] = STATE(147), [sym__field_access_start] = STATE(670), [sym_negate_expr] = STATE(194), [sym_parenthesized_expr] = STATE(147), [sym__literal_expr_group] = STATE(194), [sym_char_constant_expr] = STATE(199), [sym_number_constant_expr] = STATE(199), [sym_string_constant_expr] = STATE(199), [sym_anonymous_function_expr] = STATE(194), [sym_value_expr] = STATE(147), [sym_tuple_expr] = STATE(194), [sym_unit_expr] = STATE(194), [sym_list_expr] = STATE(194), [sym_record_expr] = STATE(147), [sym_if_else_expr] = STATE(194), [sym__if] = STATE(897), [sym_case_of_expr] = STATE(194), [sym_let_in_expr] = STATE(194), [sym_glsl_code_expr] = STATE(194), [sym__glsl_begin] = STATE(1010), [aux_sym_function_call_expr_repeat1] = STATE(15), [sym_lower_case_identifier] = ACTIONS(253), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(256), [anon_sym_RPAREN] = ACTIONS(85), [anon_sym_LBRACE] = ACTIONS(259), [anon_sym_SQUOTE] = ACTIONS(262), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(265), [anon_sym_DQUOTE] = ACTIONS(268), [anon_sym_LBRACK] = ACTIONS(271), [anon_sym_if] = ACTIONS(102), [anon_sym_let] = ACTIONS(274), [anon_sym_COLON_COLON] = ACTIONS(85), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(108), [sym_upper_case_identifier] = ACTIONS(277), [sym_number_literal] = ACTIONS(280), [sym_case] = ACTIONS(283), [sym_backslash] = ACTIONS(286), [sym_dot] = ACTIONS(289), [anon_sym_PLUS] = ACTIONS(85), [anon_sym_DASH] = ACTIONS(85), [anon_sym_STAR] = ACTIONS(85), [anon_sym_SLASH] = ACTIONS(85), [anon_sym_SLASH_SLASH] = ACTIONS(85), [anon_sym_CARET] = ACTIONS(85), [anon_sym_EQ_EQ] = ACTIONS(85), [anon_sym_SLASH_EQ] = ACTIONS(85), [anon_sym_LT] = ACTIONS(85), [anon_sym_GT] = ACTIONS(85), [anon_sym_LT_EQ] = ACTIONS(85), [anon_sym_GT_EQ] = ACTIONS(85), [anon_sym_AMP_AMP] = ACTIONS(85), [anon_sym_PIPE_PIPE] = ACTIONS(85), [anon_sym_PLUS_PLUS] = ACTIONS(85), [anon_sym_LT_PIPE] = ACTIONS(85), [anon_sym_PIPE_GT] = ACTIONS(85), [anon_sym_LT_LT] = ACTIONS(85), [anon_sym_GT_GT] = ACTIONS(85), [anon_sym_LT_SLASH_GT] = ACTIONS(85), [anon_sym_LT_QMARK_GT] = ACTIONS(85), [anon_sym_PIPE_DOT] = ACTIONS(85), [anon_sym_PIPE_EQ] = ACTIONS(85), [sym__virtual_end_decl] = ACTIONS(292), [sym__virtual_end_section] = ACTIONS(292), [sym_minus_without_trailing_whitespace] = ACTIONS(294), }, [STATE(16)] = { [sym_block_comment] = STATE(16), [sym_upper_case_qid] = STATE(149), [sym_value_qid] = STATE(149), [sym_field_accessor_function_expr] = STATE(194), [sym_operator_as_function_expr] = STATE(194), [sym__operator_as_function_inner] = STATE(178), [sym__atom] = STATE(165), [sym_field_access_expr] = STATE(147), [sym__field_access_start] = STATE(670), [sym_negate_expr] = STATE(194), [sym_parenthesized_expr] = STATE(147), [sym__literal_expr_group] = STATE(194), [sym_char_constant_expr] = STATE(199), [sym_number_constant_expr] = STATE(199), [sym_string_constant_expr] = STATE(199), [sym_anonymous_function_expr] = STATE(194), [sym_value_expr] = STATE(147), [sym_tuple_expr] = STATE(194), [sym_unit_expr] = STATE(194), [sym_list_expr] = STATE(194), [sym_record_expr] = STATE(147), [sym_if_else_expr] = STATE(194), [sym__if] = STATE(897), [sym_case_of_expr] = STATE(194), [sym_let_in_expr] = STATE(194), [sym_glsl_code_expr] = STATE(194), [sym__glsl_begin] = STATE(1010), [aux_sym_function_call_expr_repeat1] = STATE(15), [sym_lower_case_identifier] = ACTIONS(297), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(300), [anon_sym_RPAREN] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(303), [anon_sym_SQUOTE] = ACTIONS(306), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(309), [anon_sym_DQUOTE] = ACTIONS(312), [anon_sym_LBRACK] = ACTIONS(315), [anon_sym_if] = ACTIONS(150), [anon_sym_let] = ACTIONS(318), [anon_sym_COLON_COLON] = ACTIONS(49), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(156), [sym_upper_case_identifier] = ACTIONS(321), [sym_number_literal] = ACTIONS(324), [sym_case] = ACTIONS(327), [sym_backslash] = ACTIONS(330), [sym_dot] = ACTIONS(333), [anon_sym_PLUS] = ACTIONS(49), [anon_sym_DASH] = ACTIONS(49), [anon_sym_STAR] = ACTIONS(49), [anon_sym_SLASH] = ACTIONS(49), [anon_sym_SLASH_SLASH] = ACTIONS(49), [anon_sym_CARET] = ACTIONS(49), [anon_sym_EQ_EQ] = ACTIONS(49), [anon_sym_SLASH_EQ] = ACTIONS(49), [anon_sym_LT] = ACTIONS(49), [anon_sym_GT] = ACTIONS(49), [anon_sym_LT_EQ] = ACTIONS(49), [anon_sym_GT_EQ] = ACTIONS(49), [anon_sym_AMP_AMP] = ACTIONS(49), [anon_sym_PIPE_PIPE] = ACTIONS(49), [anon_sym_PLUS_PLUS] = ACTIONS(49), [anon_sym_LT_PIPE] = ACTIONS(49), [anon_sym_PIPE_GT] = ACTIONS(49), [anon_sym_LT_LT] = ACTIONS(49), [anon_sym_GT_GT] = ACTIONS(49), [anon_sym_LT_SLASH_GT] = ACTIONS(49), [anon_sym_LT_QMARK_GT] = ACTIONS(49), [anon_sym_PIPE_DOT] = ACTIONS(49), [anon_sym_PIPE_EQ] = ACTIONS(49), [sym__virtual_end_decl] = ACTIONS(249), [sym__virtual_end_section] = ACTIONS(249), [sym_minus_without_trailing_whitespace] = ACTIONS(336), }, [STATE(17)] = { [sym_block_comment] = STATE(17), [sym_upper_case_qid] = STATE(219), [sym_value_qid] = STATE(219), [sym_field_accessor_function_expr] = STATE(232), [sym_operator_as_function_expr] = STATE(232), [sym__operator_as_function_inner] = STATE(250), [sym__atom] = STATE(261), [sym_field_access_expr] = STATE(212), [sym__field_access_start] = STATE(665), [sym_negate_expr] = STATE(232), [sym_parenthesized_expr] = STATE(212), [sym__literal_expr_group] = STATE(232), [sym_char_constant_expr] = STATE(245), [sym_number_constant_expr] = STATE(245), [sym_string_constant_expr] = STATE(245), [sym_anonymous_function_expr] = STATE(232), [sym_value_expr] = STATE(212), [sym_tuple_expr] = STATE(232), [sym_unit_expr] = STATE(232), [sym_list_expr] = STATE(232), [sym_record_expr] = STATE(212), [sym_if_else_expr] = STATE(232), [sym__if] = STATE(876), [sym_case_of_expr] = STATE(232), [sym_let_in_expr] = STATE(232), [sym_glsl_code_expr] = STATE(232), [sym__glsl_begin] = STATE(982), [aux_sym_function_call_expr_repeat1] = STATE(18), [sym_lower_case_identifier] = ACTIONS(339), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(341), [anon_sym_LBRACE] = ACTIONS(343), [anon_sym_SQUOTE] = ACTIONS(345), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(347), [anon_sym_DQUOTE] = ACTIONS(349), [anon_sym_LBRACK] = ACTIONS(351), [anon_sym_if] = ACTIONS(61), [anon_sym_let] = ACTIONS(353), [anon_sym_COLON_COLON] = ACTIONS(49), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(65), [sym_upper_case_identifier] = ACTIONS(355), [sym_number_literal] = ACTIONS(357), [sym_case] = ACTIONS(359), [sym_backslash] = ACTIONS(361), [sym_dot] = ACTIONS(363), [anon_sym_PLUS] = ACTIONS(49), [anon_sym_DASH] = ACTIONS(49), [anon_sym_STAR] = ACTIONS(49), [anon_sym_SLASH] = ACTIONS(49), [anon_sym_SLASH_SLASH] = ACTIONS(49), [anon_sym_CARET] = ACTIONS(49), [anon_sym_EQ_EQ] = ACTIONS(49), [anon_sym_SLASH_EQ] = ACTIONS(49), [anon_sym_LT] = ACTIONS(49), [anon_sym_GT] = ACTIONS(49), [anon_sym_LT_EQ] = ACTIONS(49), [anon_sym_GT_EQ] = ACTIONS(49), [anon_sym_AMP_AMP] = ACTIONS(49), [anon_sym_PIPE_PIPE] = ACTIONS(49), [anon_sym_PLUS_PLUS] = ACTIONS(49), [anon_sym_LT_PIPE] = ACTIONS(49), [anon_sym_PIPE_GT] = ACTIONS(49), [anon_sym_LT_LT] = ACTIONS(49), [anon_sym_GT_GT] = ACTIONS(49), [anon_sym_LT_SLASH_GT] = ACTIONS(49), [anon_sym_LT_QMARK_GT] = ACTIONS(49), [anon_sym_PIPE_DOT] = ACTIONS(49), [anon_sym_PIPE_EQ] = ACTIONS(49), [sym__virtual_end_decl] = ACTIONS(249), [sym_minus_without_trailing_whitespace] = ACTIONS(365), }, [STATE(18)] = { [sym_block_comment] = STATE(18), [sym_upper_case_qid] = STATE(219), [sym_value_qid] = STATE(219), [sym_field_accessor_function_expr] = STATE(232), [sym_operator_as_function_expr] = STATE(232), [sym__operator_as_function_inner] = STATE(250), [sym__atom] = STATE(261), [sym_field_access_expr] = STATE(212), [sym__field_access_start] = STATE(665), [sym_negate_expr] = STATE(232), [sym_parenthesized_expr] = STATE(212), [sym__literal_expr_group] = STATE(232), [sym_char_constant_expr] = STATE(245), [sym_number_constant_expr] = STATE(245), [sym_string_constant_expr] = STATE(245), [sym_anonymous_function_expr] = STATE(232), [sym_value_expr] = STATE(212), [sym_tuple_expr] = STATE(232), [sym_unit_expr] = STATE(232), [sym_list_expr] = STATE(232), [sym_record_expr] = STATE(212), [sym_if_else_expr] = STATE(232), [sym__if] = STATE(876), [sym_case_of_expr] = STATE(232), [sym_let_in_expr] = STATE(232), [sym_glsl_code_expr] = STATE(232), [sym__glsl_begin] = STATE(982), [aux_sym_function_call_expr_repeat1] = STATE(18), [sym_lower_case_identifier] = ACTIONS(367), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(370), [anon_sym_LBRACE] = ACTIONS(373), [anon_sym_SQUOTE] = ACTIONS(376), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(379), [anon_sym_DQUOTE] = ACTIONS(382), [anon_sym_LBRACK] = ACTIONS(385), [anon_sym_if] = ACTIONS(102), [anon_sym_let] = ACTIONS(388), [anon_sym_COLON_COLON] = ACTIONS(85), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(108), [sym_upper_case_identifier] = ACTIONS(391), [sym_number_literal] = ACTIONS(394), [sym_case] = ACTIONS(397), [sym_backslash] = ACTIONS(400), [sym_dot] = ACTIONS(403), [anon_sym_PLUS] = ACTIONS(85), [anon_sym_DASH] = ACTIONS(85), [anon_sym_STAR] = ACTIONS(85), [anon_sym_SLASH] = ACTIONS(85), [anon_sym_SLASH_SLASH] = ACTIONS(85), [anon_sym_CARET] = ACTIONS(85), [anon_sym_EQ_EQ] = ACTIONS(85), [anon_sym_SLASH_EQ] = ACTIONS(85), [anon_sym_LT] = ACTIONS(85), [anon_sym_GT] = ACTIONS(85), [anon_sym_LT_EQ] = ACTIONS(85), [anon_sym_GT_EQ] = ACTIONS(85), [anon_sym_AMP_AMP] = ACTIONS(85), [anon_sym_PIPE_PIPE] = ACTIONS(85), [anon_sym_PLUS_PLUS] = ACTIONS(85), [anon_sym_LT_PIPE] = ACTIONS(85), [anon_sym_PIPE_GT] = ACTIONS(85), [anon_sym_LT_LT] = ACTIONS(85), [anon_sym_GT_GT] = ACTIONS(85), [anon_sym_LT_SLASH_GT] = ACTIONS(85), [anon_sym_LT_QMARK_GT] = ACTIONS(85), [anon_sym_PIPE_DOT] = ACTIONS(85), [anon_sym_PIPE_EQ] = ACTIONS(85), [sym__virtual_end_decl] = ACTIONS(292), [sym_minus_without_trailing_whitespace] = ACTIONS(406), }, [STATE(19)] = { [sym_block_comment] = STATE(19), [sym_upper_case_qid] = STATE(219), [sym_value_qid] = STATE(219), [sym_field_accessor_function_expr] = STATE(232), [sym_operator_as_function_expr] = STATE(232), [sym__operator_as_function_inner] = STATE(250), [sym__atom] = STATE(261), [sym_field_access_expr] = STATE(212), [sym__field_access_start] = STATE(665), [sym_negate_expr] = STATE(232), [sym_parenthesized_expr] = STATE(212), [sym__literal_expr_group] = STATE(232), [sym_char_constant_expr] = STATE(245), [sym_number_constant_expr] = STATE(245), [sym_string_constant_expr] = STATE(245), [sym_anonymous_function_expr] = STATE(232), [sym_value_expr] = STATE(212), [sym_tuple_expr] = STATE(232), [sym_unit_expr] = STATE(232), [sym_list_expr] = STATE(232), [sym_record_expr] = STATE(212), [sym_if_else_expr] = STATE(232), [sym__if] = STATE(876), [sym_case_of_expr] = STATE(232), [sym_let_in_expr] = STATE(232), [sym_glsl_code_expr] = STATE(232), [sym__glsl_begin] = STATE(982), [aux_sym_function_call_expr_repeat1] = STATE(18), [sym_lower_case_identifier] = ACTIONS(409), [anon_sym_LBRACE_DASH] = ACTIONS(43), [sym_line_comment] = ACTIONS(45), [anon_sym_LPAREN] = ACTIONS(412), [anon_sym_LBRACE] = ACTIONS(415), [anon_sym_SQUOTE] = ACTIONS(418), [anon_sym_DQUOTE_DQUOTE_DQUOTE] = ACTIONS(421), [anon_sym_DQUOTE] = ACTIONS(424), [anon_sym_LBRACK] = ACTIONS(427), [anon_sym_if] = ACTIONS(150), [anon_sym_let] = ACTIONS(430), [anon_sym_COLON_COLON] = ACTIONS(49), [anon_sym_LBRACKglsl_PIPE] = ACTIONS(156), [sym_upper_case_identifier] = ACTIONS(433), [sym_number_literal] = ACTIONS(436), [sym_case] = ACTIONS(439), [sym_backslash] = ACTIONS(442), [sym_dot] = ACTIONS(445), [anon_sym_PLUS] = ACTIONS(49), [anon_sym_DASH] = ACTIONS(49), [anon_sym_STAR] = ACTIONS(49), [anon_sym_SLASH] = ACTIONS(49), [anon_sym_SLASH_SLASH] = ACTIONS(49), [anon_sym_CARET] = ACTIONS(49), [anon_sym_EQ_EQ] = ACTIONS(49), [anon_sym_SLASH_EQ] = ACTIONS(49), [anon_sym_LT] = ACTIONS(49), [anon_sym_GT] = ACTIONS(49), [anon_sym_LT_EQ] = ACTIONS(49), [anon_sym_GT_EQ] = ACTIONS(49), [anon_sym_AMP_AMP] = ACTIONS(49), [anon_sym_PIPE_PIPE] = ACTIONS(49), [anon_sym_PLUS_PLUS] = ACTIONS(49), [anon_sym_LT_PIPE] = ACTIONS(49), [anon_sym_PIPE_GT] = ACTIONS(49), [anon_sym_LT_LT] = ACTIONS(49), [anon_sym_GT_GT] = ACTIONS(49), [anon_sym_LT_SLASH_GT] = ACTIONS(49), [anon_sym_LT_QMARK_GT] = ACTIONS(49), [anon_sym_PIPE_DOT] = ACTIONS(49), [anon_sym_PIPE_EQ] = ACTIONS(49), [sym__virtual_end_decl] = ACTIONS(249), [sym_minus_without_trailing_whitespace] = ACTIONS(448), }, }; static const uint16_t ts_small_parse_table[] = { [0] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(20), 1, sym_block_comment, STATE(21), 1, aux_sym_field_access_expr_repeat1, STATE(37), 1, sym__field_access_segment, STATE(993), 1, sym__dot_without_leading_whitespace, ACTIONS(453), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(451), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [71] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(457), 1, anon_sym_DOT, STATE(37), 1, sym__field_access_segment, STATE(993), 1, sym__dot_without_leading_whitespace, ACTIONS(460), 2, sym_minus_without_trailing_whitespace, sym_backslash, STATE(21), 2, sym_block_comment, aux_sym_field_access_expr_repeat1, ACTIONS(455), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [142] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(22), 1, sym_block_comment, STATE(23), 1, aux_sym_upper_case_qid_repeat1, STATE(736), 1, sym__dot_without_leading_whitespace, ACTIONS(466), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(462), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [212] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(23), 1, sym_block_comment, STATE(24), 1, aux_sym_upper_case_qid_repeat1, STATE(1001), 1, sym__dot_without_leading_whitespace, ACTIONS(470), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(468), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [282] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(474), 1, anon_sym_DOT, STATE(1001), 1, sym__dot_without_leading_whitespace, ACTIONS(477), 2, sym_minus_without_trailing_whitespace, sym_backslash, STATE(24), 2, sym_block_comment, aux_sym_upper_case_qid_repeat1, ACTIONS(472), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [350] = 9, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(25), 1, sym_block_comment, STATE(27), 1, aux_sym_bin_op_expr_repeat1, STATE(140), 1, sym_operator, STATE(521), 1, sym_operator_identifier, ACTIONS(483), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(479), 21, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, ACTIONS(481), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [422] = 9, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(25), 1, aux_sym_bin_op_expr_repeat1, STATE(26), 1, sym_block_comment, STATE(140), 1, sym_operator, STATE(521), 1, sym_operator_identifier, ACTIONS(487), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(485), 21, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, ACTIONS(481), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [494] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(140), 1, sym_operator, STATE(521), 1, sym_operator_identifier, ACTIONS(494), 2, sym_minus_without_trailing_whitespace, sym_backslash, STATE(27), 2, sym_block_comment, aux_sym_bin_op_expr_repeat1, ACTIONS(489), 21, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, ACTIONS(491), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [564] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(496), 1, anon_sym_DOT, STATE(28), 1, sym_block_comment, STATE(832), 1, sym__dot_without_leading_whitespace, ACTIONS(477), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(472), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [631] = 35, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(499), 1, anon_sym_RBRACK, ACTIONS(501), 1, sym_case, STATE(29), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(780), 1, sym__expression, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [753] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(30), 1, sym_block_comment, ACTIONS(510), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(503), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 31, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [819] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(31), 1, sym_block_comment, ACTIONS(515), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(513), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [881] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(32), 1, sym_block_comment, ACTIONS(519), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(517), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [943] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(33), 1, sym_block_comment, ACTIONS(523), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(521), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [1005] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(34), 1, sym_block_comment, ACTIONS(527), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(525), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 31, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [1071] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(35), 1, sym_block_comment, ACTIONS(531), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(529), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [1133] = 35, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, ACTIONS(533), 1, anon_sym_RBRACK, STATE(36), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(714), 1, sym__expression, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [1255] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(37), 1, sym_block_comment, ACTIONS(537), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(535), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [1317] = 35, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, ACTIONS(539), 1, anon_sym_RBRACK, STATE(38), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(735), 1, sym__expression, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [1439] = 35, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, ACTIONS(541), 1, anon_sym_RBRACK, STATE(39), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(706), 1, sym__expression, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [1561] = 35, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, ACTIONS(543), 1, anon_sym_RBRACK, STATE(40), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(759), 1, sym__expression, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [1683] = 6, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(41), 1, sym_block_comment, ACTIONS(545), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(506), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [1747] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(42), 1, sym_block_comment, ACTIONS(549), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(547), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [1809] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(43), 1, sym_block_comment, ACTIONS(553), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(551), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [1871] = 35, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, ACTIONS(555), 1, anon_sym_RBRACK, STATE(44), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(792), 1, sym__expression, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [1993] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(45), 1, sym_block_comment, ACTIONS(559), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(557), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [2055] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(46), 1, sym_block_comment, ACTIONS(477), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(472), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [2117] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(47), 1, sym_block_comment, ACTIONS(563), 3, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(561), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [2179] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(48), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1016), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [2298] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(363), 1, sym_dot, ACTIONS(565), 1, anon_sym_LPAREN, ACTIONS(567), 1, anon_sym_LBRACE, ACTIONS(569), 1, anon_sym_SQUOTE, ACTIONS(571), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(573), 1, anon_sym_DQUOTE, ACTIONS(575), 1, anon_sym_LBRACK, ACTIONS(577), 1, anon_sym_let, ACTIONS(579), 1, sym_number_literal, ACTIONS(581), 1, sym_case, ACTIONS(583), 1, sym_backslash, ACTIONS(585), 1, sym_minus_without_trailing_whitespace, STATE(49), 1, sym_block_comment, STATE(166), 1, sym__function_call_target, STATE(250), 1, sym__operator_as_function_inner, STATE(362), 1, sym__call_or_atom, STATE(449), 1, sym_record_expr, STATE(477), 1, sym_bin_op_expr, STATE(484), 1, sym__expression, STATE(665), 1, sym__field_access_start, STATE(902), 1, sym__if, STATE(921), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(238), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(480), 2, sym_function_call_expr, sym__atom, STATE(222), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(479), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(482), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [2417] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(363), 1, sym_dot, ACTIONS(565), 1, anon_sym_LPAREN, ACTIONS(567), 1, anon_sym_LBRACE, ACTIONS(569), 1, anon_sym_SQUOTE, ACTIONS(571), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(573), 1, anon_sym_DQUOTE, ACTIONS(575), 1, anon_sym_LBRACK, ACTIONS(577), 1, anon_sym_let, ACTIONS(579), 1, sym_number_literal, ACTIONS(581), 1, sym_case, ACTIONS(583), 1, sym_backslash, ACTIONS(585), 1, sym_minus_without_trailing_whitespace, STATE(50), 1, sym_block_comment, STATE(166), 1, sym__function_call_target, STATE(250), 1, sym__operator_as_function_inner, STATE(362), 1, sym__call_or_atom, STATE(449), 1, sym_record_expr, STATE(467), 1, sym__expression, STATE(477), 1, sym_bin_op_expr, STATE(665), 1, sym__field_access_start, STATE(902), 1, sym__if, STATE(921), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(238), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(480), 2, sym_function_call_expr, sym__atom, STATE(222), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(479), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(482), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [2536] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(247), 1, sym_dot, ACTIONS(587), 1, anon_sym_LPAREN, ACTIONS(589), 1, anon_sym_LBRACE, ACTIONS(591), 1, anon_sym_SQUOTE, ACTIONS(593), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(595), 1, anon_sym_DQUOTE, ACTIONS(597), 1, anon_sym_LBRACK, ACTIONS(599), 1, anon_sym_let, ACTIONS(601), 1, sym_number_literal, ACTIONS(603), 1, sym_case, ACTIONS(605), 1, sym_backslash, ACTIONS(607), 1, sym_minus_without_trailing_whitespace, STATE(51), 1, sym_block_comment, STATE(173), 1, sym__function_call_target, STATE(178), 1, sym__operator_as_function_inner, STATE(343), 1, sym__call_or_atom, STATE(364), 1, sym_record_expr, STATE(411), 1, sym_bin_op_expr, STATE(670), 1, sym__field_access_start, STATE(811), 1, sym__expression, STATE(891), 1, sym__if, STATE(1002), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(192), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(396), 2, sym_function_call_expr, sym__atom, STATE(154), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(399), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(404), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [2655] = 6, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(52), 1, sym_block_comment, ACTIONS(527), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(525), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 31, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [2718] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(53), 1, sym_block_comment, ACTIONS(611), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(609), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [2779] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(54), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(300), 1, sym__expression, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [2898] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(363), 1, sym_dot, ACTIONS(565), 1, anon_sym_LPAREN, ACTIONS(567), 1, anon_sym_LBRACE, ACTIONS(569), 1, anon_sym_SQUOTE, ACTIONS(571), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(573), 1, anon_sym_DQUOTE, ACTIONS(575), 1, anon_sym_LBRACK, ACTIONS(577), 1, anon_sym_let, ACTIONS(579), 1, sym_number_literal, ACTIONS(581), 1, sym_case, ACTIONS(583), 1, sym_backslash, ACTIONS(585), 1, sym_minus_without_trailing_whitespace, STATE(55), 1, sym_block_comment, STATE(166), 1, sym__function_call_target, STATE(250), 1, sym__operator_as_function_inner, STATE(362), 1, sym__call_or_atom, STATE(449), 1, sym_record_expr, STATE(477), 1, sym_bin_op_expr, STATE(665), 1, sym__field_access_start, STATE(902), 1, sym__if, STATE(921), 1, sym__glsl_begin, STATE(1055), 1, sym__expression, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(238), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(480), 2, sym_function_call_expr, sym__atom, STATE(222), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(479), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(482), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [3017] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(56), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(316), 1, sym__expression, STATE(691), 1, sym__field_access_start, STATE(871), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [3136] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(57), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(320), 1, sym__expression, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [3255] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(58), 1, sym_block_comment, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(331), 1, sym__expression, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [3374] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(363), 1, sym_dot, ACTIONS(565), 1, anon_sym_LPAREN, ACTIONS(567), 1, anon_sym_LBRACE, ACTIONS(569), 1, anon_sym_SQUOTE, ACTIONS(571), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(573), 1, anon_sym_DQUOTE, ACTIONS(575), 1, anon_sym_LBRACK, ACTIONS(577), 1, anon_sym_let, ACTIONS(579), 1, sym_number_literal, ACTIONS(581), 1, sym_case, ACTIONS(583), 1, sym_backslash, ACTIONS(585), 1, sym_minus_without_trailing_whitespace, STATE(59), 1, sym_block_comment, STATE(166), 1, sym__function_call_target, STATE(250), 1, sym__operator_as_function_inner, STATE(362), 1, sym__call_or_atom, STATE(449), 1, sym_record_expr, STATE(477), 1, sym_bin_op_expr, STATE(665), 1, sym__field_access_start, STATE(902), 1, sym__if, STATE(921), 1, sym__glsl_begin, STATE(924), 1, sym__expression, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(238), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(480), 2, sym_function_call_expr, sym__atom, STATE(222), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(479), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(482), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [3493] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(60), 1, sym_block_comment, ACTIONS(615), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(613), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [3554] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(61), 1, sym_block_comment, ACTIONS(619), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(617), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [3615] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(62), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(999), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [3734] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(63), 1, sym_block_comment, ACTIONS(623), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(621), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [3795] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(64), 1, sym_block_comment, ACTIONS(627), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(625), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [3856] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(65), 1, sym_block_comment, ACTIONS(631), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(629), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [3917] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(66), 1, sym_block_comment, ACTIONS(635), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(633), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [3978] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(67), 1, sym_block_comment, ACTIONS(639), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(637), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4039] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(68), 1, sym_block_comment, ACTIONS(545), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(506), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4100] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(69), 1, sym_block_comment, ACTIONS(643), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(641), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4161] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(70), 1, sym_block_comment, ACTIONS(647), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(645), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4222] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(71), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(998), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [4341] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(72), 1, sym_block_comment, ACTIONS(651), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(649), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4402] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(73), 1, sym_block_comment, ACTIONS(655), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(653), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4463] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(74), 1, sym_block_comment, ACTIONS(659), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(657), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4524] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(75), 1, sym_block_comment, ACTIONS(663), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(661), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4585] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(76), 1, sym_block_comment, ACTIONS(667), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(665), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4646] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(77), 1, sym_block_comment, ACTIONS(671), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(669), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4707] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(78), 1, sym_block_comment, ACTIONS(675), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(673), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4768] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(79), 1, sym_block_comment, ACTIONS(679), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(677), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4829] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(80), 1, sym_block_comment, ACTIONS(683), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(681), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4890] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(81), 1, sym_block_comment, ACTIONS(687), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(685), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [4951] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(82), 1, sym_block_comment, ACTIONS(691), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(689), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5012] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(83), 1, sym_block_comment, ACTIONS(695), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(693), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5073] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(84), 1, sym_block_comment, ACTIONS(699), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(697), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5134] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(85), 1, sym_block_comment, ACTIONS(703), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(701), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5195] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(86), 1, sym_block_comment, ACTIONS(707), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(705), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5256] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(87), 1, sym_block_comment, ACTIONS(711), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(709), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5317] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(88), 1, sym_block_comment, ACTIONS(715), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(713), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5378] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(89), 1, sym_block_comment, ACTIONS(719), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(717), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5439] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(90), 1, sym_block_comment, ACTIONS(723), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(721), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5500] = 6, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(91), 1, sym_block_comment, ACTIONS(510), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(503), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 31, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5563] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(92), 1, sym_block_comment, ACTIONS(487), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(485), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5624] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(93), 1, sym_block_comment, ACTIONS(727), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(725), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5685] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(94), 1, sym_block_comment, STATE(96), 1, aux_sym_field_access_expr_repeat1, STATE(155), 1, sym__field_access_segment, STATE(1020), 1, sym__dot_without_leading_whitespace, ACTIONS(453), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(451), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5752] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(95), 1, sym_block_comment, ACTIONS(494), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(489), 45, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_else, anon_sym_if, anon_sym_then, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_of, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5813] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(457), 1, anon_sym_DOT, STATE(155), 1, sym__field_access_segment, STATE(1020), 1, sym__dot_without_leading_whitespace, STATE(96), 2, sym_block_comment, aux_sym_field_access_expr_repeat1, ACTIONS(460), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(455), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [5880] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(247), 1, sym_dot, ACTIONS(587), 1, anon_sym_LPAREN, ACTIONS(589), 1, anon_sym_LBRACE, ACTIONS(591), 1, anon_sym_SQUOTE, ACTIONS(593), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(595), 1, anon_sym_DQUOTE, ACTIONS(597), 1, anon_sym_LBRACK, ACTIONS(599), 1, anon_sym_let, ACTIONS(601), 1, sym_number_literal, ACTIONS(603), 1, sym_case, ACTIONS(605), 1, sym_backslash, ACTIONS(607), 1, sym_minus_without_trailing_whitespace, STATE(97), 1, sym_block_comment, STATE(173), 1, sym__function_call_target, STATE(178), 1, sym__operator_as_function_inner, STATE(343), 1, sym__call_or_atom, STATE(364), 1, sym_record_expr, STATE(411), 1, sym_bin_op_expr, STATE(670), 1, sym__field_access_start, STATE(831), 1, sym__expression, STATE(891), 1, sym__if, STATE(1002), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(192), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(396), 2, sym_function_call_expr, sym__atom, STATE(154), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(399), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(404), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [5999] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(247), 1, sym_dot, ACTIONS(587), 1, anon_sym_LPAREN, ACTIONS(589), 1, anon_sym_LBRACE, ACTIONS(591), 1, anon_sym_SQUOTE, ACTIONS(593), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(595), 1, anon_sym_DQUOTE, ACTIONS(597), 1, anon_sym_LBRACK, ACTIONS(599), 1, anon_sym_let, ACTIONS(601), 1, sym_number_literal, ACTIONS(603), 1, sym_case, ACTIONS(605), 1, sym_backslash, ACTIONS(607), 1, sym_minus_without_trailing_whitespace, STATE(98), 1, sym_block_comment, STATE(173), 1, sym__function_call_target, STATE(178), 1, sym__operator_as_function_inner, STATE(343), 1, sym__call_or_atom, STATE(364), 1, sym_record_expr, STATE(411), 1, sym_bin_op_expr, STATE(670), 1, sym__field_access_start, STATE(891), 1, sym__if, STATE(906), 1, sym__expression, STATE(1002), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(192), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(396), 2, sym_function_call_expr, sym__atom, STATE(154), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(399), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(404), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [6118] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(99), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(979), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [6237] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(100), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(870), 1, sym__expression, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [6356] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(341), 1, anon_sym_LPAREN, ACTIONS(343), 1, anon_sym_LBRACE, ACTIONS(345), 1, anon_sym_SQUOTE, ACTIONS(347), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(349), 1, anon_sym_DQUOTE, ACTIONS(351), 1, anon_sym_LBRACK, ACTIONS(353), 1, anon_sym_let, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(357), 1, sym_number_literal, ACTIONS(359), 1, sym_case, ACTIONS(361), 1, sym_backslash, ACTIONS(363), 1, sym_dot, ACTIONS(365), 1, sym_minus_without_trailing_whitespace, STATE(101), 1, sym_block_comment, STATE(161), 1, sym__call_or_atom, STATE(167), 1, sym__function_call_target, STATE(212), 1, sym_record_expr, STATE(239), 1, sym__expression, STATE(250), 1, sym__operator_as_function_inner, STATE(252), 1, sym_bin_op_expr, STATE(665), 1, sym__field_access_start, STATE(876), 1, sym__if, STATE(982), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(251), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(253), 2, sym_function_call_expr, sym__atom, STATE(221), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(245), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(232), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [6475] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(341), 1, anon_sym_LPAREN, ACTIONS(343), 1, anon_sym_LBRACE, ACTIONS(345), 1, anon_sym_SQUOTE, ACTIONS(347), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(349), 1, anon_sym_DQUOTE, ACTIONS(351), 1, anon_sym_LBRACK, ACTIONS(353), 1, anon_sym_let, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(357), 1, sym_number_literal, ACTIONS(359), 1, sym_case, ACTIONS(361), 1, sym_backslash, ACTIONS(363), 1, sym_dot, ACTIONS(365), 1, sym_minus_without_trailing_whitespace, STATE(102), 1, sym_block_comment, STATE(161), 1, sym__call_or_atom, STATE(167), 1, sym__function_call_target, STATE(212), 1, sym_record_expr, STATE(240), 1, sym__expression, STATE(250), 1, sym__operator_as_function_inner, STATE(252), 1, sym_bin_op_expr, STATE(665), 1, sym__field_access_start, STATE(881), 1, sym__if, STATE(982), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(251), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(253), 2, sym_function_call_expr, sym__atom, STATE(221), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(245), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(232), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [6594] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(341), 1, anon_sym_LPAREN, ACTIONS(343), 1, anon_sym_LBRACE, ACTIONS(345), 1, anon_sym_SQUOTE, ACTIONS(347), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(349), 1, anon_sym_DQUOTE, ACTIONS(351), 1, anon_sym_LBRACK, ACTIONS(353), 1, anon_sym_let, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(357), 1, sym_number_literal, ACTIONS(359), 1, sym_case, ACTIONS(361), 1, sym_backslash, ACTIONS(363), 1, sym_dot, ACTIONS(365), 1, sym_minus_without_trailing_whitespace, STATE(103), 1, sym_block_comment, STATE(161), 1, sym__call_or_atom, STATE(167), 1, sym__function_call_target, STATE(212), 1, sym_record_expr, STATE(242), 1, sym__expression, STATE(250), 1, sym__operator_as_function_inner, STATE(252), 1, sym_bin_op_expr, STATE(665), 1, sym__field_access_start, STATE(876), 1, sym__if, STATE(982), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(251), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(253), 2, sym_function_call_expr, sym__atom, STATE(221), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(245), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(232), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [6713] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(341), 1, anon_sym_LPAREN, ACTIONS(343), 1, anon_sym_LBRACE, ACTIONS(345), 1, anon_sym_SQUOTE, ACTIONS(347), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(349), 1, anon_sym_DQUOTE, ACTIONS(351), 1, anon_sym_LBRACK, ACTIONS(353), 1, anon_sym_let, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(357), 1, sym_number_literal, ACTIONS(359), 1, sym_case, ACTIONS(361), 1, sym_backslash, ACTIONS(363), 1, sym_dot, ACTIONS(365), 1, sym_minus_without_trailing_whitespace, STATE(104), 1, sym_block_comment, STATE(161), 1, sym__call_or_atom, STATE(167), 1, sym__function_call_target, STATE(212), 1, sym_record_expr, STATE(250), 1, sym__operator_as_function_inner, STATE(252), 1, sym_bin_op_expr, STATE(263), 1, sym__expression, STATE(665), 1, sym__field_access_start, STATE(876), 1, sym__if, STATE(982), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(251), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(253), 2, sym_function_call_expr, sym__atom, STATE(221), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(245), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(232), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [6832] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(47), 1, anon_sym_LPAREN, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_SQUOTE, ACTIONS(55), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(57), 1, anon_sym_DQUOTE, ACTIONS(59), 1, anon_sym_LBRACK, ACTIONS(61), 1, anon_sym_if, ACTIONS(63), 1, anon_sym_let, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(69), 1, sym_number_literal, ACTIONS(71), 1, sym_case, ACTIONS(73), 1, sym_backslash, ACTIONS(75), 1, sym_dot, ACTIONS(77), 1, sym_minus_without_trailing_whitespace, STATE(26), 1, sym__call_or_atom, STATE(41), 1, sym_record_expr, STATE(60), 1, sym__operator_as_function_inner, STATE(79), 1, sym__expression, STATE(92), 1, sym_bin_op_expr, STATE(105), 1, sym_block_comment, STATE(179), 1, sym__function_call_target, STATE(691), 1, sym__field_access_start, STATE(883), 1, sym__if, STATE(1058), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(91), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(93), 2, sym_function_call_expr, sym__atom, STATE(30), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(64), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(68), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [6951] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(47), 1, anon_sym_LPAREN, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_SQUOTE, ACTIONS(55), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(57), 1, anon_sym_DQUOTE, ACTIONS(59), 1, anon_sym_LBRACK, ACTIONS(61), 1, anon_sym_if, ACTIONS(63), 1, anon_sym_let, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(69), 1, sym_number_literal, ACTIONS(71), 1, sym_case, ACTIONS(73), 1, sym_backslash, ACTIONS(75), 1, sym_dot, ACTIONS(77), 1, sym_minus_without_trailing_whitespace, STATE(26), 1, sym__call_or_atom, STATE(41), 1, sym_record_expr, STATE(60), 1, sym__operator_as_function_inner, STATE(80), 1, sym__expression, STATE(92), 1, sym_bin_op_expr, STATE(106), 1, sym_block_comment, STATE(179), 1, sym__function_call_target, STATE(691), 1, sym__field_access_start, STATE(888), 1, sym__if, STATE(1058), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(91), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(93), 2, sym_function_call_expr, sym__atom, STATE(30), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(64), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(68), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [7070] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(47), 1, anon_sym_LPAREN, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_SQUOTE, ACTIONS(55), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(57), 1, anon_sym_DQUOTE, ACTIONS(59), 1, anon_sym_LBRACK, ACTIONS(61), 1, anon_sym_if, ACTIONS(63), 1, anon_sym_let, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(69), 1, sym_number_literal, ACTIONS(71), 1, sym_case, ACTIONS(73), 1, sym_backslash, ACTIONS(75), 1, sym_dot, ACTIONS(77), 1, sym_minus_without_trailing_whitespace, STATE(26), 1, sym__call_or_atom, STATE(41), 1, sym_record_expr, STATE(60), 1, sym__operator_as_function_inner, STATE(82), 1, sym__expression, STATE(92), 1, sym_bin_op_expr, STATE(107), 1, sym_block_comment, STATE(179), 1, sym__function_call_target, STATE(691), 1, sym__field_access_start, STATE(883), 1, sym__if, STATE(1058), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(91), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(93), 2, sym_function_call_expr, sym__atom, STATE(30), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(64), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(68), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [7189] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(47), 1, anon_sym_LPAREN, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_SQUOTE, ACTIONS(55), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(57), 1, anon_sym_DQUOTE, ACTIONS(59), 1, anon_sym_LBRACK, ACTIONS(61), 1, anon_sym_if, ACTIONS(63), 1, anon_sym_let, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(69), 1, sym_number_literal, ACTIONS(71), 1, sym_case, ACTIONS(73), 1, sym_backslash, ACTIONS(75), 1, sym_dot, ACTIONS(77), 1, sym_minus_without_trailing_whitespace, STATE(26), 1, sym__call_or_atom, STATE(41), 1, sym_record_expr, STATE(60), 1, sym__operator_as_function_inner, STATE(85), 1, sym__expression, STATE(92), 1, sym_bin_op_expr, STATE(108), 1, sym_block_comment, STATE(179), 1, sym__function_call_target, STATE(691), 1, sym__field_access_start, STATE(883), 1, sym__if, STATE(1058), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(91), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(93), 2, sym_function_call_expr, sym__atom, STATE(30), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(64), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(68), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [7308] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(247), 1, sym_dot, ACTIONS(587), 1, anon_sym_LPAREN, ACTIONS(589), 1, anon_sym_LBRACE, ACTIONS(591), 1, anon_sym_SQUOTE, ACTIONS(593), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(595), 1, anon_sym_DQUOTE, ACTIONS(597), 1, anon_sym_LBRACK, ACTIONS(599), 1, anon_sym_let, ACTIONS(601), 1, sym_number_literal, ACTIONS(603), 1, sym_case, ACTIONS(605), 1, sym_backslash, ACTIONS(607), 1, sym_minus_without_trailing_whitespace, STATE(109), 1, sym_block_comment, STATE(173), 1, sym__function_call_target, STATE(178), 1, sym__operator_as_function_inner, STATE(343), 1, sym__call_or_atom, STATE(364), 1, sym_record_expr, STATE(411), 1, sym_bin_op_expr, STATE(412), 1, sym__expression, STATE(670), 1, sym__field_access_start, STATE(891), 1, sym__if, STATE(1002), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(192), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(396), 2, sym_function_call_expr, sym__atom, STATE(154), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(399), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(404), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [7427] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(247), 1, sym_dot, ACTIONS(587), 1, anon_sym_LPAREN, ACTIONS(589), 1, anon_sym_LBRACE, ACTIONS(591), 1, anon_sym_SQUOTE, ACTIONS(593), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(595), 1, anon_sym_DQUOTE, ACTIONS(597), 1, anon_sym_LBRACK, ACTIONS(599), 1, anon_sym_let, ACTIONS(601), 1, sym_number_literal, ACTIONS(603), 1, sym_case, ACTIONS(605), 1, sym_backslash, ACTIONS(607), 1, sym_minus_without_trailing_whitespace, STATE(110), 1, sym_block_comment, STATE(173), 1, sym__function_call_target, STATE(178), 1, sym__operator_as_function_inner, STATE(343), 1, sym__call_or_atom, STATE(364), 1, sym_record_expr, STATE(411), 1, sym_bin_op_expr, STATE(413), 1, sym__expression, STATE(670), 1, sym__field_access_start, STATE(894), 1, sym__if, STATE(1002), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(192), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(396), 2, sym_function_call_expr, sym__atom, STATE(154), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(399), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(404), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [7546] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(247), 1, sym_dot, ACTIONS(587), 1, anon_sym_LPAREN, ACTIONS(589), 1, anon_sym_LBRACE, ACTIONS(591), 1, anon_sym_SQUOTE, ACTIONS(593), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(595), 1, anon_sym_DQUOTE, ACTIONS(597), 1, anon_sym_LBRACK, ACTIONS(599), 1, anon_sym_let, ACTIONS(601), 1, sym_number_literal, ACTIONS(603), 1, sym_case, ACTIONS(605), 1, sym_backslash, ACTIONS(607), 1, sym_minus_without_trailing_whitespace, STATE(111), 1, sym_block_comment, STATE(173), 1, sym__function_call_target, STATE(178), 1, sym__operator_as_function_inner, STATE(343), 1, sym__call_or_atom, STATE(364), 1, sym_record_expr, STATE(411), 1, sym_bin_op_expr, STATE(415), 1, sym__expression, STATE(670), 1, sym__field_access_start, STATE(891), 1, sym__if, STATE(1002), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(192), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(396), 2, sym_function_call_expr, sym__atom, STATE(154), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(399), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(404), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [7665] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(247), 1, sym_dot, ACTIONS(587), 1, anon_sym_LPAREN, ACTIONS(589), 1, anon_sym_LBRACE, ACTIONS(591), 1, anon_sym_SQUOTE, ACTIONS(593), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(595), 1, anon_sym_DQUOTE, ACTIONS(597), 1, anon_sym_LBRACK, ACTIONS(599), 1, anon_sym_let, ACTIONS(601), 1, sym_number_literal, ACTIONS(603), 1, sym_case, ACTIONS(605), 1, sym_backslash, ACTIONS(607), 1, sym_minus_without_trailing_whitespace, STATE(112), 1, sym_block_comment, STATE(173), 1, sym__function_call_target, STATE(178), 1, sym__operator_as_function_inner, STATE(343), 1, sym__call_or_atom, STATE(364), 1, sym_record_expr, STATE(411), 1, sym_bin_op_expr, STATE(418), 1, sym__expression, STATE(670), 1, sym__field_access_start, STATE(891), 1, sym__if, STATE(1002), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(192), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(396), 2, sym_function_call_expr, sym__atom, STATE(154), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(399), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(404), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [7784] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(113), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(905), 1, sym__expression, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [7903] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(114), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(900), 1, sym__expression, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [8022] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(225), 1, anon_sym_LPAREN, ACTIONS(227), 1, anon_sym_LBRACE, ACTIONS(229), 1, anon_sym_SQUOTE, ACTIONS(231), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(233), 1, anon_sym_DQUOTE, ACTIONS(235), 1, anon_sym_LBRACK, ACTIONS(237), 1, anon_sym_let, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(241), 1, sym_number_literal, ACTIONS(243), 1, sym_case, ACTIONS(245), 1, sym_backslash, ACTIONS(247), 1, sym_dot, ACTIONS(251), 1, sym_minus_without_trailing_whitespace, STATE(115), 1, sym_block_comment, STATE(131), 1, sym__call_or_atom, STATE(147), 1, sym_record_expr, STATE(174), 1, sym__expression, STATE(178), 1, sym__operator_as_function_inner, STATE(187), 1, sym__function_call_target, STATE(204), 1, sym_bin_op_expr, STATE(670), 1, sym__field_access_start, STATE(897), 1, sym__if, STATE(1010), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(170), 2, sym_function_call_expr, sym__atom, STATE(203), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(164), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(199), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(194), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [8141] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(225), 1, anon_sym_LPAREN, ACTIONS(227), 1, anon_sym_LBRACE, ACTIONS(229), 1, anon_sym_SQUOTE, ACTIONS(231), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(233), 1, anon_sym_DQUOTE, ACTIONS(235), 1, anon_sym_LBRACK, ACTIONS(237), 1, anon_sym_let, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(241), 1, sym_number_literal, ACTIONS(243), 1, sym_case, ACTIONS(245), 1, sym_backslash, ACTIONS(247), 1, sym_dot, ACTIONS(251), 1, sym_minus_without_trailing_whitespace, STATE(116), 1, sym_block_comment, STATE(131), 1, sym__call_or_atom, STATE(147), 1, sym_record_expr, STATE(175), 1, sym__expression, STATE(178), 1, sym__operator_as_function_inner, STATE(187), 1, sym__function_call_target, STATE(204), 1, sym_bin_op_expr, STATE(670), 1, sym__field_access_start, STATE(898), 1, sym__if, STATE(1010), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(170), 2, sym_function_call_expr, sym__atom, STATE(203), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(164), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(199), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(194), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [8260] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(225), 1, anon_sym_LPAREN, ACTIONS(227), 1, anon_sym_LBRACE, ACTIONS(229), 1, anon_sym_SQUOTE, ACTIONS(231), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(233), 1, anon_sym_DQUOTE, ACTIONS(235), 1, anon_sym_LBRACK, ACTIONS(237), 1, anon_sym_let, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(241), 1, sym_number_literal, ACTIONS(243), 1, sym_case, ACTIONS(245), 1, sym_backslash, ACTIONS(247), 1, sym_dot, ACTIONS(251), 1, sym_minus_without_trailing_whitespace, STATE(117), 1, sym_block_comment, STATE(131), 1, sym__call_or_atom, STATE(147), 1, sym_record_expr, STATE(177), 1, sym__expression, STATE(178), 1, sym__operator_as_function_inner, STATE(187), 1, sym__function_call_target, STATE(204), 1, sym_bin_op_expr, STATE(670), 1, sym__field_access_start, STATE(897), 1, sym__if, STATE(1010), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(170), 2, sym_function_call_expr, sym__atom, STATE(203), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(164), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(199), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(194), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [8379] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(225), 1, anon_sym_LPAREN, ACTIONS(227), 1, anon_sym_LBRACE, ACTIONS(229), 1, anon_sym_SQUOTE, ACTIONS(231), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(233), 1, anon_sym_DQUOTE, ACTIONS(235), 1, anon_sym_LBRACK, ACTIONS(237), 1, anon_sym_let, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(241), 1, sym_number_literal, ACTIONS(243), 1, sym_case, ACTIONS(245), 1, sym_backslash, ACTIONS(247), 1, sym_dot, ACTIONS(251), 1, sym_minus_without_trailing_whitespace, STATE(118), 1, sym_block_comment, STATE(131), 1, sym__call_or_atom, STATE(147), 1, sym_record_expr, STATE(178), 1, sym__operator_as_function_inner, STATE(182), 1, sym__expression, STATE(187), 1, sym__function_call_target, STATE(204), 1, sym_bin_op_expr, STATE(670), 1, sym__field_access_start, STATE(897), 1, sym__if, STATE(1010), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(170), 2, sym_function_call_expr, sym__atom, STATE(203), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(164), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(199), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(194), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [8498] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(363), 1, sym_dot, ACTIONS(565), 1, anon_sym_LPAREN, ACTIONS(567), 1, anon_sym_LBRACE, ACTIONS(569), 1, anon_sym_SQUOTE, ACTIONS(571), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(573), 1, anon_sym_DQUOTE, ACTIONS(575), 1, anon_sym_LBRACK, ACTIONS(577), 1, anon_sym_let, ACTIONS(579), 1, sym_number_literal, ACTIONS(581), 1, sym_case, ACTIONS(583), 1, sym_backslash, ACTIONS(585), 1, sym_minus_without_trailing_whitespace, STATE(119), 1, sym_block_comment, STATE(166), 1, sym__function_call_target, STATE(250), 1, sym__operator_as_function_inner, STATE(362), 1, sym__call_or_atom, STATE(449), 1, sym_record_expr, STATE(471), 1, sym__expression, STATE(477), 1, sym_bin_op_expr, STATE(665), 1, sym__field_access_start, STATE(885), 1, sym__if, STATE(921), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(238), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(480), 2, sym_function_call_expr, sym__atom, STATE(222), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(479), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(482), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [8617] = 34, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(363), 1, sym_dot, ACTIONS(565), 1, anon_sym_LPAREN, ACTIONS(567), 1, anon_sym_LBRACE, ACTIONS(569), 1, anon_sym_SQUOTE, ACTIONS(571), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(573), 1, anon_sym_DQUOTE, ACTIONS(575), 1, anon_sym_LBRACK, ACTIONS(577), 1, anon_sym_let, ACTIONS(579), 1, sym_number_literal, ACTIONS(581), 1, sym_case, ACTIONS(583), 1, sym_backslash, ACTIONS(585), 1, sym_minus_without_trailing_whitespace, STATE(120), 1, sym_block_comment, STATE(166), 1, sym__function_call_target, STATE(250), 1, sym__operator_as_function_inner, STATE(362), 1, sym__call_or_atom, STATE(449), 1, sym_record_expr, STATE(477), 1, sym_bin_op_expr, STATE(487), 1, sym__expression, STATE(665), 1, sym__field_access_start, STATE(902), 1, sym__if, STATE(921), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(238), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(480), 2, sym_function_call_expr, sym__atom, STATE(222), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(479), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(482), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [8736] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(121), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1034), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [8855] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(122), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1035), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [8974] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(123), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1037), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [9093] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(124), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1038), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [9212] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(125), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1040), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [9331] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(126), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1041), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [9450] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(127), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1043), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [9569] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(128), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1044), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [9688] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(129), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1045), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [9807] = 34, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(130), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(277), 1, sym__call_or_atom, STATE(286), 1, sym_record_expr, STATE(303), 1, sym_bin_op_expr, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(1046), 1, sym__expression, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [9926] = 9, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(131), 1, sym_block_comment, STATE(132), 1, aux_sym_bin_op_expr_repeat1, STATE(142), 1, sym_operator, STATE(521), 1, sym_operator_identifier, ACTIONS(487), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(485), 15, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(481), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [9994] = 9, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(132), 1, sym_block_comment, STATE(133), 1, aux_sym_bin_op_expr_repeat1, STATE(142), 1, sym_operator, STATE(521), 1, sym_operator_identifier, ACTIONS(483), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(479), 15, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(481), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [10062] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(142), 1, sym_operator, STATE(521), 1, sym_operator_identifier, STATE(133), 2, sym_block_comment, aux_sym_bin_op_expr_repeat1, ACTIONS(494), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(489), 15, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(491), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [10128] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(134), 1, sym_block_comment, STATE(135), 1, aux_sym_upper_case_qid_repeat1, STATE(956), 1, sym__dot_without_leading_whitespace, ACTIONS(470), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(468), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [10194] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(474), 1, anon_sym_DOT, STATE(956), 1, sym__dot_without_leading_whitespace, STATE(135), 2, sym_block_comment, aux_sym_upper_case_qid_repeat1, ACTIONS(477), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(472), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [10258] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(134), 1, aux_sym_upper_case_qid_repeat1, STATE(136), 1, sym_block_comment, STATE(781), 1, sym__dot_without_leading_whitespace, ACTIONS(466), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(462), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [10324] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(137), 1, sym_block_comment, STATE(145), 1, aux_sym_field_access_expr_repeat1, STATE(213), 1, sym__field_access_segment, STATE(958), 1, sym__dot_without_leading_whitespace, ACTIONS(453), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(451), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [10389] = 32, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(341), 1, anon_sym_LPAREN, ACTIONS(343), 1, anon_sym_LBRACE, ACTIONS(345), 1, anon_sym_SQUOTE, ACTIONS(347), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(349), 1, anon_sym_DQUOTE, ACTIONS(351), 1, anon_sym_LBRACK, ACTIONS(353), 1, anon_sym_let, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(357), 1, sym_number_literal, ACTIONS(359), 1, sym_case, ACTIONS(361), 1, sym_backslash, ACTIONS(363), 1, sym_dot, ACTIONS(365), 1, sym_minus_without_trailing_whitespace, STATE(138), 1, sym_block_comment, STATE(167), 1, sym__function_call_target, STATE(212), 1, sym_record_expr, STATE(250), 1, sym__operator_as_function_inner, STATE(259), 1, sym__call_or_atom, STATE(665), 1, sym__field_access_start, STATE(876), 1, sym__if, STATE(982), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(251), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(253), 2, sym_function_call_expr, sym__atom, STATE(221), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(245), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(232), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [10502] = 32, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(247), 1, sym_dot, ACTIONS(587), 1, anon_sym_LPAREN, ACTIONS(589), 1, anon_sym_LBRACE, ACTIONS(591), 1, anon_sym_SQUOTE, ACTIONS(593), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(595), 1, anon_sym_DQUOTE, ACTIONS(597), 1, anon_sym_LBRACK, ACTIONS(599), 1, anon_sym_let, ACTIONS(601), 1, sym_number_literal, ACTIONS(603), 1, sym_case, ACTIONS(605), 1, sym_backslash, ACTIONS(607), 1, sym_minus_without_trailing_whitespace, STATE(139), 1, sym_block_comment, STATE(173), 1, sym__function_call_target, STATE(178), 1, sym__operator_as_function_inner, STATE(364), 1, sym_record_expr, STATE(397), 1, sym__call_or_atom, STATE(670), 1, sym__field_access_start, STATE(891), 1, sym__if, STATE(1002), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(192), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(396), 2, sym_function_call_expr, sym__atom, STATE(154), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(399), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(404), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [10615] = 32, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(47), 1, anon_sym_LPAREN, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_SQUOTE, ACTIONS(55), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(57), 1, anon_sym_DQUOTE, ACTIONS(59), 1, anon_sym_LBRACK, ACTIONS(61), 1, anon_sym_if, ACTIONS(63), 1, anon_sym_let, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(69), 1, sym_number_literal, ACTIONS(71), 1, sym_case, ACTIONS(73), 1, sym_backslash, ACTIONS(75), 1, sym_dot, ACTIONS(77), 1, sym_minus_without_trailing_whitespace, STATE(41), 1, sym_record_expr, STATE(60), 1, sym__operator_as_function_inner, STATE(95), 1, sym__call_or_atom, STATE(140), 1, sym_block_comment, STATE(179), 1, sym__function_call_target, STATE(691), 1, sym__field_access_start, STATE(883), 1, sym__if, STATE(1058), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(91), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(93), 2, sym_function_call_expr, sym__atom, STATE(30), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(64), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(68), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [10728] = 32, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(363), 1, sym_dot, ACTIONS(565), 1, anon_sym_LPAREN, ACTIONS(567), 1, anon_sym_LBRACE, ACTIONS(569), 1, anon_sym_SQUOTE, ACTIONS(571), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(573), 1, anon_sym_DQUOTE, ACTIONS(575), 1, anon_sym_LBRACK, ACTIONS(577), 1, anon_sym_let, ACTIONS(579), 1, sym_number_literal, ACTIONS(581), 1, sym_case, ACTIONS(583), 1, sym_backslash, ACTIONS(585), 1, sym_minus_without_trailing_whitespace, STATE(141), 1, sym_block_comment, STATE(166), 1, sym__function_call_target, STATE(250), 1, sym__operator_as_function_inner, STATE(449), 1, sym_record_expr, STATE(458), 1, sym__call_or_atom, STATE(665), 1, sym__field_access_start, STATE(902), 1, sym__if, STATE(921), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(238), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(480), 2, sym_function_call_expr, sym__atom, STATE(222), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(479), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(482), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [10841] = 32, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(225), 1, anon_sym_LPAREN, ACTIONS(227), 1, anon_sym_LBRACE, ACTIONS(229), 1, anon_sym_SQUOTE, ACTIONS(231), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(233), 1, anon_sym_DQUOTE, ACTIONS(235), 1, anon_sym_LBRACK, ACTIONS(237), 1, anon_sym_let, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(241), 1, sym_number_literal, ACTIONS(243), 1, sym_case, ACTIONS(245), 1, sym_backslash, ACTIONS(247), 1, sym_dot, ACTIONS(251), 1, sym_minus_without_trailing_whitespace, STATE(142), 1, sym_block_comment, STATE(147), 1, sym_record_expr, STATE(178), 1, sym__operator_as_function_inner, STATE(187), 1, sym__function_call_target, STATE(197), 1, sym__call_or_atom, STATE(670), 1, sym__field_access_start, STATE(897), 1, sym__if, STATE(1010), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(170), 2, sym_function_call_expr, sym__atom, STATE(203), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(164), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(199), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(194), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [10954] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(496), 1, anon_sym_DOT, STATE(143), 1, sym_block_comment, STATE(832), 1, sym__dot_without_leading_whitespace, ACTIONS(477), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(472), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11017] = 32, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(75), 1, sym_dot, ACTIONS(177), 1, anon_sym_LPAREN, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, STATE(60), 1, sym__operator_as_function_inner, STATE(144), 1, sym_block_comment, STATE(206), 1, sym__function_call_target, STATE(286), 1, sym_record_expr, STATE(306), 1, sym__call_or_atom, STATE(691), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(52), 2, sym_field_accessor_function_expr, sym_operator_as_function_expr, STATE(323), 2, sym_function_call_expr, sym__atom, STATE(34), 3, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(315), 10, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [11130] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(457), 1, anon_sym_DOT, STATE(213), 1, sym__field_access_segment, STATE(958), 1, sym__dot_without_leading_whitespace, STATE(145), 2, sym_block_comment, aux_sym_field_access_expr_repeat1, ACTIONS(460), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(455), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11195] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(146), 1, sym_block_comment, ACTIONS(563), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(561), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11253] = 6, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(147), 1, sym_block_comment, ACTIONS(545), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(506), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11313] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(148), 1, sym_block_comment, ACTIONS(549), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(547), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11371] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(149), 1, sym_block_comment, ACTIONS(519), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(517), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11429] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(474), 1, anon_sym_DOT, STATE(963), 1, sym__dot_without_leading_whitespace, STATE(150), 2, sym_block_comment, aux_sym_upper_case_qid_repeat1, ACTIONS(477), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(472), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11491] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(151), 1, sym_block_comment, STATE(157), 1, aux_sym_upper_case_qid_repeat1, STATE(709), 1, sym__dot_without_leading_whitespace, ACTIONS(466), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(462), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11555] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(138), 1, sym_operator, STATE(521), 1, sym_operator_identifier, STATE(152), 2, sym_block_comment, aux_sym_bin_op_expr_repeat1, ACTIONS(494), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(489), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(491), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11619] = 9, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(138), 1, sym_operator, STATE(152), 1, aux_sym_bin_op_expr_repeat1, STATE(153), 1, sym_block_comment, STATE(521), 1, sym_operator_identifier, ACTIONS(483), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(479), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(481), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11685] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(154), 1, sym_block_comment, ACTIONS(527), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(545), 2, sym__virtual_end_decl, sym__virtual_end_section, ACTIONS(525), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 25, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11749] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(155), 1, sym_block_comment, ACTIONS(537), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(535), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11807] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(156), 1, sym_block_comment, ACTIONS(553), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(551), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11865] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(150), 1, aux_sym_upper_case_qid_repeat1, STATE(157), 1, sym_block_comment, STATE(963), 1, sym__dot_without_leading_whitespace, ACTIONS(470), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(468), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11929] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(158), 1, sym_block_comment, ACTIONS(559), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(557), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [11987] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(159), 1, sym_block_comment, ACTIONS(515), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(513), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12045] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(160), 1, sym_block_comment, ACTIONS(523), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(521), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12103] = 9, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(138), 1, sym_operator, STATE(153), 1, aux_sym_bin_op_expr_repeat1, STATE(161), 1, sym_block_comment, STATE(521), 1, sym_operator_identifier, ACTIONS(487), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(485), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(481), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12169] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(162), 1, sym_block_comment, ACTIONS(477), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(472), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12227] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(163), 1, sym_block_comment, ACTIONS(531), 5, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(529), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12285] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(164), 1, sym_block_comment, ACTIONS(510), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(545), 2, sym__virtual_end_decl, sym__virtual_end_section, ACTIONS(503), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 25, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12349] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(165), 1, sym_block_comment, ACTIONS(611), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(609), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12406] = 29, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(341), 1, anon_sym_LPAREN, ACTIONS(343), 1, anon_sym_LBRACE, ACTIONS(345), 1, anon_sym_SQUOTE, ACTIONS(347), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(349), 1, anon_sym_DQUOTE, ACTIONS(351), 1, anon_sym_LBRACK, ACTIONS(353), 1, anon_sym_let, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(357), 1, sym_number_literal, ACTIONS(359), 1, sym_case, ACTIONS(361), 1, sym_backslash, ACTIONS(363), 1, sym_dot, ACTIONS(365), 1, sym_minus_without_trailing_whitespace, STATE(17), 1, aux_sym_function_call_expr_repeat1, STATE(166), 1, sym_block_comment, STATE(250), 1, sym__operator_as_function_inner, STATE(261), 1, sym__atom, STATE(665), 1, sym__field_access_start, STATE(876), 1, sym__if, STATE(982), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(245), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(212), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(232), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [12511] = 29, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(341), 1, anon_sym_LPAREN, ACTIONS(343), 1, anon_sym_LBRACE, ACTIONS(345), 1, anon_sym_SQUOTE, ACTIONS(347), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(349), 1, anon_sym_DQUOTE, ACTIONS(351), 1, anon_sym_LBRACK, ACTIONS(353), 1, anon_sym_let, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(357), 1, sym_number_literal, ACTIONS(359), 1, sym_case, ACTIONS(361), 1, sym_backslash, ACTIONS(363), 1, sym_dot, ACTIONS(365), 1, sym_minus_without_trailing_whitespace, STATE(19), 1, aux_sym_function_call_expr_repeat1, STATE(167), 1, sym_block_comment, STATE(250), 1, sym__operator_as_function_inner, STATE(261), 1, sym__atom, STATE(665), 1, sym__field_access_start, STATE(876), 1, sym__if, STATE(982), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(245), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(212), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(232), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [12616] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(168), 1, sym_block_comment, ACTIONS(663), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(661), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12673] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(169), 1, sym_block_comment, ACTIONS(667), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(665), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12730] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(170), 1, sym_block_comment, ACTIONS(727), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(725), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12787] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(171), 1, sym_block_comment, ACTIONS(671), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(669), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12844] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(172), 1, sym_block_comment, ACTIONS(675), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(673), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [12901] = 29, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(225), 1, anon_sym_LPAREN, ACTIONS(227), 1, anon_sym_LBRACE, ACTIONS(229), 1, anon_sym_SQUOTE, ACTIONS(231), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(233), 1, anon_sym_DQUOTE, ACTIONS(235), 1, anon_sym_LBRACK, ACTIONS(237), 1, anon_sym_let, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(241), 1, sym_number_literal, ACTIONS(243), 1, sym_case, ACTIONS(245), 1, sym_backslash, ACTIONS(247), 1, sym_dot, ACTIONS(251), 1, sym_minus_without_trailing_whitespace, STATE(14), 1, aux_sym_function_call_expr_repeat1, STATE(165), 1, sym__atom, STATE(173), 1, sym_block_comment, STATE(178), 1, sym__operator_as_function_inner, STATE(670), 1, sym__field_access_start, STATE(897), 1, sym__if, STATE(1010), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(199), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(147), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(194), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [13006] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(174), 1, sym_block_comment, ACTIONS(679), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(677), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13063] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(175), 1, sym_block_comment, ACTIONS(683), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(681), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13120] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(176), 1, sym_block_comment, ACTIONS(687), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(685), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13177] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(177), 1, sym_block_comment, ACTIONS(691), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(689), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13234] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(178), 1, sym_block_comment, ACTIONS(615), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(613), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13291] = 29, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(47), 1, anon_sym_LPAREN, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_SQUOTE, ACTIONS(55), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(57), 1, anon_sym_DQUOTE, ACTIONS(59), 1, anon_sym_LBRACK, ACTIONS(61), 1, anon_sym_if, ACTIONS(63), 1, anon_sym_let, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(69), 1, sym_number_literal, ACTIONS(71), 1, sym_case, ACTIONS(73), 1, sym_backslash, ACTIONS(75), 1, sym_dot, ACTIONS(77), 1, sym_minus_without_trailing_whitespace, STATE(4), 1, aux_sym_function_call_expr_repeat1, STATE(53), 1, sym__atom, STATE(60), 1, sym__operator_as_function_inner, STATE(179), 1, sym_block_comment, STATE(691), 1, sym__field_access_start, STATE(883), 1, sym__if, STATE(1058), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(64), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(41), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(68), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [13396] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(180), 1, sym_block_comment, ACTIONS(695), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(693), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13453] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(181), 1, sym_block_comment, ACTIONS(699), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(697), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13510] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(182), 1, sym_block_comment, ACTIONS(703), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(701), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13567] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(183), 1, sym_block_comment, ACTIONS(619), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(617), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13624] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(184), 1, sym_block_comment, ACTIONS(707), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(705), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13681] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(185), 1, sym_block_comment, ACTIONS(659), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(657), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13738] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(186), 1, sym_block_comment, ACTIONS(711), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(709), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13795] = 29, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(225), 1, anon_sym_LPAREN, ACTIONS(227), 1, anon_sym_LBRACE, ACTIONS(229), 1, anon_sym_SQUOTE, ACTIONS(231), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(233), 1, anon_sym_DQUOTE, ACTIONS(235), 1, anon_sym_LBRACK, ACTIONS(237), 1, anon_sym_let, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(241), 1, sym_number_literal, ACTIONS(243), 1, sym_case, ACTIONS(245), 1, sym_backslash, ACTIONS(247), 1, sym_dot, ACTIONS(251), 1, sym_minus_without_trailing_whitespace, STATE(16), 1, aux_sym_function_call_expr_repeat1, STATE(165), 1, sym__atom, STATE(178), 1, sym__operator_as_function_inner, STATE(187), 1, sym_block_comment, STATE(670), 1, sym__field_access_start, STATE(897), 1, sym__if, STATE(1010), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(199), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(147), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(194), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [13900] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(188), 1, sym_block_comment, ACTIONS(715), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(713), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [13957] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(189), 1, sym_block_comment, ACTIONS(651), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(649), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14014] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(190), 1, sym_block_comment, ACTIONS(719), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(717), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14071] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(191), 1, sym_block_comment, ACTIONS(723), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(721), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14128] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(192), 1, sym_block_comment, ACTIONS(527), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(545), 2, sym__virtual_end_decl, sym__virtual_end_section, ACTIONS(525), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 25, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14189] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(496), 1, anon_sym_DOT, STATE(193), 1, sym_block_comment, STATE(832), 1, sym__dot_without_leading_whitespace, ACTIONS(477), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(472), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14250] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(194), 1, sym_block_comment, ACTIONS(545), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(506), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14307] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(195), 1, sym_block_comment, ACTIONS(647), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(645), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14364] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(196), 1, sym_block_comment, ACTIONS(655), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(653), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14421] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(197), 1, sym_block_comment, ACTIONS(494), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(489), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14478] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(198), 1, sym_block_comment, ACTIONS(623), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(621), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14535] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(199), 1, sym_block_comment, ACTIONS(627), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(625), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14592] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(200), 1, sym_block_comment, ACTIONS(631), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(629), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14649] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(201), 1, sym_block_comment, ACTIONS(635), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(633), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14706] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(202), 1, sym_block_comment, ACTIONS(639), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(637), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14763] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(203), 1, sym_block_comment, ACTIONS(510), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(545), 2, sym__virtual_end_decl, sym__virtual_end_section, ACTIONS(503), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 25, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14824] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(204), 1, sym_block_comment, ACTIONS(487), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(485), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14881] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(205), 1, sym_block_comment, ACTIONS(643), 4, sym__virtual_end_decl, sym__virtual_end_section, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(641), 39, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [14938] = 29, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(47), 1, anon_sym_LPAREN, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_SQUOTE, ACTIONS(55), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(57), 1, anon_sym_DQUOTE, ACTIONS(59), 1, anon_sym_LBRACK, ACTIONS(61), 1, anon_sym_if, ACTIONS(63), 1, anon_sym_let, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(69), 1, sym_number_literal, ACTIONS(71), 1, sym_case, ACTIONS(73), 1, sym_backslash, ACTIONS(75), 1, sym_dot, ACTIONS(77), 1, sym_minus_without_trailing_whitespace, STATE(2), 1, aux_sym_function_call_expr_repeat1, STATE(53), 1, sym__atom, STATE(60), 1, sym__operator_as_function_inner, STATE(206), 1, sym_block_comment, STATE(691), 1, sym__field_access_start, STATE(883), 1, sym__if, STATE(1058), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(64), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(41), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(68), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [15043] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(207), 1, sym_block_comment, ACTIONS(515), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(513), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [15099] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(208), 1, sym_block_comment, ACTIONS(523), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(521), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [15155] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(209), 1, sym_block_comment, ACTIONS(477), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(472), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [15211] = 31, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(9), 1, sym_lower_case_identifier, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(31), 1, sym_import, ACTIONS(33), 1, sym_type, ACTIONS(37), 1, sym_infix, ACTIONS(39), 1, sym_underscore, ACTIONS(729), 1, ts_builtin_sym_end, ACTIONS(731), 1, sym_port, STATE(210), 1, sym_block_comment, STATE(266), 1, aux_sym__top_decl_list, STATE(291), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(502), 1, aux_sym__import_list, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(920), 1, sym_import_clause, STATE(964), 1, sym__single_pattern_cons, STATE(965), 1, sym_function_declaration_left, STATE(1003), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(938), 6, sym_value_declaration, sym_type_declaration, sym_type_alias_declaration, sym_type_annotation, sym_port_annotation, sym_infix_declaration, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [15319] = 31, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(9), 1, sym_lower_case_identifier, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(31), 1, sym_import, ACTIONS(33), 1, sym_type, ACTIONS(37), 1, sym_infix, ACTIONS(39), 1, sym_underscore, ACTIONS(731), 1, sym_port, ACTIONS(733), 1, ts_builtin_sym_end, STATE(210), 1, aux_sym__import_list, STATE(211), 1, sym_block_comment, STATE(264), 1, aux_sym__top_decl_list, STATE(291), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(920), 1, sym_import_clause, STATE(964), 1, sym__single_pattern_cons, STATE(965), 1, sym_function_declaration_left, STATE(1003), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(938), 6, sym_value_declaration, sym_type_declaration, sym_type_alias_declaration, sym_type_annotation, sym_port_annotation, sym_infix_declaration, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [15427] = 6, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(212), 1, sym_block_comment, ACTIONS(545), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(506), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [15485] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(213), 1, sym_block_comment, ACTIONS(537), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(535), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [15541] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(214), 1, sym_block_comment, ACTIONS(549), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(547), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [15597] = 28, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(567), 1, anon_sym_LBRACE, ACTIONS(569), 1, anon_sym_SQUOTE, ACTIONS(571), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(573), 1, anon_sym_DQUOTE, ACTIONS(575), 1, anon_sym_LBRACK, ACTIONS(577), 1, anon_sym_let, ACTIONS(579), 1, sym_number_literal, ACTIONS(581), 1, sym_case, ACTIONS(583), 1, sym_backslash, ACTIONS(585), 1, sym_minus_without_trailing_whitespace, ACTIONS(735), 1, sym_lower_case_identifier, ACTIONS(737), 1, anon_sym_LPAREN, ACTIONS(739), 1, sym_upper_case_identifier, ACTIONS(741), 1, sym_dot, STATE(215), 1, sym_block_comment, STATE(455), 1, sym__operator_as_function_inner, STATE(465), 1, sym__atom, STATE(681), 1, sym__field_access_start, STATE(902), 1, sym__if, STATE(921), 1, sym__glsl_begin, STATE(431), 2, sym_upper_case_qid, sym_value_qid, STATE(479), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(449), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(482), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [15699] = 31, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(9), 1, sym_lower_case_identifier, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(31), 1, sym_import, ACTIONS(33), 1, sym_type, ACTIONS(37), 1, sym_infix, ACTIONS(39), 1, sym_underscore, ACTIONS(731), 1, sym_port, ACTIONS(743), 1, ts_builtin_sym_end, STATE(216), 1, sym_block_comment, STATE(267), 1, aux_sym__top_decl_list, STATE(291), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(502), 1, aux_sym__import_list, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(920), 1, sym_import_clause, STATE(964), 1, sym__single_pattern_cons, STATE(965), 1, sym_function_declaration_left, STATE(1003), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(938), 6, sym_value_declaration, sym_type_declaration, sym_type_alias_declaration, sym_type_annotation, sym_port_annotation, sym_infix_declaration, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [15807] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(217), 1, sym_block_comment, ACTIONS(559), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(557), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [15863] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(218), 1, sym_block_comment, ACTIONS(563), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(561), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [15919] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(219), 1, sym_block_comment, ACTIONS(519), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(517), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [15975] = 28, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(181), 1, anon_sym_LBRACE, ACTIONS(183), 1, anon_sym_SQUOTE, ACTIONS(185), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(187), 1, anon_sym_DQUOTE, ACTIONS(189), 1, anon_sym_LBRACK, ACTIONS(191), 1, anon_sym_let, ACTIONS(195), 1, sym_number_literal, ACTIONS(199), 1, sym_backslash, ACTIONS(201), 1, sym_minus_without_trailing_whitespace, ACTIONS(501), 1, sym_case, ACTIONS(745), 1, sym_lower_case_identifier, ACTIONS(747), 1, anon_sym_LPAREN, ACTIONS(749), 1, sym_upper_case_identifier, ACTIONS(751), 1, sym_dot, STATE(220), 1, sym_block_comment, STATE(305), 1, sym__operator_as_function_inner, STATE(319), 1, sym__atom, STATE(687), 1, sym__field_access_start, STATE(864), 1, sym__if, STATE(966), 1, sym__glsl_begin, STATE(289), 2, sym_upper_case_qid, sym_value_qid, STATE(314), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(286), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(315), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [16077] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, ACTIONS(545), 1, sym__virtual_end_decl, STATE(221), 1, sym_block_comment, ACTIONS(510), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(503), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [16139] = 8, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, ACTIONS(545), 1, sym__virtual_end_decl, STATE(222), 1, sym_block_comment, ACTIONS(527), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(525), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [16201] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(223), 1, sym_block_comment, ACTIONS(531), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(529), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [16257] = 28, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(339), 1, sym_lower_case_identifier, ACTIONS(341), 1, anon_sym_LPAREN, ACTIONS(343), 1, anon_sym_LBRACE, ACTIONS(345), 1, anon_sym_SQUOTE, ACTIONS(347), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(349), 1, anon_sym_DQUOTE, ACTIONS(351), 1, anon_sym_LBRACK, ACTIONS(353), 1, anon_sym_let, ACTIONS(355), 1, sym_upper_case_identifier, ACTIONS(357), 1, sym_number_literal, ACTIONS(359), 1, sym_case, ACTIONS(361), 1, sym_backslash, ACTIONS(363), 1, sym_dot, ACTIONS(365), 1, sym_minus_without_trailing_whitespace, STATE(224), 1, sym_block_comment, STATE(250), 1, sym__operator_as_function_inner, STATE(254), 1, sym__atom, STATE(665), 1, sym__field_access_start, STATE(876), 1, sym__if, STATE(982), 1, sym__glsl_begin, STATE(219), 2, sym_upper_case_qid, sym_value_qid, STATE(245), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(212), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(232), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [16359] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(225), 1, sym_block_comment, ACTIONS(553), 4, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, anon_sym_DOT, sym_backslash, ACTIONS(551), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [16415] = 28, ACTIONS(41), 1, sym_lower_case_identifier, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(47), 1, anon_sym_LPAREN, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_SQUOTE, ACTIONS(55), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(57), 1, anon_sym_DQUOTE, ACTIONS(59), 1, anon_sym_LBRACK, ACTIONS(61), 1, anon_sym_if, ACTIONS(63), 1, anon_sym_let, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(67), 1, sym_upper_case_identifier, ACTIONS(69), 1, sym_number_literal, ACTIONS(71), 1, sym_case, ACTIONS(73), 1, sym_backslash, ACTIONS(75), 1, sym_dot, ACTIONS(77), 1, sym_minus_without_trailing_whitespace, STATE(60), 1, sym__operator_as_function_inner, STATE(69), 1, sym__atom, STATE(226), 1, sym_block_comment, STATE(691), 1, sym__field_access_start, STATE(883), 1, sym__if, STATE(1058), 1, sym__glsl_begin, STATE(32), 2, sym_upper_case_qid, sym_value_qid, STATE(64), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(41), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(68), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [16517] = 28, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(589), 1, anon_sym_LBRACE, ACTIONS(591), 1, anon_sym_SQUOTE, ACTIONS(593), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(595), 1, anon_sym_DQUOTE, ACTIONS(597), 1, anon_sym_LBRACK, ACTIONS(599), 1, anon_sym_let, ACTIONS(601), 1, sym_number_literal, ACTIONS(603), 1, sym_case, ACTIONS(605), 1, sym_backslash, ACTIONS(607), 1, sym_minus_without_trailing_whitespace, ACTIONS(753), 1, sym_lower_case_identifier, ACTIONS(755), 1, anon_sym_LPAREN, ACTIONS(757), 1, sym_upper_case_identifier, ACTIONS(759), 1, sym_dot, STATE(227), 1, sym_block_comment, STATE(405), 1, sym__atom, STATE(423), 1, sym__operator_as_function_inner, STATE(663), 1, sym__field_access_start, STATE(891), 1, sym__if, STATE(1002), 1, sym__glsl_begin, STATE(368), 2, sym_upper_case_qid, sym_value_qid, STATE(399), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(364), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(404), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [16619] = 28, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(61), 1, anon_sym_if, ACTIONS(65), 1, anon_sym_LBRACKglsl_PIPE, ACTIONS(223), 1, sym_lower_case_identifier, ACTIONS(225), 1, anon_sym_LPAREN, ACTIONS(227), 1, anon_sym_LBRACE, ACTIONS(229), 1, anon_sym_SQUOTE, ACTIONS(231), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(233), 1, anon_sym_DQUOTE, ACTIONS(235), 1, anon_sym_LBRACK, ACTIONS(237), 1, anon_sym_let, ACTIONS(239), 1, sym_upper_case_identifier, ACTIONS(241), 1, sym_number_literal, ACTIONS(243), 1, sym_case, ACTIONS(245), 1, sym_backslash, ACTIONS(247), 1, sym_dot, ACTIONS(251), 1, sym_minus_without_trailing_whitespace, STATE(178), 1, sym__operator_as_function_inner, STATE(205), 1, sym__atom, STATE(228), 1, sym_block_comment, STATE(670), 1, sym__field_access_start, STATE(897), 1, sym__if, STATE(1010), 1, sym__glsl_begin, STATE(149), 2, sym_upper_case_qid, sym_value_qid, STATE(199), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(147), 4, sym_field_access_expr, sym_parenthesized_expr, sym_value_expr, sym_record_expr, STATE(194), 12, sym_field_accessor_function_expr, sym_operator_as_function_expr, sym_negate_expr, sym__literal_expr_group, sym_anonymous_function_expr, sym_tuple_expr, sym_unit_expr, sym_list_expr, sym_if_else_expr, sym_case_of_expr, sym_let_in_expr, sym_glsl_code_expr, [16721] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(229), 1, sym_block_comment, ACTIONS(695), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(693), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [16776] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(230), 1, sym_block_comment, ACTIONS(635), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(633), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [16831] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(231), 1, sym_block_comment, ACTIONS(655), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(653), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [16886] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(232), 1, sym_block_comment, ACTIONS(545), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(506), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [16941] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(233), 1, sym_block_comment, ACTIONS(659), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(657), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [16996] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(234), 1, sym_block_comment, ACTIONS(663), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(661), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17051] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(235), 1, sym_block_comment, ACTIONS(667), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(665), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17106] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(236), 1, sym_block_comment, ACTIONS(671), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(669), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17161] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(237), 1, sym_block_comment, ACTIONS(675), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(673), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17216] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(545), 1, sym__virtual_end_decl, STATE(238), 1, sym_block_comment, ACTIONS(527), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(525), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17275] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(239), 1, sym_block_comment, ACTIONS(679), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(677), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17330] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(240), 1, sym_block_comment, ACTIONS(683), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(681), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17385] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(241), 1, sym_block_comment, ACTIONS(687), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(685), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17440] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(242), 1, sym_block_comment, ACTIONS(691), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(689), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17495] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(243), 1, sym_block_comment, ACTIONS(723), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(721), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17550] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(244), 1, sym_block_comment, ACTIONS(699), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(697), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17605] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(245), 1, sym_block_comment, ACTIONS(627), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(625), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17660] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(246), 1, sym_block_comment, ACTIONS(707), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(705), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17715] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(247), 1, sym_block_comment, ACTIONS(711), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(709), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17770] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(248), 1, sym_block_comment, ACTIONS(715), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(713), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17825] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(249), 1, sym_block_comment, ACTIONS(719), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(717), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17880] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(250), 1, sym_block_comment, ACTIONS(615), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(613), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17935] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(545), 1, sym__virtual_end_decl, STATE(251), 1, sym_block_comment, ACTIONS(510), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(503), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, ACTIONS(506), 24, anon_sym_COLON_COLON, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [17994] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(252), 1, sym_block_comment, ACTIONS(487), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(485), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18049] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(253), 1, sym_block_comment, ACTIONS(727), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(725), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18104] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(254), 1, sym_block_comment, ACTIONS(643), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(641), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18159] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(255), 1, sym_block_comment, ACTIONS(619), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(617), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18214] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(256), 1, sym_block_comment, ACTIONS(639), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(637), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18269] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(257), 1, sym_block_comment, ACTIONS(647), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(645), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18324] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(258), 1, sym_block_comment, ACTIONS(651), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(649), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18379] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(259), 1, sym_block_comment, ACTIONS(494), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(489), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18434] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(260), 1, sym_block_comment, ACTIONS(631), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(629), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18489] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(261), 1, sym_block_comment, ACTIONS(611), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(609), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18544] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(262), 1, sym_block_comment, ACTIONS(623), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(621), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18599] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(263), 1, sym_block_comment, ACTIONS(703), 3, sym__virtual_end_decl, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(701), 38, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_COLON_COLON, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT, anon_sym_GT, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [18654] = 28, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(9), 1, sym_lower_case_identifier, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(33), 1, sym_type, ACTIONS(37), 1, sym_infix, ACTIONS(39), 1, sym_underscore, ACTIONS(729), 1, ts_builtin_sym_end, ACTIONS(731), 1, sym_port, STATE(264), 1, sym_block_comment, STATE(268), 1, aux_sym__top_decl_list, STATE(291), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(965), 1, sym_function_declaration_left, STATE(1003), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(938), 6, sym_value_declaration, sym_type_declaration, sym_type_alias_declaration, sym_type_annotation, sym_port_annotation, sym_infix_declaration, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [18753] = 28, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(9), 1, sym_lower_case_identifier, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(33), 1, sym_type, ACTIONS(37), 1, sym_infix, ACTIONS(39), 1, sym_underscore, ACTIONS(731), 1, sym_port, ACTIONS(743), 1, ts_builtin_sym_end, STATE(265), 1, sym_block_comment, STATE(268), 1, aux_sym__top_decl_list, STATE(291), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(965), 1, sym_function_declaration_left, STATE(1003), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(938), 6, sym_value_declaration, sym_type_declaration, sym_type_alias_declaration, sym_type_annotation, sym_port_annotation, sym_infix_declaration, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [18852] = 28, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(9), 1, sym_lower_case_identifier, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(33), 1, sym_type, ACTIONS(37), 1, sym_infix, ACTIONS(39), 1, sym_underscore, ACTIONS(731), 1, sym_port, ACTIONS(761), 1, ts_builtin_sym_end, STATE(266), 1, sym_block_comment, STATE(268), 1, aux_sym__top_decl_list, STATE(291), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(965), 1, sym_function_declaration_left, STATE(1003), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(938), 6, sym_value_declaration, sym_type_declaration, sym_type_alias_declaration, sym_type_annotation, sym_port_annotation, sym_infix_declaration, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [18951] = 28, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(9), 1, sym_lower_case_identifier, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(33), 1, sym_type, ACTIONS(37), 1, sym_infix, ACTIONS(39), 1, sym_underscore, ACTIONS(731), 1, sym_port, ACTIONS(763), 1, ts_builtin_sym_end, STATE(267), 1, sym_block_comment, STATE(268), 1, aux_sym__top_decl_list, STATE(291), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(965), 1, sym_function_declaration_left, STATE(1003), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(938), 6, sym_value_declaration, sym_type_declaration, sym_type_alias_declaration, sym_type_annotation, sym_port_annotation, sym_infix_declaration, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [19050] = 27, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(765), 1, ts_builtin_sym_end, ACTIONS(767), 1, sym_lower_case_identifier, ACTIONS(770), 1, anon_sym_LPAREN, ACTIONS(773), 1, anon_sym_LBRACE, ACTIONS(776), 1, anon_sym_SQUOTE, ACTIONS(779), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(782), 1, anon_sym_DQUOTE, ACTIONS(785), 1, anon_sym_LBRACK, ACTIONS(788), 1, sym_upper_case_identifier, ACTIONS(791), 1, sym_number_literal, ACTIONS(794), 1, sym_type, ACTIONS(797), 1, sym_port, ACTIONS(800), 1, sym_infix, ACTIONS(803), 1, sym_underscore, STATE(291), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(965), 1, sym_function_declaration_left, STATE(1003), 1, sym_pattern, STATE(268), 2, sym_block_comment, aux_sym__top_decl_list, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(938), 6, sym_value_declaration, sym_type_declaration, sym_type_alias_declaration, sym_type_annotation, sym_port_annotation, sym_infix_declaration, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [19147] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(474), 1, anon_sym_DOT, STATE(1000), 1, sym__dot_without_leading_whitespace, STATE(269), 2, sym_block_comment, aux_sym_upper_case_qid_repeat1, ACTIONS(472), 9, anon_sym_LBRACE, sym_lower_case_identifier, sym_as, sym_exposing, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(477), 23, sym__virtual_end_decl, anon_sym_LPAREN, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_arrow, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19200] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(270), 1, sym_block_comment, STATE(274), 1, aux_sym_field_access_expr_repeat1, STATE(293), 1, sym__field_access_segment, STATE(957), 1, sym__dot_without_leading_whitespace, ACTIONS(451), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(453), 27, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19255] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(271), 1, sym_block_comment, STATE(273), 1, aux_sym_upper_case_qid_repeat1, STATE(954), 1, sym__dot_without_leading_whitespace, ACTIONS(468), 6, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(470), 26, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19310] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(269), 1, aux_sym_upper_case_qid_repeat1, STATE(272), 1, sym_block_comment, STATE(1000), 1, sym__dot_without_leading_whitespace, ACTIONS(468), 9, anon_sym_LBRACE, sym_lower_case_identifier, sym_as, sym_exposing, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(470), 23, sym__virtual_end_decl, anon_sym_LPAREN, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_arrow, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19365] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(474), 1, anon_sym_DOT, STATE(954), 1, sym__dot_without_leading_whitespace, STATE(273), 2, sym_block_comment, aux_sym_upper_case_qid_repeat1, ACTIONS(472), 6, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(477), 26, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19418] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(457), 1, anon_sym_DOT, STATE(293), 1, sym__field_access_segment, STATE(957), 1, sym__dot_without_leading_whitespace, STATE(274), 2, sym_block_comment, aux_sym_field_access_expr_repeat1, ACTIONS(455), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(460), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19473] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(144), 1, sym_operator, STATE(521), 1, sym_operator_identifier, STATE(275), 2, sym_block_comment, aux_sym_bin_op_expr_repeat1, ACTIONS(491), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(494), 7, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, sym_of, ACTIONS(806), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19527] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(276), 1, sym_block_comment, STATE(279), 1, aux_sym_upper_case_qid_repeat1, STATE(760), 1, sym__dot_without_leading_whitespace, ACTIONS(462), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(466), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19581] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(144), 1, sym_operator, STATE(277), 1, sym_block_comment, STATE(280), 1, aux_sym_bin_op_expr_repeat1, STATE(521), 1, sym_operator_identifier, ACTIONS(481), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(487), 7, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, sym_of, ACTIONS(809), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19637] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(474), 1, anon_sym_DOT, STATE(925), 1, sym__dot_without_leading_whitespace, STATE(278), 2, sym_block_comment, aux_sym_upper_case_qid_repeat1, ACTIONS(472), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(477), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19689] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(278), 1, aux_sym_upper_case_qid_repeat1, STATE(279), 1, sym_block_comment, STATE(925), 1, sym__dot_without_leading_whitespace, ACTIONS(468), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(470), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19743] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(144), 1, sym_operator, STATE(275), 1, aux_sym_bin_op_expr_repeat1, STATE(280), 1, sym_block_comment, STATE(521), 1, sym_operator_identifier, ACTIONS(481), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(483), 7, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, sym_of, ACTIONS(809), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19799] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(281), 1, sym_block_comment, ACTIONS(557), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(559), 28, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_exposing, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19846] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(282), 1, sym_block_comment, ACTIONS(472), 6, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(477), 27, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19893] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(496), 1, anon_sym_DOT, STATE(283), 1, sym_block_comment, STATE(832), 1, sym__dot_without_leading_whitespace, ACTIONS(472), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(477), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19944] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(284), 1, sym_block_comment, ACTIONS(547), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(549), 28, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_exposing, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [19991] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(285), 1, sym_block_comment, ACTIONS(472), 9, anon_sym_LBRACE, sym_lower_case_identifier, sym_as, sym_exposing, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(477), 24, sym__virtual_end_decl, anon_sym_LPAREN, anon_sym_DOT, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_arrow, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20038] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(286), 1, sym_block_comment, ACTIONS(506), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(545), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20086] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(287), 1, sym_block_comment, ACTIONS(721), 6, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(723), 26, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20132] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(288), 1, sym_block_comment, ACTIONS(561), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(563), 27, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20178] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(289), 1, sym_block_comment, ACTIONS(517), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(519), 27, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20224] = 19, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(811), 1, sym_lower_case_identifier, ACTIONS(814), 1, anon_sym_LPAREN, ACTIONS(819), 1, anon_sym_LBRACE, ACTIONS(822), 1, anon_sym_SQUOTE, ACTIONS(825), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(828), 1, anon_sym_DQUOTE, ACTIONS(831), 1, anon_sym_LBRACK, ACTIONS(834), 1, sym_upper_case_identifier, ACTIONS(837), 1, sym_number_literal, ACTIONS(840), 1, sym_as, ACTIONS(842), 1, sym_underscore, STATE(501), 1, sym_upper_case_qid, STATE(514), 1, sym__union_argument_pattern, STATE(290), 2, sym_block_comment, aux_sym_union_pattern_repeat1, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, ACTIONS(817), 6, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_eq, sym_arrow, STATE(504), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_nullary_constructor_argument_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [20298] = 20, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(845), 1, sym_lower_case_identifier, ACTIONS(847), 1, anon_sym_LPAREN, ACTIONS(851), 1, sym_as, STATE(291), 1, sym_block_comment, STATE(294), 1, aux_sym_union_pattern_repeat1, STATE(501), 1, sym_upper_case_qid, STATE(514), 1, sym__union_argument_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, ACTIONS(849), 6, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_eq, sym_arrow, STATE(504), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_nullary_constructor_argument_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [20374] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(292), 1, sym_block_comment, ACTIONS(472), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(477), 27, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20420] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(293), 1, sym_block_comment, ACTIONS(535), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(537), 27, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20466] = 20, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(845), 1, sym_lower_case_identifier, ACTIONS(847), 1, anon_sym_LPAREN, ACTIONS(855), 1, sym_as, STATE(290), 1, aux_sym_union_pattern_repeat1, STATE(294), 1, sym_block_comment, STATE(501), 1, sym_upper_case_qid, STATE(514), 1, sym__union_argument_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, ACTIONS(853), 6, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_eq, sym_arrow, STATE(504), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_nullary_constructor_argument_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [20542] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(295), 1, sym_block_comment, ACTIONS(649), 6, sym_eq, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(651), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20588] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(296), 1, sym_block_comment, ACTIONS(551), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(553), 27, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20634] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(297), 1, sym_block_comment, ACTIONS(513), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(515), 27, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20680] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(298), 1, sym_block_comment, ACTIONS(521), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(523), 27, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20726] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(299), 1, sym_block_comment, ACTIONS(529), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(531), 27, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20772] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(300), 1, sym_block_comment, ACTIONS(677), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(679), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20817] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(301), 1, sym_block_comment, STATE(337), 1, aux_sym_field_access_expr_repeat1, STATE(369), 1, sym__field_access_segment, STATE(937), 1, sym__dot_without_leading_whitespace, ACTIONS(451), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(453), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20868] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(302), 1, sym_block_comment, ACTIONS(617), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(619), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20913] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(303), 1, sym_block_comment, ACTIONS(485), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(487), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [20958] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(304), 1, sym_block_comment, ACTIONS(657), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(659), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21003] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(305), 1, sym_block_comment, ACTIONS(613), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(615), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21048] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(306), 1, sym_block_comment, ACTIONS(489), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(494), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21093] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(307), 1, sym_block_comment, ACTIONS(661), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(663), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21138] = 25, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(857), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(308), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(697), 1, sym__inner_declaration, STATE(830), 1, sym_value_declaration, STATE(842), 1, sym_type_annotation, STATE(960), 1, sym_function_declaration_left, STATE(961), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [21223] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(309), 1, sym_block_comment, ACTIONS(665), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(667), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21268] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(310), 1, sym_block_comment, ACTIONS(645), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(647), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21313] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(311), 1, sym_block_comment, ACTIONS(653), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(655), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21358] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(312), 1, sym_block_comment, ACTIONS(621), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(623), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21403] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(313), 1, sym_block_comment, ACTIONS(669), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(671), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21448] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(314), 1, sym_block_comment, ACTIONS(625), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(627), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21493] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(315), 1, sym_block_comment, ACTIONS(506), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(545), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21538] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(316), 1, sym_block_comment, ACTIONS(681), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(683), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21583] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(317), 1, sym_block_comment, ACTIONS(685), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(687), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21628] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(318), 1, sym_block_comment, ACTIONS(629), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(631), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21673] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(319), 1, sym_block_comment, ACTIONS(641), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(643), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21718] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(320), 1, sym_block_comment, ACTIONS(689), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(691), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21763] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(321), 1, sym_block_comment, ACTIONS(633), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(635), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21808] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(322), 1, sym_block_comment, ACTIONS(637), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(639), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21853] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(323), 1, sym_block_comment, ACTIONS(725), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(727), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [21898] = 25, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(857), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(324), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(804), 1, sym__inner_declaration, STATE(830), 1, sym_value_declaration, STATE(842), 1, sym_type_annotation, STATE(960), 1, sym_function_declaration_left, STATE(961), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [21983] = 25, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(857), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(325), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(809), 1, sym__inner_declaration, STATE(830), 1, sym_value_declaration, STATE(842), 1, sym_type_annotation, STATE(960), 1, sym_function_declaration_left, STATE(961), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [22068] = 25, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(857), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(326), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(813), 1, sym__inner_declaration, STATE(830), 1, sym_value_declaration, STATE(842), 1, sym_type_annotation, STATE(960), 1, sym_function_declaration_left, STATE(961), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [22153] = 25, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(857), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(327), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(817), 1, sym__inner_declaration, STATE(830), 1, sym_value_declaration, STATE(842), 1, sym_type_annotation, STATE(960), 1, sym_function_declaration_left, STATE(961), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [22238] = 25, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(857), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(328), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(823), 1, sym__inner_declaration, STATE(830), 1, sym_value_declaration, STATE(842), 1, sym_type_annotation, STATE(960), 1, sym_function_declaration_left, STATE(961), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [22323] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(329), 1, sym_block_comment, ACTIONS(693), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(695), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22368] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(330), 1, sym_block_comment, ACTIONS(697), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(699), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22413] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(331), 1, sym_block_comment, ACTIONS(701), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(703), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22458] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(332), 1, sym_block_comment, ACTIONS(705), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(707), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22503] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(333), 1, sym_block_comment, ACTIONS(709), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(711), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22548] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(334), 1, sym_block_comment, ACTIONS(713), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(715), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22593] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(335), 1, sym_block_comment, ACTIONS(717), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(719), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22638] = 25, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(857), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(336), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(830), 1, sym_value_declaration, STATE(842), 1, sym_type_annotation, STATE(867), 1, sym__inner_declaration, STATE(960), 1, sym_function_declaration_left, STATE(961), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [22723] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(457), 1, anon_sym_DOT, STATE(369), 1, sym__field_access_segment, STATE(937), 1, sym__dot_without_leading_whitespace, STATE(337), 2, sym_block_comment, aux_sym_field_access_expr_repeat1, ACTIONS(455), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(460), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22774] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(338), 1, sym_block_comment, ACTIONS(721), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(723), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22819] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(339), 1, sym_block_comment, ACTIONS(673), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(675), 26, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_else, anon_sym_then, anon_sym_COLON_COLON, sym_of, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22864] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(139), 1, sym_operator, STATE(521), 1, sym_operator_identifier, STATE(340), 2, sym_block_comment, aux_sym_bin_op_expr_repeat1, ACTIONS(494), 3, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, ACTIONS(491), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(806), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22914] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(139), 1, sym_operator, STATE(340), 1, aux_sym_bin_op_expr_repeat1, STATE(341), 1, sym_block_comment, STATE(521), 1, sym_operator_identifier, ACTIONS(483), 3, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, ACTIONS(481), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(809), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [22966] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(271), 1, aux_sym_upper_case_qid_repeat1, STATE(342), 1, sym_block_comment, STATE(793), 1, sym__dot_without_leading_whitespace, ACTIONS(462), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(466), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [23016] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(139), 1, sym_operator, STATE(341), 1, aux_sym_bin_op_expr_repeat1, STATE(343), 1, sym_block_comment, STATE(521), 1, sym_operator_identifier, ACTIONS(487), 3, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, ACTIONS(481), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(809), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [23068] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(344), 1, sym_block_comment, ACTIONS(721), 6, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(723), 24, sym__virtual_end_decl, anon_sym_LPAREN, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [23112] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(496), 1, anon_sym_DOT, STATE(345), 1, sym_block_comment, STATE(832), 1, sym__dot_without_leading_whitespace, ACTIONS(472), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(477), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [23159] = 23, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(861), 1, sym_arrow, STATE(346), 1, sym_block_comment, STATE(351), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [23238] = 23, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(863), 1, sym_arrow, STATE(347), 1, sym_block_comment, STATE(351), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [23317] = 23, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(865), 1, sym_arrow, STATE(348), 1, sym_block_comment, STATE(351), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [23396] = 23, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(867), 1, sym_arrow, STATE(349), 1, sym_block_comment, STATE(351), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [23475] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(457), 1, anon_sym_DOT, STATE(430), 1, sym__field_access_segment, STATE(991), 1, sym__dot_without_leading_whitespace, STATE(350), 2, sym_block_comment, aux_sym_field_access_expr_repeat1, ACTIONS(455), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(460), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [23524] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(869), 1, sym_lower_case_identifier, ACTIONS(872), 1, anon_sym_LPAREN, ACTIONS(875), 1, anon_sym_LBRACE, ACTIONS(878), 1, anon_sym_SQUOTE, ACTIONS(881), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(884), 1, anon_sym_DQUOTE, ACTIONS(887), 1, anon_sym_LBRACK, ACTIONS(890), 1, sym_upper_case_identifier, ACTIONS(893), 1, sym_number_literal, ACTIONS(896), 1, sym_arrow, ACTIONS(898), 1, sym_underscore, STATE(356), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(351), 2, sym_block_comment, aux_sym_anonymous_function_expr_repeat1, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [23601] = 23, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(901), 1, sym_arrow, STATE(351), 1, aux_sym_anonymous_function_expr_repeat1, STATE(352), 1, sym_block_comment, STATE(356), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [23680] = 23, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(903), 1, sym_arrow, STATE(351), 1, aux_sym_anonymous_function_expr_repeat1, STATE(353), 1, sym_block_comment, STATE(356), 1, sym_upper_case_qid, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [23759] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(350), 1, aux_sym_field_access_expr_repeat1, STATE(354), 1, sym_block_comment, STATE(430), 1, sym__field_access_segment, STATE(991), 1, sym__dot_without_leading_whitespace, ACTIONS(451), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(453), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [23808] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(905), 1, anon_sym_RBRACK, STATE(291), 1, sym_upper_case_qid, STATE(355), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(696), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [23884] = 10, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(356), 1, sym_block_comment, STATE(357), 1, aux_sym_union_pattern_repeat1, STATE(501), 1, sym_upper_case_qid, STATE(514), 1, sym__union_argument_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, ACTIONS(851), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(849), 9, anon_sym_LPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_arrow, sym_underscore, STATE(504), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_nullary_constructor_argument_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [23936] = 10, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(290), 1, aux_sym_union_pattern_repeat1, STATE(357), 1, sym_block_comment, STATE(501), 1, sym_upper_case_qid, STATE(514), 1, sym__union_argument_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, ACTIONS(855), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(853), 9, anon_sym_LPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_arrow, sym_underscore, STATE(504), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_nullary_constructor_argument_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [23988] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(272), 1, aux_sym_upper_case_qid_repeat1, STATE(358), 1, sym_block_comment, STATE(715), 1, sym__dot_without_leading_whitespace, ACTIONS(462), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(466), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24036] = 21, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(845), 1, sym_lower_case_identifier, ACTIONS(847), 1, anon_sym_LPAREN, ACTIONS(907), 1, anon_sym_COLON_COLON, ACTIONS(909), 1, sym_as, ACTIONS(911), 1, sym_eq, ACTIONS(913), 1, sym_colon, STATE(359), 1, sym_block_comment, STATE(485), 1, aux_sym_function_declaration_left_repeat1, STATE(501), 1, sym_upper_case_qid, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(552), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_nullary_constructor_argument_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [24110] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(915), 1, anon_sym_RPAREN, STATE(291), 1, sym_upper_case_qid, STATE(360), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(892), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [24186] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(347), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(361), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [24262] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(487), 1, sym__virtual_end_decl, STATE(141), 1, sym_operator, STATE(362), 1, sym_block_comment, STATE(363), 1, aux_sym_bin_op_expr_repeat1, STATE(521), 1, sym_operator_identifier, ACTIONS(481), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(809), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24312] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(483), 1, sym__virtual_end_decl, STATE(141), 1, sym_operator, STATE(363), 1, sym_block_comment, STATE(374), 1, aux_sym_bin_op_expr_repeat1, STATE(521), 1, sym_operator_identifier, ACTIONS(481), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(809), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24362] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(364), 1, sym_block_comment, ACTIONS(506), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(545), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24406] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(365), 1, sym_block_comment, ACTIONS(547), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(549), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24448] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(366), 1, sym_block_comment, ACTIONS(557), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(559), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24490] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(367), 1, sym_block_comment, ACTIONS(561), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(563), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24532] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(368), 1, sym_block_comment, ACTIONS(517), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(519), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24574] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(369), 1, sym_block_comment, ACTIONS(535), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(537), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24616] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(370), 1, sym_block_comment, ACTIONS(551), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(553), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24658] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(371), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(806), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [24734] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(372), 1, sym_block_comment, ACTIONS(521), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(523), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24776] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(373), 1, sym_block_comment, ACTIONS(529), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(531), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24818] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(494), 1, sym__virtual_end_decl, STATE(141), 1, sym_operator, STATE(521), 1, sym_operator_identifier, STATE(374), 2, sym_block_comment, aux_sym_bin_op_expr_repeat1, ACTIONS(491), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(806), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [24866] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(915), 1, anon_sym_RPAREN, STATE(291), 1, sym_upper_case_qid, STATE(375), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(916), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [24942] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(376), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(689), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25018] = 21, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(845), 1, sym_lower_case_identifier, ACTIONS(847), 1, anon_sym_LPAREN, ACTIONS(907), 1, anon_sym_COLON_COLON, ACTIONS(909), 1, sym_as, ACTIONS(911), 1, sym_eq, ACTIONS(917), 1, sym_colon, STATE(377), 1, sym_block_comment, STATE(485), 1, aux_sym_function_declaration_left_repeat1, STATE(501), 1, sym_upper_case_qid, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(552), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_nullary_constructor_argument_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [25092] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(378), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(657), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25168] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(349), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(379), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25244] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(380), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(671), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25320] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(381), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(652), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25396] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(346), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(382), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25472] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(383), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(664), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25548] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(384), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(619), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25624] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(352), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(385), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25700] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(386), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(690), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25776] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(387), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(629), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25852] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(348), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(388), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [25928] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(389), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(672), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [26004] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(390), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(640), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [26080] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(391), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(694), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [26156] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(392), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(645), 1, sym_case_of_branch, STATE(964), 1, sym__single_pattern_cons, STATE(1024), 1, sym_pattern, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [26232] = 22, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(353), 1, aux_sym_anonymous_function_expr_repeat1, STATE(356), 1, sym_upper_case_qid, STATE(393), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(553), 1, sym_pattern, STATE(962), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [26308] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(394), 1, sym_block_comment, ACTIONS(513), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(515), 23, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26350] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(395), 1, sym_block_comment, ACTIONS(669), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(671), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26391] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(396), 1, sym_block_comment, ACTIONS(725), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(727), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26432] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(397), 1, sym_block_comment, ACTIONS(489), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(494), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26473] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(398), 1, sym_block_comment, ACTIONS(621), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(623), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26514] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(399), 1, sym_block_comment, ACTIONS(625), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(627), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26555] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(400), 1, sym_block_comment, ACTIONS(629), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(631), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26596] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(401), 1, sym_block_comment, ACTIONS(633), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(635), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26637] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(402), 1, sym_block_comment, ACTIONS(637), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(639), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26678] = 21, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(403), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(843), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [26751] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(404), 1, sym_block_comment, ACTIONS(506), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(545), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26792] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(405), 1, sym_block_comment, ACTIONS(641), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(643), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26833] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(406), 1, sym_block_comment, ACTIONS(645), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(647), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26874] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(407), 1, sym_block_comment, ACTIONS(653), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(655), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26915] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(408), 1, sym_block_comment, ACTIONS(657), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(659), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26956] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(409), 1, sym_block_comment, ACTIONS(661), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(663), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [26997] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(410), 1, sym_block_comment, ACTIONS(665), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(667), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27038] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(411), 1, sym_block_comment, ACTIONS(485), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(487), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27079] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(412), 1, sym_block_comment, ACTIONS(677), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(679), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27120] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(413), 1, sym_block_comment, ACTIONS(681), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(683), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27161] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(414), 1, sym_block_comment, ACTIONS(685), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(687), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27202] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(415), 1, sym_block_comment, ACTIONS(689), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(691), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27243] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(416), 1, sym_block_comment, ACTIONS(693), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(695), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27284] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(417), 1, sym_block_comment, ACTIONS(697), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(699), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27325] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(418), 1, sym_block_comment, ACTIONS(701), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(703), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27366] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(419), 1, sym_block_comment, ACTIONS(705), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(707), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27407] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(420), 1, sym_block_comment, ACTIONS(709), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(711), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27448] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(421), 1, sym_block_comment, ACTIONS(713), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(715), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27489] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(422), 1, sym_block_comment, ACTIONS(717), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(719), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27530] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(423), 1, sym_block_comment, ACTIONS(613), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(615), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27571] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(424), 1, sym_block_comment, ACTIONS(617), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(619), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27612] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(425), 1, sym_block_comment, ACTIONS(649), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(651), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27653] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(496), 1, anon_sym_DOT, STATE(426), 1, sym_block_comment, STATE(832), 1, sym__dot_without_leading_whitespace, ACTIONS(472), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(477), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27698] = 21, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(427), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(771), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [27771] = 21, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(11), 1, anon_sym_LPAREN, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(428), 1, sym_block_comment, STATE(496), 1, sym__parenthesized_pattern, STATE(516), 1, sym_cons_pattern, STATE(520), 1, sym__single_pattern, STATE(893), 1, sym_pattern, STATE(964), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(511), 8, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, [27844] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(429), 1, sym_block_comment, ACTIONS(673), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(675), 22, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27885] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(430), 1, sym_block_comment, ACTIONS(535), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(537), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27925] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(431), 1, sym_block_comment, ACTIONS(517), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(519), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [27965] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(919), 1, anon_sym_RPAREN, STATE(432), 1, sym_block_comment, ACTIONS(705), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(707), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28007] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(433), 1, sym_block_comment, ACTIONS(557), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(559), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28047] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(922), 1, anon_sym_RPAREN, STATE(434), 1, sym_block_comment, ACTIONS(693), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(695), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28089] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(925), 1, anon_sym_RPAREN, STATE(435), 1, sym_block_comment, ACTIONS(693), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(695), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28131] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(928), 1, anon_sym_RPAREN, STATE(436), 1, sym_block_comment, ACTIONS(705), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(707), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28173] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(931), 1, anon_sym_RPAREN, STATE(437), 1, sym_block_comment, ACTIONS(693), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(695), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28215] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(934), 1, anon_sym_RPAREN, STATE(438), 1, sym_block_comment, ACTIONS(705), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(707), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28257] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(937), 1, anon_sym_RPAREN, STATE(439), 1, sym_block_comment, ACTIONS(693), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(695), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28299] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(940), 1, anon_sym_RPAREN, STATE(440), 1, sym_block_comment, ACTIONS(705), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(707), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28341] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(943), 1, anon_sym_RPAREN, STATE(441), 1, sym_block_comment, ACTIONS(693), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(695), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28383] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(946), 1, anon_sym_RPAREN, STATE(442), 1, sym_block_comment, ACTIONS(705), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(707), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28425] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(949), 1, anon_sym_RPAREN, STATE(443), 1, sym_block_comment, ACTIONS(693), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(695), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28467] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(952), 1, anon_sym_RPAREN, STATE(444), 1, sym_block_comment, ACTIONS(705), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(707), 20, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28509] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(445), 1, sym_block_comment, ACTIONS(529), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(531), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28549] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(446), 1, sym_block_comment, ACTIONS(551), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(553), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28589] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(447), 1, sym_block_comment, ACTIONS(547), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(549), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28629] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(448), 1, sym_block_comment, ACTIONS(513), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(515), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28669] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(508), 1, anon_sym_DOT, STATE(449), 1, sym_block_comment, ACTIONS(506), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(545), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28711] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(450), 1, sym_block_comment, ACTIONS(521), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(523), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28751] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(451), 1, sym_block_comment, ACTIONS(561), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(563), 21, sym__virtual_end_decl, anon_sym_DOT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28791] = 18, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(847), 1, anon_sym_LPAREN, ACTIONS(859), 1, sym_lower_case_identifier, STATE(291), 1, sym_upper_case_qid, STATE(452), 1, sym_block_comment, STATE(519), 1, sym_cons_pattern, STATE(573), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(496), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [28856] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(453), 1, sym_block_comment, ACTIONS(649), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(651), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28895] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(454), 1, sym_block_comment, ACTIONS(633), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(635), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28934] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(455), 1, sym_block_comment, ACTIONS(613), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(615), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [28973] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(456), 1, sym_block_comment, ACTIONS(653), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(655), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29012] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(457), 1, sym_block_comment, ACTIONS(637), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(639), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29051] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(458), 1, sym_block_comment, ACTIONS(489), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(494), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29090] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(459), 1, sym_block_comment, ACTIONS(657), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(659), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29129] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(460), 1, sym_block_comment, ACTIONS(661), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(663), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29168] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(461), 1, sym_block_comment, ACTIONS(665), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(667), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29207] = 18, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(847), 1, anon_sym_LPAREN, ACTIONS(859), 1, sym_lower_case_identifier, STATE(356), 1, sym_upper_case_qid, STATE(462), 1, sym_block_comment, STATE(519), 1, sym_cons_pattern, STATE(548), 1, sym__single_pattern_cons, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(496), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_union_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [29272] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(463), 1, sym_block_comment, STATE(975), 1, sym_operator_identifier, ACTIONS(193), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(955), 19, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29313] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(464), 1, sym_block_comment, ACTIONS(669), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(671), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29352] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(465), 1, sym_block_comment, ACTIONS(641), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(643), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29391] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(466), 1, sym_block_comment, ACTIONS(673), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(675), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29430] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(467), 1, sym_block_comment, ACTIONS(701), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(703), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29469] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(468), 1, sym_block_comment, ACTIONS(621), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(623), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29508] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(469), 1, sym_block_comment, ACTIONS(617), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(619), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29547] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(470), 1, sym_block_comment, ACTIONS(713), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(715), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29586] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(471), 1, sym_block_comment, ACTIONS(681), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(683), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29625] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(472), 1, sym_block_comment, ACTIONS(685), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(687), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29664] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(473), 1, sym_block_comment, ACTIONS(645), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(647), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29703] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(474), 1, sym_block_comment, ACTIONS(629), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(631), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29742] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(475), 1, sym_block_comment, ACTIONS(709), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(711), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29781] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(476), 1, sym_block_comment, ACTIONS(717), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(719), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29820] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(477), 1, sym_block_comment, ACTIONS(485), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(487), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29859] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(478), 1, sym_block_comment, ACTIONS(705), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(707), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29898] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(479), 1, sym_block_comment, ACTIONS(625), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(627), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29937] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(480), 1, sym_block_comment, ACTIONS(725), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(727), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [29976] = 17, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(957), 1, sym_lower_case_identifier, ACTIONS(960), 1, anon_sym_LPAREN, ACTIONS(963), 1, anon_sym_LBRACE, ACTIONS(966), 1, anon_sym_SQUOTE, ACTIONS(969), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(972), 1, anon_sym_DQUOTE, ACTIONS(975), 1, anon_sym_LBRACK, ACTIONS(978), 1, sym_upper_case_identifier, ACTIONS(981), 1, sym_number_literal, ACTIONS(984), 1, sym_eq, ACTIONS(986), 1, sym_underscore, STATE(501), 1, sym_upper_case_qid, STATE(481), 2, sym_block_comment, aux_sym_function_declaration_left_repeat1, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(552), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_nullary_constructor_argument_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [30039] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(482), 1, sym_block_comment, ACTIONS(506), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(545), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [30078] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(483), 1, sym_block_comment, ACTIONS(697), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(699), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [30117] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(484), 1, sym_block_comment, ACTIONS(689), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(691), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [30156] = 18, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(13), 1, anon_sym_LBRACE, ACTIONS(15), 1, anon_sym_SQUOTE, ACTIONS(17), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(19), 1, anon_sym_DQUOTE, ACTIONS(21), 1, anon_sym_LBRACK, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(25), 1, sym_number_literal, ACTIONS(39), 1, sym_underscore, ACTIONS(847), 1, anon_sym_LPAREN, ACTIONS(859), 1, sym_lower_case_identifier, ACTIONS(989), 1, sym_eq, STATE(481), 1, aux_sym_function_declaration_left_repeat1, STATE(485), 1, sym_block_comment, STATE(501), 1, sym_upper_case_qid, STATE(497), 3, sym_char_constant_expr, sym_number_constant_expr, sym_string_constant_expr, STATE(552), 9, sym__literal_expr_group, sym_unit_expr, sym_lower_pattern, sym_anything_pattern, sym_record_pattern, sym_list_pattern, sym_nullary_constructor_argument_pattern, sym_tuple_pattern, sym__parenthesized_pattern, [30221] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(486), 1, sym_block_comment, ACTIONS(693), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(695), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [30260] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(487), 1, sym_block_comment, ACTIONS(677), 5, anon_sym_PLUS, anon_sym_DASH, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, ACTIONS(679), 20, sym__virtual_end_decl, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_SLASH_SLASH, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_SLASH_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_PLUS, anon_sym_LT_PIPE, anon_sym_PIPE_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LT_SLASH_GT, anon_sym_LT_QMARK_GT, anon_sym_PIPE_DOT, anon_sym_PIPE_EQ, [30299] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(488), 1, sym_block_comment, STATE(489), 1, aux_sym_upper_case_qid_repeat1, STATE(969), 1, sym__dot_without_leading_whitespace, ACTIONS(468), 6, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_where, sym_as, sym_exposing, ACTIONS(470), 14, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30342] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(474), 1, anon_sym_DOT, STATE(969), 1, sym__dot_without_leading_whitespace, STATE(489), 2, sym_block_comment, aux_sym_upper_case_qid_repeat1, ACTIONS(472), 6, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_where, sym_as, sym_exposing, ACTIONS(477), 14, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30383] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(488), 1, aux_sym_upper_case_qid_repeat1, STATE(490), 1, sym_block_comment, STATE(969), 1, sym__dot_without_leading_whitespace, ACTIONS(462), 6, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_where, sym_as, sym_exposing, ACTIONS(466), 14, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30426] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(491), 1, sym_block_comment, ACTIONS(472), 6, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_where, sym_as, sym_exposing, ACTIONS(477), 15, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DOT, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30461] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(492), 1, sym_block_comment, ACTIONS(721), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(723), 14, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30493] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(493), 1, sym_block_comment, ACTIONS(909), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(907), 14, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30525] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(995), 1, anon_sym_COLON_COLON, STATE(494), 1, sym_block_comment, ACTIONS(991), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(993), 12, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30558] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(495), 1, sym_block_comment, ACTIONS(621), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(623), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30589] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(496), 1, sym_block_comment, ACTIONS(997), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(999), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30620] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(497), 1, sym_block_comment, ACTIONS(625), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(627), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30651] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(498), 1, sym_block_comment, ACTIONS(1001), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(995), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30682] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(499), 1, sym_block_comment, ACTIONS(629), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(631), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30713] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(500), 1, sym_block_comment, ACTIONS(1003), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1005), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30744] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(501), 1, sym_block_comment, ACTIONS(1007), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1009), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30775] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1015), 1, sym_import, STATE(920), 1, sym_import_clause, STATE(502), 2, sym_block_comment, aux_sym__import_list, ACTIONS(1013), 6, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_type, sym_port, sym_infix, ACTIONS(1011), 8, ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, sym_upper_case_identifier, sym_number_literal, sym_underscore, [30810] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(503), 1, sym_block_comment, ACTIONS(1018), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1020), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30841] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(504), 1, sym_block_comment, ACTIONS(1022), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1024), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30872] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(505), 1, sym_block_comment, ACTIONS(633), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(635), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30903] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(506), 1, sym_block_comment, ACTIONS(637), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(639), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30934] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(507), 1, sym_block_comment, ACTIONS(1026), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1028), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30965] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(508), 1, sym_block_comment, ACTIONS(1030), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1032), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [30996] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(509), 1, sym_block_comment, ACTIONS(1034), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1036), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31027] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(510), 1, sym_block_comment, ACTIONS(1038), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1040), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31058] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(999), 1, anon_sym_COLON_COLON, STATE(511), 1, sym_block_comment, ACTIONS(1042), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1044), 12, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31091] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(512), 1, sym_block_comment, ACTIONS(1046), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1048), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31122] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(513), 1, sym_block_comment, ACTIONS(1050), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1052), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31153] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(514), 1, sym_block_comment, ACTIONS(1054), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1056), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON_COLON, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31184] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(1058), 1, sym_lower_case_identifier, ACTIONS(1060), 1, anon_sym_LPAREN, ACTIONS(1064), 1, anon_sym_LBRACE, STATE(515), 1, sym_block_comment, STATE(522), 1, aux_sym_type_ref_repeat1, STATE(562), 1, sym_unit_expr, STATE(569), 1, sym_upper_case_qid, STATE(570), 1, sym__single_type_expression, ACTIONS(1062), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_arrow, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31230] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1070), 1, sym_as, STATE(516), 1, sym_block_comment, ACTIONS(1066), 3, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, ACTIONS(1068), 12, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31262] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(517), 1, sym_block_comment, ACTIONS(1074), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(1072), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, [31292] = 12, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1076), 1, sym_lower_case_identifier, ACTIONS(1079), 1, anon_sym_LPAREN, ACTIONS(1084), 1, anon_sym_LBRACE, ACTIONS(1087), 1, sym_upper_case_identifier, STATE(562), 1, sym_unit_expr, STATE(569), 1, sym_upper_case_qid, STATE(570), 1, sym__single_type_expression, STATE(518), 2, sym_block_comment, aux_sym_type_ref_repeat1, ACTIONS(1082), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_arrow, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31336] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(519), 1, sym_block_comment, ACTIONS(1090), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1092), 12, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31366] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1098), 1, sym_as, STATE(520), 1, sym_block_comment, ACTIONS(1094), 3, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, ACTIONS(1096), 12, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, sym_upper_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31398] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(521), 1, sym_block_comment, ACTIONS(1102), 2, sym_minus_without_trailing_whitespace, sym_backslash, ACTIONS(1100), 14, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_DQUOTE, anon_sym_LBRACK, anon_sym_if, anon_sym_let, anon_sym_LBRACKglsl_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_case, sym_dot, [31428] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(1058), 1, sym_lower_case_identifier, ACTIONS(1060), 1, anon_sym_LPAREN, ACTIONS(1064), 1, anon_sym_LBRACE, STATE(518), 1, aux_sym_type_ref_repeat1, STATE(522), 1, sym_block_comment, STATE(562), 1, sym_unit_expr, STATE(569), 1, sym_upper_case_qid, STATE(570), 1, sym__single_type_expression, ACTIONS(1104), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_arrow, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31474] = 15, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(1058), 1, sym_lower_case_identifier, ACTIONS(1060), 1, anon_sym_LPAREN, ACTIONS(1064), 1, anon_sym_LBRACE, ACTIONS(1106), 1, anon_sym_RPAREN, STATE(515), 1, sym_upper_case_qid, STATE(523), 1, sym_block_comment, STATE(562), 1, sym_unit_expr, STATE(623), 1, sym__type_expression_inner, STATE(667), 1, sym_type_ref, STATE(692), 1, sym__single_type_expression, STATE(787), 1, sym_type_expression, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31523] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1108), 1, sym_lower_case_identifier, ACTIONS(1110), 1, anon_sym_LPAREN, ACTIONS(1112), 1, anon_sym_LBRACE, ACTIONS(1114), 1, sym_upper_case_identifier, STATE(524), 1, sym_block_comment, STATE(526), 1, aux_sym_type_ref_repeat1, STATE(578), 1, sym_unit_expr, STATE(580), 1, sym_upper_case_qid, STATE(585), 1, sym__single_type_expression, ACTIONS(1062), 3, sym__virtual_end_decl, sym__virtual_end_section, sym_arrow, STATE(577), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31568] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(525), 1, sym_block_comment, ACTIONS(1013), 7, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_import, sym_type, sym_port, sym_infix, ACTIONS(1011), 8, ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, sym_upper_case_identifier, sym_number_literal, sym_underscore, [31597] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1108), 1, sym_lower_case_identifier, ACTIONS(1110), 1, anon_sym_LPAREN, ACTIONS(1112), 1, anon_sym_LBRACE, ACTIONS(1114), 1, sym_upper_case_identifier, STATE(526), 1, sym_block_comment, STATE(527), 1, aux_sym_type_ref_repeat1, STATE(578), 1, sym_unit_expr, STATE(580), 1, sym_upper_case_qid, STATE(585), 1, sym__single_type_expression, ACTIONS(1104), 3, sym__virtual_end_decl, sym__virtual_end_section, sym_arrow, STATE(577), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31642] = 12, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1116), 1, sym_lower_case_identifier, ACTIONS(1119), 1, anon_sym_LPAREN, ACTIONS(1122), 1, anon_sym_LBRACE, ACTIONS(1125), 1, sym_upper_case_identifier, STATE(578), 1, sym_unit_expr, STATE(580), 1, sym_upper_case_qid, STATE(585), 1, sym__single_type_expression, STATE(527), 2, sym_block_comment, aux_sym_type_ref_repeat1, ACTIONS(1082), 3, sym__virtual_end_decl, sym__virtual_end_section, sym_arrow, STATE(577), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31685] = 15, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(1058), 1, sym_lower_case_identifier, ACTIONS(1060), 1, anon_sym_LPAREN, ACTIONS(1064), 1, anon_sym_LBRACE, ACTIONS(1128), 1, anon_sym_RPAREN, STATE(515), 1, sym_upper_case_qid, STATE(528), 1, sym_block_comment, STATE(562), 1, sym_unit_expr, STATE(623), 1, sym__type_expression_inner, STATE(667), 1, sym_type_ref, STATE(692), 1, sym__single_type_expression, STATE(756), 1, sym_type_expression, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31734] = 15, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(1058), 1, sym_lower_case_identifier, ACTIONS(1060), 1, anon_sym_LPAREN, ACTIONS(1064), 1, anon_sym_LBRACE, ACTIONS(1130), 1, anon_sym_RPAREN, STATE(515), 1, sym_upper_case_qid, STATE(529), 1, sym_block_comment, STATE(562), 1, sym_unit_expr, STATE(623), 1, sym__type_expression_inner, STATE(667), 1, sym_type_ref, STATE(692), 1, sym__single_type_expression, STATE(732), 1, sym_type_expression, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31783] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(530), 1, sym_block_comment, ACTIONS(1134), 2, anon_sym_LBRACE, anon_sym_DQUOTE, ACTIONS(1132), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31812] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(531), 1, sym_block_comment, ACTIONS(1138), 2, anon_sym_LBRACE, anon_sym_DQUOTE, ACTIONS(1136), 13, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, anon_sym_RBRACK, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_eq, sym_arrow, sym_underscore, [31841] = 15, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(915), 1, anon_sym_RPAREN, ACTIONS(1058), 1, sym_lower_case_identifier, ACTIONS(1060), 1, anon_sym_LPAREN, ACTIONS(1064), 1, anon_sym_LBRACE, STATE(515), 1, sym_upper_case_qid, STATE(532), 1, sym_block_comment, STATE(562), 1, sym_unit_expr, STATE(623), 1, sym__type_expression_inner, STATE(667), 1, sym_type_ref, STATE(692), 1, sym__single_type_expression, STATE(711), 1, sym_type_expression, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31890] = 12, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1140), 1, sym_lower_case_identifier, ACTIONS(1143), 1, anon_sym_LPAREN, ACTIONS(1146), 1, anon_sym_LBRACE, ACTIONS(1149), 1, sym_upper_case_identifier, STATE(592), 1, sym_unit_expr, STATE(599), 1, sym_upper_case_qid, STATE(600), 1, sym__single_type_expression, ACTIONS(1082), 2, sym__virtual_end_decl, sym_arrow, STATE(533), 2, sym_block_comment, aux_sym_type_ref_repeat1, STATE(587), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31932] = 14, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(1058), 1, sym_lower_case_identifier, ACTIONS(1060), 1, anon_sym_LPAREN, ACTIONS(1064), 1, anon_sym_LBRACE, STATE(515), 1, sym_upper_case_qid, STATE(534), 1, sym_block_comment, STATE(562), 1, sym_unit_expr, STATE(623), 1, sym__type_expression_inner, STATE(667), 1, sym_type_ref, STATE(692), 1, sym__single_type_expression, STATE(869), 1, sym_type_expression, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [31978] = 14, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(1058), 1, sym_lower_case_identifier, ACTIONS(1060), 1, anon_sym_LPAREN, ACTIONS(1064), 1, anon_sym_LBRACE, STATE(515), 1, sym_upper_case_qid, STATE(535), 1, sym_block_comment, STATE(562), 1, sym_unit_expr, STATE(623), 1, sym__type_expression_inner, STATE(667), 1, sym_type_ref, STATE(692), 1, sym__single_type_expression, STATE(856), 1, sym_type_expression, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32024] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1152), 1, sym_lower_case_identifier, ACTIONS(1154), 1, anon_sym_LPAREN, ACTIONS(1156), 1, anon_sym_LBRACE, ACTIONS(1158), 1, sym_upper_case_identifier, STATE(536), 1, sym_block_comment, STATE(543), 1, aux_sym_type_ref_repeat1, STATE(592), 1, sym_unit_expr, STATE(599), 1, sym_upper_case_qid, STATE(600), 1, sym__single_type_expression, ACTIONS(1062), 2, sym__virtual_end_decl, sym_arrow, STATE(587), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32068] = 14, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1152), 1, sym_lower_case_identifier, ACTIONS(1154), 1, anon_sym_LPAREN, ACTIONS(1156), 1, anon_sym_LBRACE, ACTIONS(1158), 1, sym_upper_case_identifier, STATE(536), 1, sym_upper_case_qid, STATE(537), 1, sym_block_comment, STATE(592), 1, sym_unit_expr, STATE(699), 1, sym__type_expression_inner, STATE(845), 1, sym__single_type_expression, STATE(859), 1, sym_type_ref, STATE(1004), 1, sym_type_expression, STATE(587), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32114] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1160), 1, sym_lower_case_identifier, ACTIONS(1162), 1, sym_line_comment, ACTIONS(1164), 1, anon_sym_LPAREN, ACTIONS(1168), 1, anon_sym_LBRACE, ACTIONS(1170), 1, sym_upper_case_identifier, STATE(538), 1, sym_block_comment, STATE(544), 1, aux_sym_union_variant_repeat1, STATE(589), 1, sym_upper_case_qid, STATE(606), 1, sym__single_type_expression, STATE(607), 1, sym_unit_expr, ACTIONS(1166), 2, sym__virtual_end_decl, anon_sym_PIPE, STATE(615), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32158] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(539), 1, sym_block_comment, ACTIONS(1172), 6, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_type, sym_port, sym_infix, ACTIONS(765), 8, ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, sym_upper_case_identifier, sym_number_literal, sym_underscore, [32186] = 14, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1152), 1, sym_lower_case_identifier, ACTIONS(1154), 1, anon_sym_LPAREN, ACTIONS(1156), 1, anon_sym_LBRACE, ACTIONS(1158), 1, sym_upper_case_identifier, STATE(536), 1, sym_upper_case_qid, STATE(540), 1, sym_block_comment, STATE(592), 1, sym_unit_expr, STATE(699), 1, sym__type_expression_inner, STATE(845), 1, sym__single_type_expression, STATE(859), 1, sym_type_ref, STATE(939), 1, sym_type_expression, STATE(587), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32232] = 14, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1108), 1, sym_lower_case_identifier, ACTIONS(1110), 1, anon_sym_LPAREN, ACTIONS(1112), 1, anon_sym_LBRACE, ACTIONS(1114), 1, sym_upper_case_identifier, STATE(524), 1, sym_upper_case_qid, STATE(541), 1, sym_block_comment, STATE(578), 1, sym_unit_expr, STATE(679), 1, sym__type_expression_inner, STATE(752), 1, sym_type_ref, STATE(753), 1, sym__single_type_expression, STATE(844), 1, sym_type_expression, STATE(577), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32278] = 14, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1152), 1, sym_lower_case_identifier, ACTIONS(1154), 1, anon_sym_LPAREN, ACTIONS(1156), 1, anon_sym_LBRACE, ACTIONS(1158), 1, sym_upper_case_identifier, STATE(536), 1, sym_upper_case_qid, STATE(542), 1, sym_block_comment, STATE(592), 1, sym_unit_expr, STATE(699), 1, sym__type_expression_inner, STATE(845), 1, sym__single_type_expression, STATE(859), 1, sym_type_ref, STATE(1007), 1, sym_type_expression, STATE(587), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32324] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1152), 1, sym_lower_case_identifier, ACTIONS(1154), 1, anon_sym_LPAREN, ACTIONS(1156), 1, anon_sym_LBRACE, ACTIONS(1158), 1, sym_upper_case_identifier, STATE(533), 1, aux_sym_type_ref_repeat1, STATE(543), 1, sym_block_comment, STATE(592), 1, sym_unit_expr, STATE(599), 1, sym_upper_case_qid, STATE(600), 1, sym__single_type_expression, ACTIONS(1104), 2, sym__virtual_end_decl, sym_arrow, STATE(587), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32368] = 12, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1174), 1, sym_lower_case_identifier, ACTIONS(1177), 1, sym_line_comment, ACTIONS(1180), 1, anon_sym_LPAREN, ACTIONS(1185), 1, anon_sym_LBRACE, ACTIONS(1188), 1, sym_upper_case_identifier, STATE(589), 1, sym_upper_case_qid, STATE(606), 1, sym__single_type_expression, STATE(607), 1, sym_unit_expr, ACTIONS(1183), 2, sym__virtual_end_decl, anon_sym_PIPE, STATE(544), 2, sym_block_comment, aux_sym_union_variant_repeat1, STATE(615), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32410] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1160), 1, sym_lower_case_identifier, ACTIONS(1162), 1, sym_line_comment, ACTIONS(1164), 1, anon_sym_LPAREN, ACTIONS(1168), 1, anon_sym_LBRACE, ACTIONS(1170), 1, sym_upper_case_identifier, STATE(538), 1, aux_sym_union_variant_repeat1, STATE(545), 1, sym_block_comment, STATE(589), 1, sym_upper_case_qid, STATE(606), 1, sym__single_type_expression, STATE(607), 1, sym_unit_expr, ACTIONS(1191), 2, sym__virtual_end_decl, anon_sym_PIPE, STATE(615), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32454] = 14, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1152), 1, sym_lower_case_identifier, ACTIONS(1154), 1, anon_sym_LPAREN, ACTIONS(1156), 1, anon_sym_LBRACE, ACTIONS(1158), 1, sym_upper_case_identifier, STATE(536), 1, sym_upper_case_qid, STATE(546), 1, sym_block_comment, STATE(592), 1, sym_unit_expr, STATE(699), 1, sym__type_expression_inner, STATE(845), 1, sym__single_type_expression, STATE(859), 1, sym_type_ref, STATE(988), 1, sym_type_expression, STATE(587), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32500] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1152), 1, sym_lower_case_identifier, ACTIONS(1154), 1, anon_sym_LPAREN, ACTIONS(1156), 1, anon_sym_LBRACE, ACTIONS(1158), 1, sym_upper_case_identifier, STATE(536), 1, sym_upper_case_qid, STATE(547), 1, sym_block_comment, STATE(592), 1, sym_unit_expr, STATE(845), 1, sym__single_type_expression, STATE(859), 1, sym_type_ref, STATE(886), 1, sym__type_expression_inner, STATE(587), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32543] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1193), 1, anon_sym_COLON_COLON, STATE(548), 1, sym_block_comment, ACTIONS(1090), 4, anon_sym_LBRACE, anon_sym_DQUOTE, sym_lower_case_identifier, sym_as, ACTIONS(1092), 8, anon_sym_LPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, sym_upper_case_identifier, sym_number_literal, sym_arrow, sym_underscore, [32572] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, ACTIONS(1058), 1, sym_lower_case_identifier, ACTIONS(1060), 1, anon_sym_LPAREN, ACTIONS(1064), 1, anon_sym_LBRACE, STATE(515), 1, sym_upper_case_qid, STATE(549), 1, sym_block_comment, STATE(562), 1, sym_unit_expr, STATE(667), 1, sym_type_ref, STATE(676), 1, sym__type_expression_inner, STATE(692), 1, sym__single_type_expression, STATE(561), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32615] = 13, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1108), 1, sym_lower_case_identifier, ACTIONS(1110), 1, anon_sym_LPAREN, ACTIONS(1112), 1, anon_sym_LBRACE, ACTIONS(1114), 1, sym_upper_case_identifier, STATE(524), 1, sym_upper_case_qid, STATE(550), 1, sym_block_comment, STATE(578), 1, sym_unit_expr, STATE(702), 1, sym__type_expression_inner, STATE(752), 1, sym_type_ref, STATE(753), 1, sym__single_type_expression, STATE(577), 4, sym_type_ref_without_args, sym_type_variable, sym_record_type, sym_tuple_type, [32658] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(272), 1, aux_sym_upper_case_qid_repeat1, STATE(551), 1, sym_block_comment, STATE(1000), 1, sym__dot_without_leading_whitespace, ACTIONS(462), 4, anon_sym_LBRACE, sym_lower_case_identifier, sym_as, sym_exposing, ACTIONS(466), 4, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_arrow, [32689] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(552), 1, sym_block_comment, ACTIONS(1197), 2, anon_sym_LBRACE, anon_sym_DQUOTE, ACTIONS(1195), 9, anon_sym_LPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_eq, sym_underscore, [32714] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(553), 1, sym_block_comment, ACTIONS(1201), 2, anon_sym_LBRACE, anon_sym_DQUOTE, ACTIONS(1199), 9, anon_sym_LPAREN, anon_sym_SQUOTE, anon_sym_DQUOTE_DQUOTE_DQUOTE, anon_sym_LBRACK, sym_upper_case_identifier, sym_lower_case_identifier, sym_number_literal, sym_arrow, sym_underscore, [32739] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(462), 1, anon_sym_LBRACE, ACTIONS(464), 1, anon_sym_DOT, STATE(271), 1, aux_sym_upper_case_qid_repeat1, STATE(554), 1, sym_block_comment, STATE(954), 1, sym__dot_without_leading_whitespace, ACTIONS(466), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [32769] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(462), 1, anon_sym_LBRACE, ACTIONS(464), 1, anon_sym_DOT, STATE(555), 1, sym_block_comment, STATE(557), 1, aux_sym_upper_case_qid_repeat1, STATE(932), 1, sym__dot_without_leading_whitespace, ACTIONS(466), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [32796] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(472), 1, anon_sym_LBRACE, ACTIONS(474), 1, anon_sym_DOT, STATE(932), 1, sym__dot_without_leading_whitespace, STATE(556), 2, sym_block_comment, aux_sym_upper_case_qid_repeat1, ACTIONS(477), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [32821] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(464), 1, anon_sym_DOT, ACTIONS(468), 1, anon_sym_LBRACE, STATE(556), 1, aux_sym_upper_case_qid_repeat1, STATE(557), 1, sym_block_comment, STATE(932), 1, sym__dot_without_leading_whitespace, ACTIONS(470), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [32848] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1205), 1, anon_sym_LBRACE, STATE(558), 1, sym_block_comment, ACTIONS(1203), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [32870] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1209), 1, anon_sym_LBRACE, STATE(559), 1, sym_block_comment, ACTIONS(1207), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [32892] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1213), 1, anon_sym_LBRACE, STATE(560), 1, sym_block_comment, ACTIONS(1211), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [32914] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1217), 1, anon_sym_LBRACE, STATE(561), 1, sym_block_comment, ACTIONS(1215), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [32936] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1221), 1, anon_sym_LBRACE, STATE(562), 1, sym_block_comment, ACTIONS(1219), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [32958] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1225), 1, anon_sym_LBRACE, STATE(563), 1, sym_block_comment, ACTIONS(1223), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [32980] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1229), 1, anon_sym_LBRACE, STATE(564), 1, sym_block_comment, ACTIONS(1227), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33002] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1231), 1, sym_lower_case_identifier, ACTIONS(1233), 1, anon_sym_LPAREN, ACTIONS(1235), 1, sym_upper_case_identifier, ACTIONS(1237), 1, sym_double_dot, STATE(565), 1, sym_block_comment, STATE(857), 1, sym__operator_as_function_inner, STATE(799), 3, sym_exposed_value, sym_exposed_type, sym_exposed_operator, [33032] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1241), 1, anon_sym_LBRACE, STATE(566), 1, sym_block_comment, ACTIONS(1239), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33054] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1245), 1, anon_sym_LBRACE, STATE(567), 1, sym_block_comment, ACTIONS(1243), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33076] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1249), 1, anon_sym_LBRACE, STATE(568), 1, sym_block_comment, ACTIONS(1247), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33098] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1251), 1, anon_sym_LBRACE, STATE(569), 1, sym_block_comment, ACTIONS(1062), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33120] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1255), 1, anon_sym_LBRACE, STATE(570), 1, sym_block_comment, ACTIONS(1253), 7, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33142] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1225), 1, anon_sym_LBRACE, STATE(571), 1, sym_block_comment, ACTIONS(1223), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33163] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1213), 1, anon_sym_LBRACE, STATE(572), 1, sym_block_comment, ACTIONS(1211), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33184] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1257), 1, anon_sym_COLON_COLON, STATE(573), 1, sym_block_comment, ACTIONS(1092), 6, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACK, sym_as, sym_eq, sym_arrow, [33205] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1231), 1, sym_lower_case_identifier, ACTIONS(1233), 1, anon_sym_LPAREN, ACTIONS(1235), 1, sym_upper_case_identifier, STATE(574), 1, sym_block_comment, STATE(857), 1, sym__operator_as_function_inner, STATE(841), 3, sym_exposed_value, sym_exposed_type, sym_exposed_operator, [33232] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(472), 1, anon_sym_LBRACE, STATE(575), 1, sym_block_comment, ACTIONS(477), 7, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_DOT, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33251] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1245), 1, anon_sym_LBRACE, STATE(576), 1, sym_block_comment, ACTIONS(1243), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33272] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1217), 1, anon_sym_LBRACE, STATE(577), 1, sym_block_comment, ACTIONS(1215), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33293] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1221), 1, anon_sym_LBRACE, STATE(578), 1, sym_block_comment, ACTIONS(1219), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33314] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1249), 1, anon_sym_LBRACE, STATE(579), 1, sym_block_comment, ACTIONS(1247), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33335] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1251), 1, anon_sym_LBRACE, STATE(580), 1, sym_block_comment, ACTIONS(1062), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33356] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1229), 1, anon_sym_LBRACE, STATE(581), 1, sym_block_comment, ACTIONS(1227), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33377] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1205), 1, anon_sym_LBRACE, STATE(582), 1, sym_block_comment, ACTIONS(1203), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33398] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1209), 1, anon_sym_LBRACE, STATE(583), 1, sym_block_comment, ACTIONS(1207), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33419] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1241), 1, anon_sym_LBRACE, STATE(584), 1, sym_block_comment, ACTIONS(1239), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33440] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1255), 1, anon_sym_LBRACE, STATE(585), 1, sym_block_comment, ACTIONS(1253), 6, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33461] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1245), 1, anon_sym_LBRACE, STATE(586), 1, sym_block_comment, ACTIONS(1243), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33479] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1217), 1, anon_sym_LBRACE, STATE(587), 1, sym_block_comment, ACTIONS(1215), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33499] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1249), 1, anon_sym_LBRACE, STATE(588), 1, sym_block_comment, ACTIONS(1247), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33517] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1251), 1, anon_sym_LBRACE, STATE(589), 1, sym_block_comment, ACTIONS(1062), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33535] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1259), 1, sym_lower_case_identifier, ACTIONS(1261), 1, anon_sym_RBRACE, STATE(590), 1, sym_block_comment, STATE(705), 1, sym_field, STATE(837), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, STATE(984), 1, sym__record_inner, [33563] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(721), 1, anon_sym_LBRACE, STATE(591), 1, sym_block_comment, ACTIONS(723), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33581] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1221), 1, anon_sym_LBRACE, STATE(592), 1, sym_block_comment, ACTIONS(1219), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33601] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1259), 1, sym_lower_case_identifier, ACTIONS(1263), 1, anon_sym_RBRACE, STATE(593), 1, sym_block_comment, STATE(705), 1, sym_field, STATE(837), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, STATE(949), 1, sym__record_inner, [33629] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1205), 1, anon_sym_LBRACE, STATE(594), 1, sym_block_comment, ACTIONS(1203), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33647] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1249), 1, anon_sym_LBRACE, STATE(595), 1, sym_block_comment, ACTIONS(1247), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33667] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1209), 1, anon_sym_LBRACE, STATE(596), 1, sym_block_comment, ACTIONS(1207), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33685] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1241), 1, anon_sym_LBRACE, STATE(597), 1, sym_block_comment, ACTIONS(1239), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33703] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1213), 1, anon_sym_LBRACE, STATE(598), 1, sym_block_comment, ACTIONS(1211), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33721] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1251), 1, anon_sym_LBRACE, STATE(599), 1, sym_block_comment, ACTIONS(1062), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33741] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1255), 1, anon_sym_LBRACE, STATE(600), 1, sym_block_comment, ACTIONS(1253), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33761] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1259), 1, sym_lower_case_identifier, ACTIONS(1265), 1, anon_sym_RBRACE, STATE(601), 1, sym_block_comment, STATE(705), 1, sym_field, STATE(837), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, STATE(1014), 1, sym__record_inner, [33789] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1213), 1, anon_sym_LBRACE, STATE(602), 1, sym_block_comment, ACTIONS(1211), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33809] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1225), 1, anon_sym_LBRACE, STATE(603), 1, sym_block_comment, ACTIONS(1223), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33829] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1269), 1, anon_sym_LBRACE, STATE(604), 1, sym_block_comment, ACTIONS(1267), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33847] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1259), 1, sym_lower_case_identifier, ACTIONS(1271), 1, anon_sym_RBRACE, STATE(605), 1, sym_block_comment, STATE(705), 1, sym_field, STATE(837), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, STATE(934), 1, sym__record_inner, [33875] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1275), 1, anon_sym_LBRACE, STATE(606), 1, sym_block_comment, ACTIONS(1273), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33893] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1221), 1, anon_sym_LBRACE, STATE(607), 1, sym_block_comment, ACTIONS(1219), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [33911] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1205), 1, anon_sym_LBRACE, STATE(608), 1, sym_block_comment, ACTIONS(1203), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33931] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1259), 1, sym_lower_case_identifier, ACTIONS(1277), 1, anon_sym_RBRACE, STATE(609), 1, sym_block_comment, STATE(705), 1, sym_field, STATE(837), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, STATE(981), 1, sym__record_inner, [33959] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1209), 1, anon_sym_LBRACE, STATE(610), 1, sym_block_comment, ACTIONS(1207), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33979] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1229), 1, anon_sym_LBRACE, STATE(611), 1, sym_block_comment, ACTIONS(1227), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [33999] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1241), 1, anon_sym_LBRACE, STATE(612), 1, sym_block_comment, ACTIONS(1239), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [34019] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1245), 1, anon_sym_LBRACE, STATE(613), 1, sym_block_comment, ACTIONS(1243), 5, sym__virtual_end_decl, anon_sym_LPAREN, sym_upper_case_identifier, sym_lower_case_identifier, sym_arrow, [34039] = 9, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1259), 1, sym_lower_case_identifier, ACTIONS(1279), 1, anon_sym_RBRACE, STATE(614), 1, sym_block_comment, STATE(705), 1, sym_field, STATE(837), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, STATE(977), 1, sym__record_inner, [34067] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1217), 1, anon_sym_LBRACE, STATE(615), 1, sym_block_comment, ACTIONS(1215), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [34085] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1225), 1, anon_sym_LBRACE, STATE(616), 1, sym_block_comment, ACTIONS(1223), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [34103] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(1229), 1, anon_sym_LBRACE, STATE(617), 1, sym_block_comment, ACTIONS(1227), 6, sym__virtual_end_decl, sym_line_comment, anon_sym_LPAREN, anon_sym_PIPE, sym_upper_case_identifier, sym_lower_case_identifier, [34121] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1281), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(1285), 1, sym__string_content_multiline, STATE(618), 1, sym_block_comment, STATE(626), 1, aux_sym_string_constant_expr_repeat1, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34144] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1287), 1, anon_sym_RPAREN, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1291), 1, sym__virtual_end_section, STATE(619), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(879), 1, sym__more_case_of_branches, [34169] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1293), 1, anon_sym_DQUOTE, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, STATE(620), 1, sym_block_comment, STATE(651), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34192] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1299), 1, sym_lower_case_identifier, ACTIONS(1301), 1, anon_sym_RBRACE, STATE(621), 1, sym_block_comment, STATE(789), 1, sym_field_type, STATE(852), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, [34217] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1303), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(622), 1, sym_block_comment, STATE(634), 1, aux_sym_string_constant_expr_repeat1, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34240] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1307), 1, sym_arrow, STATE(623), 1, sym_block_comment, STATE(646), 1, aux_sym_type_expression_repeat1, ACTIONS(1305), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, [34261] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1309), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(618), 1, aux_sym_string_constant_expr_repeat1, STATE(624), 1, sym_block_comment, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34284] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1309), 1, anon_sym_DQUOTE, STATE(625), 1, sym_block_comment, STATE(627), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34307] = 6, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1311), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, ACTIONS(1316), 1, sym__string_content_multiline, ACTIONS(1313), 2, sym_string_escape, sym_invalid_string_escape, STATE(626), 2, sym_block_comment, aux_sym_string_constant_expr_repeat1, [34328] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1281), 1, anon_sym_DQUOTE, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, STATE(627), 1, sym_block_comment, STATE(651), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34351] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1299), 1, sym_lower_case_identifier, ACTIONS(1319), 1, anon_sym_RBRACE, STATE(628), 1, sym_block_comment, STATE(757), 1, sym_field_type, STATE(884), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, [34376] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1321), 1, anon_sym_RPAREN, ACTIONS(1323), 1, sym__virtual_end_section, STATE(629), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(872), 1, sym__more_case_of_branches, [34401] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1325), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(630), 1, sym_block_comment, STATE(632), 1, aux_sym_string_constant_expr_repeat1, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34424] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1325), 1, anon_sym_DQUOTE, STATE(631), 1, sym_block_comment, STATE(633), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34447] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1327), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(626), 1, aux_sym_string_constant_expr_repeat1, STATE(632), 1, sym_block_comment, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34470] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1327), 1, anon_sym_DQUOTE, STATE(633), 1, sym_block_comment, STATE(651), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34493] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1293), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(626), 1, aux_sym_string_constant_expr_repeat1, STATE(634), 1, sym_block_comment, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34516] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1329), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(635), 1, sym_block_comment, STATE(637), 1, aux_sym_string_constant_expr_repeat1, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34539] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1329), 1, anon_sym_DQUOTE, STATE(636), 1, sym_block_comment, STATE(662), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34562] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1331), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(626), 1, aux_sym_string_constant_expr_repeat1, STATE(637), 1, sym_block_comment, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34585] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1299), 1, sym_lower_case_identifier, ACTIONS(1333), 1, anon_sym_RBRACE, STATE(638), 1, sym_block_comment, STATE(733), 1, sym_field_type, STATE(877), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, [34610] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1299), 1, sym_lower_case_identifier, ACTIONS(1335), 1, anon_sym_RBRACE, STATE(639), 1, sym_block_comment, STATE(712), 1, sym_field_type, STATE(865), 1, sym__record_base, STATE(931), 1, sym_record_base_identifier, [34635] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1337), 1, anon_sym_RPAREN, ACTIONS(1339), 1, sym__virtual_end_section, STATE(640), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(835), 1, sym__more_case_of_branches, [34660] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1341), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(641), 1, sym_block_comment, STATE(643), 1, aux_sym_string_constant_expr_repeat1, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34683] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1341), 1, anon_sym_DQUOTE, STATE(642), 1, sym_block_comment, STATE(644), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34706] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1343), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(626), 1, aux_sym_string_constant_expr_repeat1, STATE(643), 1, sym_block_comment, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34729] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1343), 1, anon_sym_DQUOTE, STATE(644), 1, sym_block_comment, STATE(651), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34752] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1345), 1, anon_sym_RPAREN, ACTIONS(1347), 1, sym__virtual_end_section, STATE(645), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(855), 1, sym__more_case_of_branches, [34777] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1307), 1, sym_arrow, STATE(646), 1, sym_block_comment, STATE(653), 1, aux_sym_type_expression_repeat1, ACTIONS(1349), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, [34798] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1351), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(647), 1, sym_block_comment, STATE(649), 1, aux_sym_string_constant_expr_repeat1, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34821] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1351), 1, anon_sym_DQUOTE, STATE(648), 1, sym_block_comment, STATE(650), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34844] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1353), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(626), 1, aux_sym_string_constant_expr_repeat1, STATE(649), 1, sym_block_comment, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [34867] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1353), 1, anon_sym_DQUOTE, STATE(650), 1, sym_block_comment, STATE(651), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34890] = 6, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1355), 1, anon_sym_DQUOTE, ACTIONS(1357), 1, aux_sym_string_constant_expr_token1, ACTIONS(1360), 2, sym_string_escape, sym_invalid_string_escape, STATE(651), 2, sym_block_comment, aux_sym_string_constant_expr_repeat2, [34911] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1363), 1, anon_sym_RPAREN, ACTIONS(1365), 1, sym__virtual_end_section, STATE(652), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(861), 1, sym__more_case_of_branches, [34936] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1369), 1, sym_arrow, STATE(653), 2, sym_block_comment, aux_sym_type_expression_repeat1, ACTIONS(1367), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, [34955] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1303), 1, anon_sym_DQUOTE, STATE(620), 1, aux_sym_string_constant_expr_repeat2, STATE(654), 1, sym_block_comment, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [34978] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1372), 1, sym_lower_case_identifier, ACTIONS(1374), 1, sym_upper_case_identifier, STATE(655), 1, sym_block_comment, STATE(940), 1, sym_value_expr, STATE(431), 2, sym_upper_case_qid, sym_value_qid, [35001] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1376), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(656), 1, sym_block_comment, STATE(659), 1, aux_sym_string_constant_expr_repeat1, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [35024] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1378), 1, anon_sym_RPAREN, ACTIONS(1380), 1, sym__virtual_end_section, STATE(657), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(896), 1, sym__more_case_of_branches, [35049] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1376), 1, anon_sym_DQUOTE, STATE(658), 1, sym_block_comment, STATE(660), 1, aux_sym_string_constant_expr_repeat2, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [35072] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1285), 1, sym__string_content_multiline, ACTIONS(1382), 1, anon_sym_DQUOTE_DQUOTE_DQUOTE, STATE(626), 1, aux_sym_string_constant_expr_repeat1, STATE(659), 1, sym_block_comment, ACTIONS(1283), 2, sym_string_escape, sym_invalid_string_escape, [35095] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1382), 1, anon_sym_DQUOTE, STATE(651), 1, aux_sym_string_constant_expr_repeat2, STATE(660), 1, sym_block_comment, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [35118] = 8, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1384), 1, sym_as, ACTIONS(1386), 1, sym_exposing, ACTIONS(1388), 1, sym__virtual_end_decl, STATE(661), 1, sym_block_comment, STATE(729), 1, sym_as_clause, STATE(955), 1, sym_exposing_list, [35143] = 7, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1295), 1, aux_sym_string_constant_expr_token1, ACTIONS(1331), 1, anon_sym_DQUOTE, STATE(651), 1, aux_sym_string_constant_expr_repeat2, STATE(662), 1, sym_block_comment, ACTIONS(1297), 2, sym_string_escape, sym_invalid_string_escape, [35166] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(301), 1, aux_sym_field_access_expr_repeat1, STATE(369), 1, sym__field_access_segment, STATE(663), 1, sym_block_comment, STATE(937), 1, sym__dot_without_leading_whitespace, [35188] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1390), 1, sym__virtual_end_section, STATE(664), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(1033), 1, sym__more_case_of_branches, [35210] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(137), 1, aux_sym_field_access_expr_repeat1, STATE(213), 1, sym__field_access_segment, STATE(665), 1, sym_block_comment, STATE(958), 1, sym__dot_without_leading_whitespace, [35232] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1394), 1, aux_sym_string_constant_expr_token1, STATE(666), 1, sym_block_comment, ACTIONS(1392), 3, anon_sym_DQUOTE, sym_string_escape, sym_invalid_string_escape, [35250] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(667), 1, sym_block_comment, ACTIONS(1396), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_arrow, [35266] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1398), 1, sym_lower_case_identifier, ACTIONS(1400), 1, sym_eq, STATE(668), 1, sym_block_comment, STATE(677), 1, aux_sym_type_declaration_repeat1, STATE(890), 1, sym_lower_type_name, [35288] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1402), 1, anon_sym_LPAREN, STATE(669), 1, sym_block_comment, STATE(850), 1, sym_exposed_union_constructors, ACTIONS(1404), 2, anon_sym_COMMA, anon_sym_RPAREN, [35308] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(94), 1, aux_sym_field_access_expr_repeat1, STATE(155), 1, sym__field_access_segment, STATE(670), 1, sym_block_comment, STATE(1020), 1, sym__dot_without_leading_whitespace, [35330] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1406), 1, sym__virtual_end_section, STATE(671), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(919), 1, sym__more_case_of_branches, [35352] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1408), 1, sym__virtual_end_section, STATE(672), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(1057), 1, sym__more_case_of_branches, [35374] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1410), 1, anon_sym_PIPE, ACTIONS(1412), 1, sym__virtual_end_decl, STATE(673), 1, sym_block_comment, STATE(678), 1, aux_sym_type_declaration_repeat2, STATE(863), 1, sym__more_union_variants, [35396] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1414), 1, sym_lower_case_identifier, ACTIONS(1417), 1, sym_eq, STATE(890), 1, sym_lower_type_name, STATE(674), 2, sym_block_comment, aux_sym_type_declaration_repeat1, [35416] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1419), 1, sym_arrow, STATE(675), 1, sym_block_comment, STATE(693), 1, aux_sym_type_expression_repeat1, ACTIONS(1349), 2, sym__virtual_end_decl, sym__virtual_end_section, [35436] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(676), 1, sym_block_comment, ACTIONS(1421), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_arrow, [35452] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1398), 1, sym_lower_case_identifier, ACTIONS(1423), 1, sym_eq, STATE(674), 1, aux_sym_type_declaration_repeat1, STATE(677), 1, sym_block_comment, STATE(890), 1, sym_lower_type_name, [35474] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1410), 1, anon_sym_PIPE, ACTIONS(1425), 1, sym__virtual_end_decl, STATE(678), 1, sym_block_comment, STATE(685), 1, aux_sym_type_declaration_repeat2, STATE(863), 1, sym__more_union_variants, [35496] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1419), 1, sym_arrow, STATE(675), 1, aux_sym_type_expression_repeat1, STATE(679), 1, sym_block_comment, ACTIONS(1305), 2, sym__virtual_end_decl, sym__virtual_end_section, [35516] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1410), 1, anon_sym_PIPE, ACTIONS(1427), 1, sym__virtual_end_decl, STATE(680), 1, sym_block_comment, STATE(686), 1, aux_sym_type_declaration_repeat2, STATE(863), 1, sym__more_union_variants, [35538] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(354), 1, aux_sym_field_access_expr_repeat1, STATE(430), 1, sym__field_access_segment, STATE(681), 1, sym_block_comment, STATE(991), 1, sym__dot_without_leading_whitespace, [35560] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1398), 1, sym_lower_case_identifier, ACTIONS(1429), 1, sym_eq, STATE(682), 1, sym_block_comment, STATE(684), 1, aux_sym_type_declaration_repeat1, STATE(890), 1, sym_lower_type_name, [35582] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1433), 1, sym__virtual_end_decl, ACTIONS(1431), 2, sym__virtual_end_section, anon_sym_RPAREN, STATE(683), 2, sym_block_comment, aux_sym__more_case_of_branches_repeat1, [35600] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1398), 1, sym_lower_case_identifier, ACTIONS(1436), 1, sym_eq, STATE(674), 1, aux_sym_type_declaration_repeat1, STATE(684), 1, sym_block_comment, STATE(890), 1, sym_lower_type_name, [35622] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1438), 1, anon_sym_PIPE, ACTIONS(1441), 1, sym__virtual_end_decl, STATE(863), 1, sym__more_union_variants, STATE(685), 2, sym_block_comment, aux_sym_type_declaration_repeat2, [35642] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1410), 1, anon_sym_PIPE, ACTIONS(1443), 1, sym__virtual_end_decl, STATE(685), 1, aux_sym_type_declaration_repeat2, STATE(686), 1, sym_block_comment, STATE(863), 1, sym__more_union_variants, [35664] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(270), 1, aux_sym_field_access_expr_repeat1, STATE(293), 1, sym__field_access_segment, STATE(687), 1, sym_block_comment, STATE(957), 1, sym__dot_without_leading_whitespace, [35686] = 5, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, ACTIONS(1447), 1, sym__string_content_multiline, STATE(688), 1, sym_block_comment, ACTIONS(1445), 3, anon_sym_DQUOTE_DQUOTE_DQUOTE, sym_string_escape, sym_invalid_string_escape, [35704] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1449), 1, sym__virtual_end_section, STATE(689), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(1054), 1, sym__more_case_of_branches, [35726] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1451), 1, sym__virtual_end_section, STATE(690), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(980), 1, sym__more_case_of_branches, [35748] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(20), 1, aux_sym_field_access_expr_repeat1, STATE(37), 1, sym__field_access_segment, STATE(691), 1, sym_block_comment, STATE(993), 1, sym__dot_without_leading_whitespace, [35770] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(692), 1, sym_block_comment, ACTIONS(1453), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_RBRACE, sym_arrow, [35786] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1455), 1, sym_arrow, ACTIONS(1367), 2, sym__virtual_end_decl, sym__virtual_end_section, STATE(693), 2, sym_block_comment, aux_sym_type_expression_repeat1, [35804] = 7, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, ACTIONS(1458), 1, sym__virtual_end_section, STATE(694), 1, sym_block_comment, STATE(695), 1, aux_sym__more_case_of_branches_repeat1, STATE(946), 1, sym__more_case_of_branches, [35826] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1289), 1, sym__virtual_end_decl, STATE(683), 1, aux_sym__more_case_of_branches_repeat1, STATE(695), 1, sym_block_comment, ACTIONS(1460), 2, sym__virtual_end_section, anon_sym_RPAREN, [35846] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1462), 1, anon_sym_COMMA, ACTIONS(1464), 1, anon_sym_RBRACK, STATE(696), 1, sym_block_comment, STATE(788), 1, aux_sym_list_pattern_repeat1, [35865] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1468), 1, sym__virtual_end_section, STATE(697), 1, sym_block_comment, STATE(755), 1, aux_sym_let_in_expr_repeat1, [35884] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1470), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1472), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(698), 1, sym_block_comment, STATE(772), 1, aux_sym_value_qid_repeat1, [35903] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1305), 1, sym__virtual_end_decl, ACTIONS(1474), 1, sym_arrow, STATE(699), 1, sym_block_comment, STATE(807), 1, aux_sym_type_expression_repeat1, [35922] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1478), 1, anon_sym_RPAREN, STATE(700), 1, sym_block_comment, STATE(819), 1, aux_sym_tuple_expr_repeat1, [35941] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1480), 1, anon_sym_else, STATE(472), 1, sym__else, STATE(701), 1, sym_block_comment, STATE(895), 1, aux_sym_if_else_expr_repeat1, [35960] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(702), 1, sym_block_comment, ACTIONS(1421), 3, sym__virtual_end_decl, sym__virtual_end_section, sym_arrow, [35975] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1482), 1, anon_sym_COMMA, ACTIONS(1485), 1, anon_sym_RPAREN, STATE(703), 2, sym_block_comment, aux_sym_tuple_pattern_repeat1, [35992] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1487), 1, anon_sym_COMMA, ACTIONS(1490), 1, anon_sym_RPAREN, STATE(704), 2, sym_block_comment, aux_sym_tuple_type_repeat1, [36009] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1492), 1, anon_sym_COMMA, ACTIONS(1494), 1, anon_sym_RBRACE, STATE(705), 1, sym_block_comment, STATE(777), 1, aux_sym__record_inner_repeat1, [36028] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1498), 1, anon_sym_RBRACK, STATE(706), 1, sym_block_comment, STATE(768), 1, aux_sym_list_expr_repeat1, [36047] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1500), 1, anon_sym_COMMA, ACTIONS(1503), 1, anon_sym_RBRACE, STATE(707), 2, sym_block_comment, aux_sym_record_type_repeat1, [36064] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1505), 1, anon_sym_COMMA, ACTIONS(1507), 1, anon_sym_RBRACE, STATE(708), 1, sym_block_comment, STATE(776), 1, aux_sym_record_pattern_repeat1, [36083] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1509), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1511), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(698), 1, aux_sym_value_qid_repeat1, STATE(709), 1, sym_block_comment, [36102] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1515), 1, anon_sym_RBRACE, STATE(707), 1, aux_sym_record_type_repeat1, STATE(710), 1, sym_block_comment, [36121] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1517), 1, anon_sym_COMMA, ACTIONS(1519), 1, anon_sym_RPAREN, STATE(711), 1, sym_block_comment, STATE(717), 1, aux_sym_tuple_type_repeat1, [36140] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1521), 1, anon_sym_RBRACE, STATE(712), 1, sym_block_comment, STATE(718), 1, aux_sym_record_type_repeat1, [36159] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1523), 1, anon_sym_RPAREN, STATE(713), 1, sym_block_comment, STATE(819), 1, aux_sym_tuple_expr_repeat1, [36178] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1525), 1, anon_sym_RBRACK, STATE(714), 1, sym_block_comment, STATE(721), 1, aux_sym_list_expr_repeat1, [36197] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1527), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1529), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(715), 1, sym_block_comment, STATE(722), 1, aux_sym_value_qid_repeat1, [36216] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1531), 1, anon_sym_else, STATE(304), 1, sym__else, STATE(716), 1, sym_block_comment, STATE(747), 1, aux_sym_if_else_expr_repeat1, [36235] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1517), 1, anon_sym_COMMA, ACTIONS(1533), 1, anon_sym_RPAREN, STATE(704), 1, aux_sym_tuple_type_repeat1, STATE(717), 1, sym_block_comment, [36254] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1535), 1, anon_sym_RBRACE, STATE(707), 1, aux_sym_record_type_repeat1, STATE(718), 1, sym_block_comment, [36273] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1537), 1, anon_sym_RBRACE, STATE(719), 1, sym_block_comment, STATE(725), 1, aux_sym_record_type_repeat1, [36292] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1539), 1, anon_sym_RPAREN, STATE(720), 1, sym_block_comment, STATE(730), 1, aux_sym_tuple_expr_repeat1, [36311] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1541), 1, anon_sym_RBRACK, STATE(721), 1, sym_block_comment, STATE(751), 1, aux_sym_list_expr_repeat1, [36330] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1470), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1543), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(722), 1, sym_block_comment, STATE(772), 1, aux_sym_value_qid_repeat1, [36349] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1545), 1, anon_sym_COMMA, ACTIONS(1547), 1, anon_sym_RPAREN, STATE(723), 1, sym_block_comment, STATE(790), 1, aux_sym_exposing_list_repeat1, [36368] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1549), 1, anon_sym_else, STATE(241), 1, sym__else, STATE(724), 1, sym_block_comment, STATE(895), 1, aux_sym_if_else_expr_repeat1, [36387] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1551), 1, anon_sym_RBRACE, STATE(707), 1, aux_sym_record_type_repeat1, STATE(725), 1, sym_block_comment, [36406] = 4, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(726), 1, sym_block_comment, ACTIONS(1553), 3, aux_sym_char_constant_expr_token1, sym_string_escape, sym_invalid_string_escape, [36421] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1555), 1, anon_sym_else, STATE(304), 1, sym__else, STATE(727), 1, sym_block_comment, STATE(747), 1, aux_sym_if_else_expr_repeat1, [36440] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1557), 1, anon_sym_else, STATE(81), 1, sym__else, STATE(728), 1, sym_block_comment, STATE(895), 1, aux_sym_if_else_expr_repeat1, [36459] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1386), 1, sym_exposing, ACTIONS(1559), 1, sym__virtual_end_decl, STATE(729), 1, sym_block_comment, STATE(1011), 1, sym_exposing_list, [36478] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1561), 1, anon_sym_COMMA, ACTIONS(1564), 1, anon_sym_RPAREN, STATE(730), 2, sym_block_comment, aux_sym_tuple_expr_repeat1, [36495] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1480), 1, anon_sym_else, STATE(459), 1, sym__else, STATE(701), 1, aux_sym_if_else_expr_repeat1, STATE(731), 1, sym_block_comment, [36514] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1517), 1, anon_sym_COMMA, ACTIONS(1566), 1, anon_sym_RPAREN, STATE(732), 1, sym_block_comment, STATE(739), 1, aux_sym_tuple_type_repeat1, [36533] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1568), 1, anon_sym_RBRACE, STATE(733), 1, sym_block_comment, STATE(740), 1, aux_sym_record_type_repeat1, [36552] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1570), 1, anon_sym_RPAREN, STATE(720), 1, aux_sym_tuple_expr_repeat1, STATE(734), 1, sym_block_comment, [36571] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1572), 1, anon_sym_RBRACK, STATE(735), 1, sym_block_comment, STATE(743), 1, aux_sym_list_expr_repeat1, [36590] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1574), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1576), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(736), 1, sym_block_comment, STATE(744), 1, aux_sym_value_qid_repeat1, [36609] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1492), 1, anon_sym_COMMA, ACTIONS(1578), 1, anon_sym_RBRACE, STATE(737), 1, sym_block_comment, STATE(749), 1, aux_sym__record_inner_repeat1, [36628] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1549), 1, anon_sym_else, STATE(233), 1, sym__else, STATE(724), 1, aux_sym_if_else_expr_repeat1, STATE(738), 1, sym_block_comment, [36647] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1517), 1, anon_sym_COMMA, ACTIONS(1580), 1, anon_sym_RPAREN, STATE(704), 1, aux_sym_tuple_type_repeat1, STATE(739), 1, sym_block_comment, [36666] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1582), 1, anon_sym_RBRACE, STATE(707), 1, aux_sym_record_type_repeat1, STATE(740), 1, sym_block_comment, [36685] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1584), 1, anon_sym_RBRACE, STATE(741), 1, sym_block_comment, STATE(745), 1, aux_sym_record_type_repeat1, [36704] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1586), 1, anon_sym_RPAREN, STATE(730), 1, aux_sym_tuple_expr_repeat1, STATE(742), 1, sym_block_comment, [36723] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1588), 1, anon_sym_RBRACK, STATE(743), 1, sym_block_comment, STATE(751), 1, aux_sym_list_expr_repeat1, [36742] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1470), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1590), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(744), 1, sym_block_comment, STATE(772), 1, aux_sym_value_qid_repeat1, [36761] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1592), 1, anon_sym_RBRACE, STATE(707), 1, aux_sym_record_type_repeat1, STATE(745), 1, sym_block_comment, [36780] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1555), 1, anon_sym_else, STATE(233), 1, sym__else, STATE(724), 1, aux_sym_if_else_expr_repeat1, STATE(746), 1, sym_block_comment, [36799] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1531), 1, anon_sym_else, STATE(317), 1, sym__else, STATE(747), 1, sym_block_comment, STATE(895), 1, aux_sym_if_else_expr_repeat1, [36818] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1594), 1, anon_sym_COMMA, ACTIONS(1596), 1, anon_sym_RPAREN, STATE(703), 1, aux_sym_tuple_pattern_repeat1, STATE(748), 1, sym_block_comment, [36837] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1598), 1, anon_sym_COMMA, ACTIONS(1601), 1, anon_sym_RBRACE, STATE(749), 2, sym_block_comment, aux_sym__record_inner_repeat1, [36854] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1603), 1, anon_sym_else, STATE(414), 1, sym__else, STATE(750), 1, sym_block_comment, STATE(895), 1, aux_sym_if_else_expr_repeat1, [36873] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1605), 1, anon_sym_COMMA, ACTIONS(1608), 1, anon_sym_RBRACK, STATE(751), 2, sym_block_comment, aux_sym_list_expr_repeat1, [36890] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(752), 1, sym_block_comment, ACTIONS(1396), 3, sym__virtual_end_decl, sym__virtual_end_section, sym_arrow, [36905] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(753), 1, sym_block_comment, ACTIONS(1453), 3, sym__virtual_end_decl, sym__virtual_end_section, sym_arrow, [36920] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1517), 1, anon_sym_COMMA, ACTIONS(1610), 1, anon_sym_RPAREN, STATE(704), 1, aux_sym_tuple_type_repeat1, STATE(754), 1, sym_block_comment, [36939] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1612), 1, sym__virtual_end_section, STATE(755), 1, sym_block_comment, STATE(822), 1, aux_sym_let_in_expr_repeat1, [36958] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1517), 1, anon_sym_COMMA, ACTIONS(1614), 1, anon_sym_RPAREN, STATE(756), 1, sym_block_comment, STATE(762), 1, aux_sym_tuple_type_repeat1, [36977] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1616), 1, anon_sym_RBRACE, STATE(757), 1, sym_block_comment, STATE(763), 1, aux_sym_record_type_repeat1, [36996] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1618), 1, anon_sym_RPAREN, STATE(720), 1, aux_sym_tuple_expr_repeat1, STATE(758), 1, sym_block_comment, [37015] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1620), 1, anon_sym_RBRACK, STATE(759), 1, sym_block_comment, STATE(766), 1, aux_sym_list_expr_repeat1, [37034] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1622), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1624), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(760), 1, sym_block_comment, STATE(767), 1, aux_sym_value_qid_repeat1, [37053] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1557), 1, anon_sym_else, STATE(74), 1, sym__else, STATE(728), 1, aux_sym_if_else_expr_repeat1, STATE(761), 1, sym_block_comment, [37072] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1517), 1, anon_sym_COMMA, ACTIONS(1626), 1, anon_sym_RPAREN, STATE(704), 1, aux_sym_tuple_type_repeat1, STATE(762), 1, sym_block_comment, [37091] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1628), 1, anon_sym_RBRACE, STATE(707), 1, aux_sym_record_type_repeat1, STATE(763), 1, sym_block_comment, [37110] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1630), 1, anon_sym_RBRACE, STATE(764), 1, sym_block_comment, STATE(828), 1, aux_sym_record_type_repeat1, [37129] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1632), 1, anon_sym_RPAREN, STATE(730), 1, aux_sym_tuple_expr_repeat1, STATE(765), 1, sym_block_comment, [37148] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1634), 1, anon_sym_RBRACK, STATE(751), 1, aux_sym_list_expr_repeat1, STATE(766), 1, sym_block_comment, [37167] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1470), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1636), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(767), 1, sym_block_comment, STATE(772), 1, aux_sym_value_qid_repeat1, [37186] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1638), 1, anon_sym_RBRACK, STATE(751), 1, aux_sym_list_expr_repeat1, STATE(768), 1, sym_block_comment, [37205] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1555), 1, anon_sym_else, STATE(74), 1, sym__else, STATE(728), 1, aux_sym_if_else_expr_repeat1, STATE(769), 1, sym_block_comment, [37224] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1640), 1, anon_sym_RBRACE, STATE(707), 1, aux_sym_record_type_repeat1, STATE(770), 1, sym_block_comment, [37243] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1594), 1, anon_sym_COMMA, ACTIONS(1642), 1, anon_sym_RPAREN, STATE(748), 1, aux_sym_tuple_pattern_repeat1, STATE(771), 1, sym_block_comment, [37262] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1644), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1647), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(772), 2, sym_block_comment, aux_sym_value_qid_repeat1, [37279] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1649), 1, anon_sym_RBRACE, STATE(710), 1, aux_sym_record_type_repeat1, STATE(773), 1, sym_block_comment, [37298] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1651), 1, anon_sym_else, STATE(176), 1, sym__else, STATE(774), 1, sym_block_comment, STATE(895), 1, aux_sym_if_else_expr_repeat1, [37317] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1367), 1, sym__virtual_end_decl, ACTIONS(1653), 1, sym_arrow, STATE(775), 2, sym_block_comment, aux_sym_type_expression_repeat1, [37334] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1656), 1, anon_sym_COMMA, ACTIONS(1659), 1, anon_sym_RBRACE, STATE(776), 2, sym_block_comment, aux_sym_record_pattern_repeat1, [37351] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1492), 1, anon_sym_COMMA, ACTIONS(1661), 1, anon_sym_RBRACE, STATE(749), 1, aux_sym__record_inner_repeat1, STATE(777), 1, sym_block_comment, [37370] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1663), 1, anon_sym_COMMA, ACTIONS(1666), 1, anon_sym_RBRACK, STATE(778), 2, sym_block_comment, aux_sym_list_pattern_repeat1, [37387] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1570), 1, anon_sym_RPAREN, STATE(765), 1, aux_sym_tuple_expr_repeat1, STATE(779), 1, sym_block_comment, [37406] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1668), 1, anon_sym_RBRACK, STATE(780), 1, sym_block_comment, STATE(784), 1, aux_sym_list_expr_repeat1, [37425] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1670), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1672), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(781), 1, sym_block_comment, STATE(785), 1, aux_sym_value_qid_repeat1, [37444] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1603), 1, anon_sym_else, STATE(408), 1, sym__else, STATE(750), 1, aux_sym_if_else_expr_repeat1, STATE(782), 1, sym_block_comment, [37463] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1674), 1, anon_sym_RPAREN, STATE(730), 1, aux_sym_tuple_expr_repeat1, STATE(783), 1, sym_block_comment, [37482] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1676), 1, anon_sym_RBRACK, STATE(751), 1, aux_sym_list_expr_repeat1, STATE(784), 1, sym_block_comment, [37501] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1470), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1678), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(772), 1, aux_sym_value_qid_repeat1, STATE(785), 1, sym_block_comment, [37520] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1555), 1, anon_sym_else, STATE(408), 1, sym__else, STATE(750), 1, aux_sym_if_else_expr_repeat1, STATE(786), 1, sym_block_comment, [37539] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1517), 1, anon_sym_COMMA, ACTIONS(1680), 1, anon_sym_RPAREN, STATE(754), 1, aux_sym_tuple_type_repeat1, STATE(787), 1, sym_block_comment, [37558] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1462), 1, anon_sym_COMMA, ACTIONS(1682), 1, anon_sym_RBRACK, STATE(778), 1, aux_sym_list_pattern_repeat1, STATE(788), 1, sym_block_comment, [37577] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1684), 1, anon_sym_RBRACE, STATE(770), 1, aux_sym_record_type_repeat1, STATE(789), 1, sym_block_comment, [37596] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1686), 1, anon_sym_COMMA, ACTIONS(1689), 1, anon_sym_RPAREN, STATE(790), 2, sym_block_comment, aux_sym_exposing_list_repeat1, [37613] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1691), 1, anon_sym_RPAREN, STATE(783), 1, aux_sym_tuple_expr_repeat1, STATE(791), 1, sym_block_comment, [37632] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1693), 1, anon_sym_RBRACK, STATE(792), 1, sym_block_comment, STATE(796), 1, aux_sym_list_expr_repeat1, [37651] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1695), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1697), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(793), 1, sym_block_comment, STATE(797), 1, aux_sym_value_qid_repeat1, [37670] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1651), 1, anon_sym_else, STATE(185), 1, sym__else, STATE(774), 1, aux_sym_if_else_expr_repeat1, STATE(794), 1, sym_block_comment, [37689] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1699), 1, anon_sym_RPAREN, STATE(730), 1, aux_sym_tuple_expr_repeat1, STATE(795), 1, sym_block_comment, [37708] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1496), 1, anon_sym_COMMA, ACTIONS(1701), 1, anon_sym_RBRACK, STATE(751), 1, aux_sym_list_expr_repeat1, STATE(796), 1, sym_block_comment, [37727] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1470), 1, sym__upper_case_identifier_without_leading_whitespace, ACTIONS(1703), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(772), 1, aux_sym_value_qid_repeat1, STATE(797), 1, sym_block_comment, [37746] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1555), 1, anon_sym_else, STATE(185), 1, sym__else, STATE(774), 1, aux_sym_if_else_expr_repeat1, STATE(798), 1, sym_block_comment, [37765] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1545), 1, anon_sym_COMMA, ACTIONS(1705), 1, anon_sym_RPAREN, STATE(723), 1, aux_sym_exposing_list_repeat1, STATE(799), 1, sym_block_comment, [37784] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1707), 1, anon_sym_RPAREN, STATE(783), 1, aux_sym_tuple_expr_repeat1, STATE(800), 1, sym_block_comment, [37803] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1691), 1, anon_sym_RPAREN, STATE(795), 1, aux_sym_tuple_expr_repeat1, STATE(801), 1, sym_block_comment, [37822] = 4, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(802), 1, sym_block_comment, ACTIONS(1709), 3, aux_sym_char_constant_expr_token1, sym_string_escape, sym_invalid_string_escape, [37837] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1478), 1, anon_sym_RPAREN, STATE(742), 1, aux_sym_tuple_expr_repeat1, STATE(803), 1, sym_block_comment, [37856] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1711), 1, sym__virtual_end_section, STATE(804), 1, sym_block_comment, STATE(805), 1, aux_sym_let_in_expr_repeat1, [37875] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1713), 1, sym__virtual_end_section, STATE(805), 1, sym_block_comment, STATE(822), 1, aux_sym_let_in_expr_repeat1, [37894] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(806), 1, sym_block_comment, ACTIONS(1715), 3, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, [37909] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1349), 1, sym__virtual_end_decl, ACTIONS(1474), 1, sym_arrow, STATE(775), 1, aux_sym_type_expression_repeat1, STATE(807), 1, sym_block_comment, [37928] = 4, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(808), 1, sym_block_comment, ACTIONS(1717), 3, aux_sym_char_constant_expr_token1, sym_string_escape, sym_invalid_string_escape, [37943] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1719), 1, sym__virtual_end_section, STATE(809), 1, sym_block_comment, STATE(810), 1, aux_sym_let_in_expr_repeat1, [37962] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1721), 1, sym__virtual_end_section, STATE(810), 1, sym_block_comment, STATE(822), 1, aux_sym_let_in_expr_repeat1, [37981] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(811), 1, sym_block_comment, ACTIONS(1723), 3, sym__virtual_end_decl, sym__virtual_end_section, anon_sym_RPAREN, [37996] = 4, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(812), 1, sym_block_comment, ACTIONS(1725), 3, aux_sym_char_constant_expr_token1, sym_string_escape, sym_invalid_string_escape, [38011] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1727), 1, sym__virtual_end_section, STATE(813), 1, sym_block_comment, STATE(814), 1, aux_sym_let_in_expr_repeat1, [38030] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1729), 1, sym__virtual_end_section, STATE(814), 1, sym_block_comment, STATE(822), 1, aux_sym_let_in_expr_repeat1, [38049] = 4, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(815), 1, sym_block_comment, ACTIONS(1731), 3, aux_sym_char_constant_expr_token1, sym_string_escape, sym_invalid_string_escape, [38064] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1505), 1, anon_sym_COMMA, ACTIONS(1733), 1, anon_sym_RBRACE, STATE(708), 1, aux_sym_record_pattern_repeat1, STATE(816), 1, sym_block_comment, [38083] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1735), 1, sym__virtual_end_section, STATE(817), 1, sym_block_comment, STATE(818), 1, aux_sym_let_in_expr_repeat1, [38102] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1737), 1, sym__virtual_end_section, STATE(818), 1, sym_block_comment, STATE(822), 1, aux_sym_let_in_expr_repeat1, [38121] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1476), 1, anon_sym_COMMA, ACTIONS(1739), 1, anon_sym_RPAREN, STATE(730), 1, aux_sym_tuple_expr_repeat1, STATE(819), 1, sym_block_comment, [38140] = 4, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(820), 1, sym_block_comment, ACTIONS(1741), 3, aux_sym_char_constant_expr_token1, sym_string_escape, sym_invalid_string_escape, [38155] = 4, ACTIONS(43), 1, anon_sym_LBRACE_DASH, ACTIONS(45), 1, sym_line_comment, STATE(821), 1, sym_block_comment, ACTIONS(1743), 3, aux_sym_char_constant_expr_token1, sym_string_escape, sym_invalid_string_escape, [38170] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1745), 1, sym__virtual_end_decl, ACTIONS(1748), 1, sym__virtual_end_section, STATE(822), 2, sym_block_comment, aux_sym_let_in_expr_repeat1, [38187] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1750), 1, sym__virtual_end_section, STATE(823), 1, sym_block_comment, STATE(824), 1, aux_sym_let_in_expr_repeat1, [38206] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1466), 1, sym__virtual_end_decl, ACTIONS(1752), 1, sym__virtual_end_section, STATE(822), 1, aux_sym_let_in_expr_repeat1, STATE(824), 1, sym_block_comment, [38225] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1555), 1, anon_sym_else, STATE(459), 1, sym__else, STATE(701), 1, aux_sym_if_else_expr_repeat1, STATE(825), 1, sym_block_comment, [38244] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1492), 1, anon_sym_COMMA, ACTIONS(1754), 1, anon_sym_RBRACE, STATE(737), 1, aux_sym__record_inner_repeat1, STATE(826), 1, sym_block_comment, [38263] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(827), 1, sym_block_comment, ACTIONS(1756), 3, anon_sym_left, anon_sym_right, anon_sym_non, [38278] = 6, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1513), 1, anon_sym_COMMA, ACTIONS(1758), 1, anon_sym_RBRACE, STATE(707), 1, aux_sym_record_type_repeat1, STATE(828), 1, sym_block_comment, [38297] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1760), 1, anon_sym_if, STATE(829), 1, sym_block_comment, STATE(915), 1, sym__if, [38313] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(830), 1, sym_block_comment, ACTIONS(1762), 2, sym__virtual_end_decl, sym__virtual_end_section, [38327] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(831), 1, sym_block_comment, ACTIONS(1764), 2, sym__virtual_end_decl, sym__virtual_end_section, [38341] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(832), 1, sym_block_comment, ACTIONS(1647), 2, sym__upper_case_identifier_without_leading_whitespace, sym__lower_case_identifier_without_leading_whitespace, [38355] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1766), 1, sym_lower_case_identifier, STATE(833), 1, sym_block_comment, STATE(878), 1, sym_field_type, [38371] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(859), 1, sym_lower_case_identifier, STATE(531), 1, sym_lower_pattern, STATE(834), 1, sym_block_comment, [38387] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1768), 1, anon_sym_RPAREN, ACTIONS(1770), 1, sym__virtual_end_section, STATE(835), 1, sym_block_comment, [38403] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1386), 1, sym_exposing, STATE(836), 1, sym_block_comment, STATE(1049), 1, sym_exposing_list, [38419] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1772), 1, sym_lower_case_identifier, STATE(826), 1, sym_field, STATE(837), 1, sym_block_comment, [38435] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1233), 1, anon_sym_LPAREN, STATE(838), 1, sym_block_comment, STATE(986), 1, sym__operator_as_function_inner, [38451] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, STATE(839), 1, sym_block_comment, STATE(914), 1, sym_upper_case_qid, [38467] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1774), 1, anon_sym_PIPE, ACTIONS(1776), 1, sym_colon, STATE(840), 1, sym_block_comment, [38483] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(841), 1, sym_block_comment, ACTIONS(1689), 2, anon_sym_COMMA, anon_sym_RPAREN, [38497] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(842), 1, sym_block_comment, ACTIONS(1778), 2, sym__virtual_end_decl, sym__virtual_end_section, [38511] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(843), 1, sym_block_comment, ACTIONS(1780), 2, anon_sym_COMMA, anon_sym_RPAREN, [38525] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(844), 1, sym_block_comment, ACTIONS(1782), 2, sym__virtual_end_decl, sym__virtual_end_section, [38539] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(845), 1, sym_block_comment, ACTIONS(1453), 2, sym__virtual_end_decl, sym_arrow, [38553] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(464), 1, anon_sym_DOT, STATE(832), 1, sym__dot_without_leading_whitespace, STATE(846), 1, sym_block_comment, [38569] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1784), 1, anon_sym_PIPE_RBRACK, STATE(235), 1, sym__glsl_end, STATE(847), 1, sym_block_comment, [38585] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1786), 1, anon_sym_PIPE_RBRACK, STATE(169), 1, sym__glsl_end, STATE(848), 1, sym_block_comment, [38601] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1788), 1, anon_sym_PIPE_RBRACK, STATE(76), 1, sym__glsl_end, STATE(849), 1, sym_block_comment, [38617] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(850), 1, sym_block_comment, ACTIONS(1790), 2, anon_sym_COMMA, anon_sym_RPAREN, [38631] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(859), 1, sym_lower_case_identifier, STATE(816), 1, sym_lower_pattern, STATE(851), 1, sym_block_comment, [38647] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1766), 1, sym_lower_case_identifier, STATE(773), 1, sym_field_type, STATE(852), 1, sym_block_comment, [38663] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(853), 1, sym_block_comment, ACTIONS(1792), 2, sym__upper_case_identifier_without_leading_whitespace, sym__lower_case_identifier_without_leading_whitespace, [38677] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(854), 1, sym_block_comment, ACTIONS(1794), 2, anon_sym_COMMA, anon_sym_RPAREN, [38691] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1796), 1, anon_sym_RPAREN, ACTIONS(1798), 1, sym__virtual_end_section, STATE(855), 1, sym_block_comment, [38707] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(856), 1, sym_block_comment, ACTIONS(1800), 2, anon_sym_COMMA, anon_sym_RPAREN, [38721] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(857), 1, sym_block_comment, ACTIONS(1802), 2, anon_sym_COMMA, anon_sym_RPAREN, [38735] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1386), 1, sym_exposing, STATE(858), 1, sym_block_comment, STATE(1015), 1, sym_exposing_list, [38751] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(859), 1, sym_block_comment, ACTIONS(1396), 2, sym__virtual_end_decl, sym_arrow, [38765] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(860), 1, sym_block_comment, ACTIONS(1804), 2, sym__virtual_end_decl, anon_sym_PIPE, [38779] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1806), 1, anon_sym_RPAREN, ACTIONS(1808), 1, sym__virtual_end_section, STATE(861), 1, sym_block_comment, [38795] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1810), 1, sym_upper_case_identifier, STATE(860), 1, sym_union_variant, STATE(862), 1, sym_block_comment, [38811] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(863), 1, sym_block_comment, ACTIONS(1812), 2, sym__virtual_end_decl, anon_sym_PIPE, [38825] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(716), 1, sym__then, STATE(864), 1, sym_block_comment, [38841] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1766), 1, sym_lower_case_identifier, STATE(719), 1, sym_field_type, STATE(865), 1, sym_block_comment, [38857] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, STATE(836), 1, sym_upper_case_qid, STATE(866), 1, sym_block_comment, [38873] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(867), 1, sym_block_comment, ACTIONS(1816), 2, sym__virtual_end_decl, sym__virtual_end_section, [38887] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(868), 1, sym_block_comment, ACTIONS(1818), 2, sym_lower_case_identifier, sym_eq, [38901] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(869), 1, sym_block_comment, ACTIONS(1820), 2, anon_sym_COMMA, anon_sym_RBRACE, [38915] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(870), 1, sym_block_comment, ACTIONS(1822), 2, anon_sym_COMMA, anon_sym_RPAREN, [38929] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(727), 1, sym__then, STATE(871), 1, sym_block_comment, [38945] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1824), 1, anon_sym_RPAREN, ACTIONS(1826), 1, sym__virtual_end_section, STATE(872), 1, sym_block_comment, [38961] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1828), 1, anon_sym_PIPE_RBRACK, STATE(309), 1, sym__glsl_end, STATE(873), 1, sym_block_comment, [38977] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(874), 1, sym_block_comment, ACTIONS(1830), 2, anon_sym_COMMA, anon_sym_RBRACE, [38991] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(181), 1, anon_sym_LBRACE, STATE(858), 1, sym_record_expr, STATE(875), 1, sym_block_comment, [39007] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(738), 1, sym__then, STATE(876), 1, sym_block_comment, [39023] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1766), 1, sym_lower_case_identifier, STATE(741), 1, sym_field_type, STATE(877), 1, sym_block_comment, [39039] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(878), 1, sym_block_comment, ACTIONS(1832), 2, anon_sym_COMMA, anon_sym_RBRACE, [39053] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1834), 1, anon_sym_RPAREN, ACTIONS(1836), 1, sym__virtual_end_section, STATE(879), 1, sym_block_comment, [39069] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(23), 1, sym_upper_case_identifier, STATE(880), 1, sym_block_comment, STATE(935), 1, sym_upper_case_qid, [39085] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(746), 1, sym__then, STATE(881), 1, sym_block_comment, [39101] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1810), 1, sym_upper_case_identifier, STATE(673), 1, sym_union_variant, STATE(882), 1, sym_block_comment, [39117] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(761), 1, sym__then, STATE(883), 1, sym_block_comment, [39133] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1766), 1, sym_lower_case_identifier, STATE(764), 1, sym_field_type, STATE(884), 1, sym_block_comment, [39149] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(825), 1, sym__then, STATE(885), 1, sym_block_comment, [39165] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(886), 1, sym_block_comment, ACTIONS(1421), 2, sym__virtual_end_decl, sym_arrow, [39179] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(887), 1, sym_block_comment, ACTIONS(1838), 2, sym__virtual_end_decl, sym_exposing, [39193] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(769), 1, sym__then, STATE(888), 1, sym_block_comment, [39209] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(889), 1, sym_block_comment, ACTIONS(1840), 2, anon_sym_COMMA, anon_sym_RBRACE, [39223] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(890), 1, sym_block_comment, ACTIONS(1842), 2, sym_lower_case_identifier, sym_eq, [39237] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(782), 1, sym__then, STATE(891), 1, sym_block_comment, [39253] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1844), 1, anon_sym_COMMA, ACTIONS(1846), 1, anon_sym_RPAREN, STATE(892), 1, sym_block_comment, [39269] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(893), 1, sym_block_comment, ACTIONS(1848), 2, anon_sym_COMMA, anon_sym_RBRACK, [39283] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(786), 1, sym__then, STATE(894), 1, sym_block_comment, [39299] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1850), 1, anon_sym_else, STATE(895), 2, sym_block_comment, aux_sym_if_else_expr_repeat1, [39313] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1853), 1, anon_sym_RPAREN, ACTIONS(1855), 1, sym__virtual_end_section, STATE(896), 1, sym_block_comment, [39329] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(794), 1, sym__then, STATE(897), 1, sym_block_comment, [39345] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(798), 1, sym__then, STATE(898), 1, sym_block_comment, [39361] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1158), 1, sym_upper_case_identifier, STATE(661), 1, sym_upper_case_qid, STATE(899), 1, sym_block_comment, [39377] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(900), 1, sym_block_comment, ACTIONS(1857), 2, anon_sym_COMMA, anon_sym_RBRACK, [39391] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1859), 1, sym_upper_case_identifier, ACTIONS(1861), 1, sym_alias, STATE(901), 1, sym_block_comment, [39407] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(731), 1, sym__then, STATE(902), 1, sym_block_comment, [39423] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(859), 1, sym_lower_case_identifier, STATE(530), 1, sym_lower_pattern, STATE(903), 1, sym_block_comment, [39439] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1774), 1, anon_sym_PIPE, ACTIONS(1863), 1, sym_eq, STATE(904), 1, sym_block_comment, [39455] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(905), 1, sym_block_comment, ACTIONS(1865), 2, anon_sym_COMMA, anon_sym_RBRACE, [39469] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(906), 1, sym_block_comment, ACTIONS(1867), 2, sym__virtual_end_decl, sym__virtual_end_section, [39483] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, STATE(907), 1, sym_block_comment, ACTIONS(1869), 2, anon_sym_COMMA, anon_sym_RPAREN, [39497] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1810), 1, sym_upper_case_identifier, STATE(680), 1, sym_union_variant, STATE(908), 1, sym_block_comment, [39513] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1871), 1, anon_sym_PIPE_RBRACK, STATE(461), 1, sym__glsl_end, STATE(909), 1, sym_block_comment, [39529] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1873), 1, sym_lower_case_identifier, ACTIONS(1875), 1, sym_module, STATE(910), 1, sym_block_comment, [39545] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(859), 1, sym_lower_case_identifier, STATE(874), 1, sym_lower_pattern, STATE(911), 1, sym_block_comment, [39561] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1877), 1, anon_sym_PIPE_RBRACK, STATE(410), 1, sym__glsl_end, STATE(912), 1, sym_block_comment, [39577] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1772), 1, sym_lower_case_identifier, STATE(889), 1, sym_field, STATE(913), 1, sym_block_comment, [39593] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1386), 1, sym_exposing, STATE(914), 1, sym_block_comment, STATE(929), 1, sym_exposing_list, [39609] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1814), 1, anon_sym_then, STATE(915), 1, sym_block_comment, STATE(994), 1, sym__then, [39625] = 5, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1844), 1, anon_sym_COMMA, ACTIONS(1879), 1, anon_sym_RPAREN, STATE(916), 1, sym_block_comment, [39641] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1881), 1, sym_number_literal, STATE(917), 1, sym_block_comment, [39654] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1883), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(918), 1, sym_block_comment, [39667] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1885), 1, sym__virtual_end_section, STATE(919), 1, sym_block_comment, [39680] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1887), 1, sym__virtual_end_decl, STATE(920), 1, sym_block_comment, [39693] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1889), 1, sym_glsl_content, STATE(921), 1, sym_block_comment, [39706] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1891), 1, anon_sym_SQUOTE, STATE(922), 1, sym_block_comment, [39719] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1893), 1, sym_colon, STATE(923), 1, sym_block_comment, [39732] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1867), 1, sym__virtual_end_decl, STATE(924), 1, sym_block_comment, [39745] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1895), 1, sym__upper_case_identifier_without_leading_whitespace, STATE(925), 1, sym_block_comment, [39758] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1897), 1, anon_sym_SQUOTE, STATE(926), 1, sym_block_comment, [39771] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1899), 1, sym__virtual_end_decl, STATE(927), 1, sym_block_comment, [39784] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1901), 1, sym__virtual_open_section, STATE(928), 1, sym_block_comment, [39797] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1903), 1, sym__virtual_end_decl, STATE(929), 1, sym_block_comment, [39810] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1905), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(930), 1, sym_block_comment, [39823] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1907), 1, anon_sym_PIPE, STATE(931), 1, sym_block_comment, [39836] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1909), 1, sym__upper_case_identifier_without_leading_whitespace, STATE(932), 1, sym_block_comment, [39849] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1911), 1, anon_sym_RPAREN, STATE(933), 1, sym_block_comment, [39862] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1913), 1, anon_sym_RBRACE, STATE(934), 1, sym_block_comment, [39875] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1915), 1, sym_where, STATE(935), 1, sym_block_comment, [39888] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1917), 1, anon_sym_in, STATE(936), 1, sym_block_comment, [39901] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1919), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(937), 1, sym_block_comment, [39914] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1921), 1, sym__virtual_end_decl, STATE(938), 1, sym_block_comment, [39927] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1923), 1, sym__virtual_end_decl, STATE(939), 1, sym_block_comment, [39940] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1925), 1, sym__virtual_end_decl, STATE(940), 1, sym_block_comment, [39953] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1927), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(941), 1, sym_block_comment, [39966] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1929), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(942), 1, sym_block_comment, [39979] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1931), 1, sym__virtual_open_section, STATE(943), 1, sym_block_comment, [39992] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1933), 1, sym__virtual_end_decl, STATE(944), 1, sym_block_comment, [40005] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1935), 1, sym_upper_case_identifier, STATE(945), 1, sym_block_comment, [40018] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1937), 1, sym__virtual_end_section, STATE(946), 1, sym_block_comment, [40031] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1939), 1, anon_sym_RPAREN, STATE(947), 1, sym_block_comment, [40044] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1941), 1, anon_sym_RPAREN, STATE(948), 1, sym_block_comment, [40057] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1943), 1, anon_sym_RBRACE, STATE(949), 1, sym_block_comment, [40070] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1945), 1, anon_sym_DASH_RBRACE, STATE(950), 1, sym_block_comment, [40083] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1947), 1, anon_sym_SQUOTE, STATE(951), 1, sym_block_comment, [40096] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1949), 1, anon_sym_SQUOTE, STATE(952), 1, sym_block_comment, [40109] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1951), 1, sym_module, STATE(953), 1, sym_block_comment, [40122] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1953), 1, sym__upper_case_identifier_without_leading_whitespace, STATE(954), 1, sym_block_comment, [40135] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1955), 1, sym__virtual_end_decl, STATE(955), 1, sym_block_comment, [40148] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1957), 1, sym__upper_case_identifier_without_leading_whitespace, STATE(956), 1, sym_block_comment, [40161] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1959), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(957), 1, sym_block_comment, [40174] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1961), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(958), 1, sym_block_comment, [40187] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1963), 1, sym_lower_case_identifier, STATE(959), 1, sym_block_comment, [40200] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1965), 1, sym_eq, STATE(960), 1, sym_block_comment, [40213] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1967), 1, sym_eq, STATE(961), 1, sym_block_comment, [40226] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1193), 1, anon_sym_COLON_COLON, STATE(962), 1, sym_block_comment, [40239] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1969), 1, sym__upper_case_identifier_without_leading_whitespace, STATE(963), 1, sym_block_comment, [40252] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1257), 1, anon_sym_COLON_COLON, STATE(964), 1, sym_block_comment, [40265] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1971), 1, sym_eq, STATE(965), 1, sym_block_comment, [40278] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1973), 1, sym_glsl_content, STATE(966), 1, sym_block_comment, [40291] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1975), 1, sym_glsl_content, STATE(967), 1, sym_block_comment, [40304] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1977), 1, sym__virtual_end_decl, STATE(968), 1, sym_block_comment, [40317] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1979), 1, sym__upper_case_identifier_without_leading_whitespace, STATE(969), 1, sym_block_comment, [40330] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1981), 1, anon_sym_RPAREN, STATE(970), 1, sym_block_comment, [40343] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1983), 1, anon_sym_in, STATE(971), 1, sym_block_comment, [40356] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1985), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(972), 1, sym_block_comment, [40369] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1987), 1, anon_sym_in, STATE(973), 1, sym_block_comment, [40382] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1989), 1, anon_sym_in, STATE(974), 1, sym_block_comment, [40395] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1991), 1, anon_sym_RPAREN, STATE(975), 1, sym_block_comment, [40408] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1993), 1, anon_sym_in, STATE(976), 1, sym_block_comment, [40421] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1995), 1, anon_sym_RBRACE, STATE(977), 1, sym_block_comment, [40434] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1997), 1, anon_sym_in, STATE(978), 1, sym_block_comment, [40447] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1999), 1, anon_sym_else, STATE(979), 1, sym_block_comment, [40460] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2001), 1, sym__virtual_end_section, STATE(980), 1, sym_block_comment, [40473] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2003), 1, anon_sym_RBRACE, STATE(981), 1, sym_block_comment, [40486] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2005), 1, sym_glsl_content, STATE(982), 1, sym_block_comment, [40499] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2007), 1, anon_sym_RPAREN, STATE(983), 1, sym_block_comment, [40512] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2009), 1, anon_sym_RBRACE, STATE(984), 1, sym_block_comment, [40525] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2011), 1, sym_lower_case_identifier, STATE(985), 1, sym_block_comment, [40538] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2013), 1, sym_eq, STATE(986), 1, sym_block_comment, [40551] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1776), 1, sym_colon, STATE(987), 1, sym_block_comment, [40564] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2015), 1, sym__virtual_end_decl, STATE(988), 1, sym_block_comment, [40577] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2017), 1, sym__virtual_end_decl, STATE(989), 1, sym_block_comment, [40590] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2019), 1, sym__block_comment_content, STATE(990), 1, sym_block_comment, [40603] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2021), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(991), 1, sym_block_comment, [40616] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2023), 1, anon_sym_LPAREN, STATE(992), 1, sym_block_comment, [40629] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2025), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(993), 1, sym_block_comment, [40642] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1555), 1, anon_sym_else, STATE(994), 1, sym_block_comment, [40655] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2027), 1, anon_sym_SQUOTE, STATE(995), 1, sym_block_comment, [40668] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2029), 1, ts_builtin_sym_end, STATE(996), 1, sym_block_comment, [40681] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2031), 1, anon_sym_SQUOTE, STATE(997), 1, sym_block_comment, [40694] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2033), 1, sym_of, STATE(998), 1, sym_block_comment, [40707] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2035), 1, anon_sym_then, STATE(999), 1, sym_block_comment, [40720] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2037), 1, sym__upper_case_identifier_without_leading_whitespace, STATE(1000), 1, sym_block_comment, [40733] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2039), 1, sym__upper_case_identifier_without_leading_whitespace, STATE(1001), 1, sym_block_comment, [40746] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2041), 1, sym_glsl_content, STATE(1002), 1, sym_block_comment, [40759] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2043), 1, sym_eq, STATE(1003), 1, sym_block_comment, [40772] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2045), 1, sym__virtual_end_decl, STATE(1004), 1, sym_block_comment, [40785] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2047), 1, anon_sym_SQUOTE, STATE(1005), 1, sym_block_comment, [40798] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2049), 1, sym__virtual_open_section, STATE(1006), 1, sym_block_comment, [40811] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1782), 1, sym__virtual_end_decl, STATE(1007), 1, sym_block_comment, [40824] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2051), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(1008), 1, sym_block_comment, [40837] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2053), 1, anon_sym_in, STATE(1009), 1, sym_block_comment, [40850] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2055), 1, sym_glsl_content, STATE(1010), 1, sym_block_comment, [40863] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2057), 1, sym__virtual_end_decl, STATE(1011), 1, sym_block_comment, [40876] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2059), 1, anon_sym_in, STATE(1012), 1, sym_block_comment, [40889] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2061), 1, anon_sym_RPAREN, STATE(1013), 1, sym_block_comment, [40902] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2063), 1, anon_sym_RBRACE, STATE(1014), 1, sym_block_comment, [40915] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2065), 1, sym__virtual_end_decl, STATE(1015), 1, sym_block_comment, [40928] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2067), 1, sym_of, STATE(1016), 1, sym_block_comment, [40941] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2069), 1, anon_sym_RPAREN, STATE(1017), 1, sym_block_comment, [40954] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2071), 1, sym__virtual_open_section, STATE(1018), 1, sym_block_comment, [40967] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2073), 1, sym__virtual_open_section, STATE(1019), 1, sym_block_comment, [40980] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2075), 1, sym__lower_case_identifier_without_leading_whitespace, STATE(1020), 1, sym_block_comment, [40993] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1863), 1, sym_eq, STATE(1021), 1, sym_block_comment, [41006] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2077), 1, sym__virtual_open_section, STATE(1022), 1, sym_block_comment, [41019] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2079), 1, sym__virtual_open_section, STATE(1023), 1, sym_block_comment, [41032] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2081), 1, sym_arrow, STATE(1024), 1, sym_block_comment, [41045] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2083), 1, sym__virtual_open_section, STATE(1025), 1, sym_block_comment, [41058] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2085), 1, sym__virtual_open_section, STATE(1026), 1, sym_block_comment, [41071] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1074), 1, anon_sym_RPAREN, STATE(1027), 1, sym_block_comment, [41084] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2087), 1, sym__virtual_open_section, STATE(1028), 1, sym_block_comment, [41097] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2089), 1, sym__virtual_open_section, STATE(1029), 1, sym_block_comment, [41110] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2091), 1, sym__virtual_open_section, STATE(1030), 1, sym_block_comment, [41123] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2093), 1, sym__virtual_open_section, STATE(1031), 1, sym_block_comment, [41136] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2095), 1, sym__virtual_open_section, STATE(1032), 1, sym_block_comment, [41149] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2097), 1, sym__virtual_end_section, STATE(1033), 1, sym_block_comment, [41162] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2099), 1, sym_of, STATE(1034), 1, sym_block_comment, [41175] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2101), 1, sym_of, STATE(1035), 1, sym_block_comment, [41188] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2103), 1, sym__virtual_open_section, STATE(1036), 1, sym_block_comment, [41201] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2105), 1, sym_of, STATE(1037), 1, sym_block_comment, [41214] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2107), 1, sym_of, STATE(1038), 1, sym_block_comment, [41227] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2109), 1, sym__virtual_open_section, STATE(1039), 1, sym_block_comment, [41240] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2111), 1, sym_of, STATE(1040), 1, sym_block_comment, [41253] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2113), 1, sym_of, STATE(1041), 1, sym_block_comment, [41266] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2115), 1, sym__virtual_open_section, STATE(1042), 1, sym_block_comment, [41279] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2117), 1, sym_of, STATE(1043), 1, sym_block_comment, [41292] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2119), 1, sym_of, STATE(1044), 1, sym_block_comment, [41305] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2121), 1, sym_of, STATE(1045), 1, sym_block_comment, [41318] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2123), 1, sym_of, STATE(1046), 1, sym_block_comment, [41331] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2125), 1, sym__virtual_open_section, STATE(1047), 1, sym_block_comment, [41344] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2127), 1, anon_sym_in, STATE(1048), 1, sym_block_comment, [41357] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2129), 1, sym__virtual_end_decl, STATE(1049), 1, sym_block_comment, [41370] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2131), 1, anon_sym_in, STATE(1050), 1, sym_block_comment, [41383] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2133), 1, anon_sym_in, STATE(1051), 1, sym_block_comment, [41396] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2135), 1, anon_sym_in, STATE(1052), 1, sym_block_comment, [41409] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2137), 1, sym_upper_case_identifier, STATE(1053), 1, sym_block_comment, [41422] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2139), 1, sym__virtual_end_section, STATE(1054), 1, sym_block_comment, [41435] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(1764), 1, sym__virtual_end_decl, STATE(1055), 1, sym_block_comment, [41448] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2141), 1, sym_double_dot, STATE(1056), 1, sym_block_comment, [41461] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2143), 1, sym__virtual_end_section, STATE(1057), 1, sym_block_comment, [41474] = 4, ACTIONS(3), 1, anon_sym_LBRACE_DASH, ACTIONS(5), 1, sym_line_comment, ACTIONS(2145), 1, sym_glsl_content, STATE(1058), 1, sym_block_comment, [41487] = 1, ACTIONS(2147), 1, ts_builtin_sym_end, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(20)] = 0, [SMALL_STATE(21)] = 71, [SMALL_STATE(22)] = 142, [SMALL_STATE(23)] = 212, [SMALL_STATE(24)] = 282, [SMALL_STATE(25)] = 350, [SMALL_STATE(26)] = 422, [SMALL_STATE(27)] = 494, [SMALL_STATE(28)] = 564, [SMALL_STATE(29)] = 631, [SMALL_STATE(30)] = 753, [SMALL_STATE(31)] = 819, [SMALL_STATE(32)] = 881, [SMALL_STATE(33)] = 943, [SMALL_STATE(34)] = 1005, [SMALL_STATE(35)] = 1071, [SMALL_STATE(36)] = 1133, [SMALL_STATE(37)] = 1255, [SMALL_STATE(38)] = 1317, [SMALL_STATE(39)] = 1439, [SMALL_STATE(40)] = 1561, [SMALL_STATE(41)] = 1683, [SMALL_STATE(42)] = 1747, [SMALL_STATE(43)] = 1809, [SMALL_STATE(44)] = 1871, [SMALL_STATE(45)] = 1993, [SMALL_STATE(46)] = 2055, [SMALL_STATE(47)] = 2117, [SMALL_STATE(48)] = 2179, [SMALL_STATE(49)] = 2298, [SMALL_STATE(50)] = 2417, [SMALL_STATE(51)] = 2536, [SMALL_STATE(52)] = 2655, [SMALL_STATE(53)] = 2718, [SMALL_STATE(54)] = 2779, [SMALL_STATE(55)] = 2898, [SMALL_STATE(56)] = 3017, [SMALL_STATE(57)] = 3136, [SMALL_STATE(58)] = 3255, [SMALL_STATE(59)] = 3374, [SMALL_STATE(60)] = 3493, [SMALL_STATE(61)] = 3554, [SMALL_STATE(62)] = 3615, [SMALL_STATE(63)] = 3734, [SMALL_STATE(64)] = 3795, [SMALL_STATE(65)] = 3856, [SMALL_STATE(66)] = 3917, [SMALL_STATE(67)] = 3978, [SMALL_STATE(68)] = 4039, [SMALL_STATE(69)] = 4100, [SMALL_STATE(70)] = 4161, [SMALL_STATE(71)] = 4222, [SMALL_STATE(72)] = 4341, [SMALL_STATE(73)] = 4402, [SMALL_STATE(74)] = 4463, [SMALL_STATE(75)] = 4524, [SMALL_STATE(76)] = 4585, [SMALL_STATE(77)] = 4646, [SMALL_STATE(78)] = 4707, [SMALL_STATE(79)] = 4768, [SMALL_STATE(80)] = 4829, [SMALL_STATE(81)] = 4890, [SMALL_STATE(82)] = 4951, [SMALL_STATE(83)] = 5012, [SMALL_STATE(84)] = 5073, [SMALL_STATE(85)] = 5134, [SMALL_STATE(86)] = 5195, [SMALL_STATE(87)] = 5256, [SMALL_STATE(88)] = 5317, [SMALL_STATE(89)] = 5378, [SMALL_STATE(90)] = 5439, [SMALL_STATE(91)] = 5500, [SMALL_STATE(92)] = 5563, [SMALL_STATE(93)] = 5624, [SMALL_STATE(94)] = 5685, [SMALL_STATE(95)] = 5752, [SMALL_STATE(96)] = 5813, [SMALL_STATE(97)] = 5880, [SMALL_STATE(98)] = 5999, [SMALL_STATE(99)] = 6118, [SMALL_STATE(100)] = 6237, [SMALL_STATE(101)] = 6356, [SMALL_STATE(102)] = 6475, [SMALL_STATE(103)] = 6594, [SMALL_STATE(104)] = 6713, [SMALL_STATE(105)] = 6832, [SMALL_STATE(106)] = 6951, [SMALL_STATE(107)] = 7070, [SMALL_STATE(108)] = 7189, [SMALL_STATE(109)] = 7308, [SMALL_STATE(110)] = 7427, [SMALL_STATE(111)] = 7546, [SMALL_STATE(112)] = 7665, [SMALL_STATE(113)] = 7784, [SMALL_STATE(114)] = 7903, [SMALL_STATE(115)] = 8022, [SMALL_STATE(116)] = 8141, [SMALL_STATE(117)] = 8260, [SMALL_STATE(118)] = 8379, [SMALL_STATE(119)] = 8498, [SMALL_STATE(120)] = 8617, [SMALL_STATE(121)] = 8736, [SMALL_STATE(122)] = 8855, [SMALL_STATE(123)] = 8974, [SMALL_STATE(124)] = 9093, [SMALL_STATE(125)] = 9212, [SMALL_STATE(126)] = 9331, [SMALL_STATE(127)] = 9450, [SMALL_STATE(128)] = 9569, [SMALL_STATE(129)] = 9688, [SMALL_STATE(130)] = 9807, [SMALL_STATE(131)] = 9926, [SMALL_STATE(132)] = 9994, [SMALL_STATE(133)] = 10062, [SMALL_STATE(134)] = 10128, [SMALL_STATE(135)] = 10194, [SMALL_STATE(136)] = 10258, [SMALL_STATE(137)] = 10324, [SMALL_STATE(138)] = 10389, [SMALL_STATE(139)] = 10502, [SMALL_STATE(140)] = 10615, [SMALL_STATE(141)] = 10728, [SMALL_STATE(142)] = 10841, [SMALL_STATE(143)] = 10954, [SMALL_STATE(144)] = 11017, [SMALL_STATE(145)] = 11130, [SMALL_STATE(146)] = 11195, [SMALL_STATE(147)] = 11253, [SMALL_STATE(148)] = 11313, [SMALL_STATE(149)] = 11371, [SMALL_STATE(150)] = 11429, [SMALL_STATE(151)] = 11491, [SMALL_STATE(152)] = 11555, [SMALL_STATE(153)] = 11619, [SMALL_STATE(154)] = 11685, [SMALL_STATE(155)] = 11749, [SMALL_STATE(156)] = 11807, [SMALL_STATE(157)] = 11865, [SMALL_STATE(158)] = 11929, [SMALL_STATE(159)] = 11987, [SMALL_STATE(160)] = 12045, [SMALL_STATE(161)] = 12103, [SMALL_STATE(162)] = 12169, [SMALL_STATE(163)] = 12227, [SMALL_STATE(164)] = 12285, [SMALL_STATE(165)] = 12349, [SMALL_STATE(166)] = 12406, [SMALL_STATE(167)] = 12511, [SMALL_STATE(168)] = 12616, [SMALL_STATE(169)] = 12673, [SMALL_STATE(170)] = 12730, [SMALL_STATE(171)] = 12787, [SMALL_STATE(172)] = 12844, [SMALL_STATE(173)] = 12901, [SMALL_STATE(174)] = 13006, [SMALL_STATE(175)] = 13063, [SMALL_STATE(176)] = 13120, [SMALL_STATE(177)] = 13177, [SMALL_STATE(178)] = 13234, [SMALL_STATE(179)] = 13291, [SMALL_STATE(180)] = 13396, [SMALL_STATE(181)] = 13453, [SMALL_STATE(182)] = 13510, [SMALL_STATE(183)] = 13567, [SMALL_STATE(184)] = 13624, [SMALL_STATE(185)] = 13681, [SMALL_STATE(186)] = 13738, [SMALL_STATE(187)] = 13795, [SMALL_STATE(188)] = 13900, [SMALL_STATE(189)] = 13957, [SMALL_STATE(190)] = 14014, [SMALL_STATE(191)] = 14071, [SMALL_STATE(192)] = 14128, [SMALL_STATE(193)] = 14189, [SMALL_STATE(194)] = 14250, [SMALL_STATE(195)] = 14307, [SMALL_STATE(196)] = 14364, [SMALL_STATE(197)] = 14421, [SMALL_STATE(198)] = 14478, [SMALL_STATE(199)] = 14535, [SMALL_STATE(200)] = 14592, [SMALL_STATE(201)] = 14649, [SMALL_STATE(202)] = 14706, [SMALL_STATE(203)] = 14763, [SMALL_STATE(204)] = 14824, [SMALL_STATE(205)] = 14881, [SMALL_STATE(206)] = 14938, [SMALL_STATE(207)] = 15043, [SMALL_STATE(208)] = 15099, [SMALL_STATE(209)] = 15155, [SMALL_STATE(210)] = 15211, [SMALL_STATE(211)] = 15319, [SMALL_STATE(212)] = 15427, [SMALL_STATE(213)] = 15485, [SMALL_STATE(214)] = 15541, [SMALL_STATE(215)] = 15597, [SMALL_STATE(216)] = 15699, [SMALL_STATE(217)] = 15807, [SMALL_STATE(218)] = 15863, [SMALL_STATE(219)] = 15919, [SMALL_STATE(220)] = 15975, [SMALL_STATE(221)] = 16077, [SMALL_STATE(222)] = 16139, [SMALL_STATE(223)] = 16201, [SMALL_STATE(224)] = 16257, [SMALL_STATE(225)] = 16359, [SMALL_STATE(226)] = 16415, [SMALL_STATE(227)] = 16517, [SMALL_STATE(228)] = 16619, [SMALL_STATE(229)] = 16721, [SMALL_STATE(230)] = 16776, [SMALL_STATE(231)] = 16831, [SMALL_STATE(232)] = 16886, [SMALL_STATE(233)] = 16941, [SMALL_STATE(234)] = 16996, [SMALL_STATE(235)] = 17051, [SMALL_STATE(236)] = 17106, [SMALL_STATE(237)] = 17161, [SMALL_STATE(238)] = 17216, [SMALL_STATE(239)] = 17275, [SMALL_STATE(240)] = 17330, [SMALL_STATE(241)] = 17385, [SMALL_STATE(242)] = 17440, [SMALL_STATE(243)] = 17495, [SMALL_STATE(244)] = 17550, [SMALL_STATE(245)] = 17605, [SMALL_STATE(246)] = 17660, [SMALL_STATE(247)] = 17715, [SMALL_STATE(248)] = 17770, [SMALL_STATE(249)] = 17825, [SMALL_STATE(250)] = 17880, [SMALL_STATE(251)] = 17935, [SMALL_STATE(252)] = 17994, [SMALL_STATE(253)] = 18049, [SMALL_STATE(254)] = 18104, [SMALL_STATE(255)] = 18159, [SMALL_STATE(256)] = 18214, [SMALL_STATE(257)] = 18269, [SMALL_STATE(258)] = 18324, [SMALL_STATE(259)] = 18379, [SMALL_STATE(260)] = 18434, [SMALL_STATE(261)] = 18489, [SMALL_STATE(262)] = 18544, [SMALL_STATE(263)] = 18599, [SMALL_STATE(264)] = 18654, [SMALL_STATE(265)] = 18753, [SMALL_STATE(266)] = 18852, [SMALL_STATE(267)] = 18951, [SMALL_STATE(268)] = 19050, [SMALL_STATE(269)] = 19147, [SMALL_STATE(270)] = 19200, [SMALL_STATE(271)] = 19255, [SMALL_STATE(272)] = 19310, [SMALL_STATE(273)] = 19365, [SMALL_STATE(274)] = 19418, [SMALL_STATE(275)] = 19473, [SMALL_STATE(276)] = 19527, [SMALL_STATE(277)] = 19581, [SMALL_STATE(278)] = 19637, [SMALL_STATE(279)] = 19689, [SMALL_STATE(280)] = 19743, [SMALL_STATE(281)] = 19799, [SMALL_STATE(282)] = 19846, [SMALL_STATE(283)] = 19893, [SMALL_STATE(284)] = 19944, [SMALL_STATE(285)] = 19991, [SMALL_STATE(286)] = 20038, [SMALL_STATE(287)] = 20086, [SMALL_STATE(288)] = 20132, [SMALL_STATE(289)] = 20178, [SMALL_STATE(290)] = 20224, [SMALL_STATE(291)] = 20298, [SMALL_STATE(292)] = 20374, [SMALL_STATE(293)] = 20420, [SMALL_STATE(294)] = 20466, [SMALL_STATE(295)] = 20542, [SMALL_STATE(296)] = 20588, [SMALL_STATE(297)] = 20634, [SMALL_STATE(298)] = 20680, [SMALL_STATE(299)] = 20726, [SMALL_STATE(300)] = 20772, [SMALL_STATE(301)] = 20817, [SMALL_STATE(302)] = 20868, [SMALL_STATE(303)] = 20913, [SMALL_STATE(304)] = 20958, [SMALL_STATE(305)] = 21003, [SMALL_STATE(306)] = 21048, [SMALL_STATE(307)] = 21093, [SMALL_STATE(308)] = 21138, [SMALL_STATE(309)] = 21223, [SMALL_STATE(310)] = 21268, [SMALL_STATE(311)] = 21313, [SMALL_STATE(312)] = 21358, [SMALL_STATE(313)] = 21403, [SMALL_STATE(314)] = 21448, [SMALL_STATE(315)] = 21493, [SMALL_STATE(316)] = 21538, [SMALL_STATE(317)] = 21583, [SMALL_STATE(318)] = 21628, [SMALL_STATE(319)] = 21673, [SMALL_STATE(320)] = 21718, [SMALL_STATE(321)] = 21763, [SMALL_STATE(322)] = 21808, [SMALL_STATE(323)] = 21853, [SMALL_STATE(324)] = 21898, [SMALL_STATE(325)] = 21983, [SMALL_STATE(326)] = 22068, [SMALL_STATE(327)] = 22153, [SMALL_STATE(328)] = 22238, [SMALL_STATE(329)] = 22323, [SMALL_STATE(330)] = 22368, [SMALL_STATE(331)] = 22413, [SMALL_STATE(332)] = 22458, [SMALL_STATE(333)] = 22503, [SMALL_STATE(334)] = 22548, [SMALL_STATE(335)] = 22593, [SMALL_STATE(336)] = 22638, [SMALL_STATE(337)] = 22723, [SMALL_STATE(338)] = 22774, [SMALL_STATE(339)] = 22819, [SMALL_STATE(340)] = 22864, [SMALL_STATE(341)] = 22914, [SMALL_STATE(342)] = 22966, [SMALL_STATE(343)] = 23016, [SMALL_STATE(344)] = 23068, [SMALL_STATE(345)] = 23112, [SMALL_STATE(346)] = 23159, [SMALL_STATE(347)] = 23238, [SMALL_STATE(348)] = 23317, [SMALL_STATE(349)] = 23396, [SMALL_STATE(350)] = 23475, [SMALL_STATE(351)] = 23524, [SMALL_STATE(352)] = 23601, [SMALL_STATE(353)] = 23680, [SMALL_STATE(354)] = 23759, [SMALL_STATE(355)] = 23808, [SMALL_STATE(356)] = 23884, [SMALL_STATE(357)] = 23936, [SMALL_STATE(358)] = 23988, [SMALL_STATE(359)] = 24036, [SMALL_STATE(360)] = 24110, [SMALL_STATE(361)] = 24186, [SMALL_STATE(362)] = 24262, [SMALL_STATE(363)] = 24312, [SMALL_STATE(364)] = 24362, [SMALL_STATE(365)] = 24406, [SMALL_STATE(366)] = 24448, [SMALL_STATE(367)] = 24490, [SMALL_STATE(368)] = 24532, [SMALL_STATE(369)] = 24574, [SMALL_STATE(370)] = 24616, [SMALL_STATE(371)] = 24658, [SMALL_STATE(372)] = 24734, [SMALL_STATE(373)] = 24776, [SMALL_STATE(374)] = 24818, [SMALL_STATE(375)] = 24866, [SMALL_STATE(376)] = 24942, [SMALL_STATE(377)] = 25018, [SMALL_STATE(378)] = 25092, [SMALL_STATE(379)] = 25168, [SMALL_STATE(380)] = 25244, [SMALL_STATE(381)] = 25320, [SMALL_STATE(382)] = 25396, [SMALL_STATE(383)] = 25472, [SMALL_STATE(384)] = 25548, [SMALL_STATE(385)] = 25624, [SMALL_STATE(386)] = 25700, [SMALL_STATE(387)] = 25776, [SMALL_STATE(388)] = 25852, [SMALL_STATE(389)] = 25928, [SMALL_STATE(390)] = 26004, [SMALL_STATE(391)] = 26080, [SMALL_STATE(392)] = 26156, [SMALL_STATE(393)] = 26232, [SMALL_STATE(394)] = 26308, [SMALL_STATE(395)] = 26350, [SMALL_STATE(396)] = 26391, [SMALL_STATE(397)] = 26432, [SMALL_STATE(398)] = 26473, [SMALL_STATE(399)] = 26514, [SMALL_STATE(400)] = 26555, [SMALL_STATE(401)] = 26596, [SMALL_STATE(402)] = 26637, [SMALL_STATE(403)] = 26678, [SMALL_STATE(404)] = 26751, [SMALL_STATE(405)] = 26792, [SMALL_STATE(406)] = 26833, [SMALL_STATE(407)] = 26874, [SMALL_STATE(408)] = 26915, [SMALL_STATE(409)] = 26956, [SMALL_STATE(410)] = 26997, [SMALL_STATE(411)] = 27038, [SMALL_STATE(412)] = 27079, [SMALL_STATE(413)] = 27120, [SMALL_STATE(414)] = 27161, [SMALL_STATE(415)] = 27202, [SMALL_STATE(416)] = 27243, [SMALL_STATE(417)] = 27284, [SMALL_STATE(418)] = 27325, [SMALL_STATE(419)] = 27366, [SMALL_STATE(420)] = 27407, [SMALL_STATE(421)] = 27448, [SMALL_STATE(422)] = 27489, [SMALL_STATE(423)] = 27530, [SMALL_STATE(424)] = 27571, [SMALL_STATE(425)] = 27612, [SMALL_STATE(426)] = 27653, [SMALL_STATE(427)] = 27698, [SMALL_STATE(428)] = 27771, [SMALL_STATE(429)] = 27844, [SMALL_STATE(430)] = 27885, [SMALL_STATE(431)] = 27925, [SMALL_STATE(432)] = 27965, [SMALL_STATE(433)] = 28007, [SMALL_STATE(434)] = 28047, [SMALL_STATE(435)] = 28089, [SMALL_STATE(436)] = 28131, [SMALL_STATE(437)] = 28173, [SMALL_STATE(438)] = 28215, [SMALL_STATE(439)] = 28257, [SMALL_STATE(440)] = 28299, [SMALL_STATE(441)] = 28341, [SMALL_STATE(442)] = 28383, [SMALL_STATE(443)] = 28425, [SMALL_STATE(444)] = 28467, [SMALL_STATE(445)] = 28509, [SMALL_STATE(446)] = 28549, [SMALL_STATE(447)] = 28589, [SMALL_STATE(448)] = 28629, [SMALL_STATE(449)] = 28669, [SMALL_STATE(450)] = 28711, [SMALL_STATE(451)] = 28751, [SMALL_STATE(452)] = 28791, [SMALL_STATE(453)] = 28856, [SMALL_STATE(454)] = 28895, [SMALL_STATE(455)] = 28934, [SMALL_STATE(456)] = 28973, [SMALL_STATE(457)] = 29012, [SMALL_STATE(458)] = 29051, [SMALL_STATE(459)] = 29090, [SMALL_STATE(460)] = 29129, [SMALL_STATE(461)] = 29168, [SMALL_STATE(462)] = 29207, [SMALL_STATE(463)] = 29272, [SMALL_STATE(464)] = 29313, [SMALL_STATE(465)] = 29352, [SMALL_STATE(466)] = 29391, [SMALL_STATE(467)] = 29430, [SMALL_STATE(468)] = 29469, [SMALL_STATE(469)] = 29508, [SMALL_STATE(470)] = 29547, [SMALL_STATE(471)] = 29586, [SMALL_STATE(472)] = 29625, [SMALL_STATE(473)] = 29664, [SMALL_STATE(474)] = 29703, [SMALL_STATE(475)] = 29742, [SMALL_STATE(476)] = 29781, [SMALL_STATE(477)] = 29820, [SMALL_STATE(478)] = 29859, [SMALL_STATE(479)] = 29898, [SMALL_STATE(480)] = 29937, [SMALL_STATE(481)] = 29976, [SMALL_STATE(482)] = 30039, [SMALL_STATE(483)] = 30078, [SMALL_STATE(484)] = 30117, [SMALL_STATE(485)] = 30156, [SMALL_STATE(486)] = 30221, [SMALL_STATE(487)] = 30260, [SMALL_STATE(488)] = 30299, [SMALL_STATE(489)] = 30342, [SMALL_STATE(490)] = 30383, [SMALL_STATE(491)] = 30426, [SMALL_STATE(492)] = 30461, [SMALL_STATE(493)] = 30493, [SMALL_STATE(494)] = 30525, [SMALL_STATE(495)] = 30558, [SMALL_STATE(496)] = 30589, [SMALL_STATE(497)] = 30620, [SMALL_STATE(498)] = 30651, [SMALL_STATE(499)] = 30682, [SMALL_STATE(500)] = 30713, [SMALL_STATE(501)] = 30744, [SMALL_STATE(502)] = 30775, [SMALL_STATE(503)] = 30810, [SMALL_STATE(504)] = 30841, [SMALL_STATE(505)] = 30872, [SMALL_STATE(506)] = 30903, [SMALL_STATE(507)] = 30934, [SMALL_STATE(508)] = 30965, [SMALL_STATE(509)] = 30996, [SMALL_STATE(510)] = 31027, [SMALL_STATE(511)] = 31058, [SMALL_STATE(512)] = 31091, [SMALL_STATE(513)] = 31122, [SMALL_STATE(514)] = 31153, [SMALL_STATE(515)] = 31184, [SMALL_STATE(516)] = 31230, [SMALL_STATE(517)] = 31262, [SMALL_STATE(518)] = 31292, [SMALL_STATE(519)] = 31336, [SMALL_STATE(520)] = 31366, [SMALL_STATE(521)] = 31398, [SMALL_STATE(522)] = 31428, [SMALL_STATE(523)] = 31474, [SMALL_STATE(524)] = 31523, [SMALL_STATE(525)] = 31568, [SMALL_STATE(526)] = 31597, [SMALL_STATE(527)] = 31642, [SMALL_STATE(528)] = 31685, [SMALL_STATE(529)] = 31734, [SMALL_STATE(530)] = 31783, [SMALL_STATE(531)] = 31812, [SMALL_STATE(532)] = 31841, [SMALL_STATE(533)] = 31890, [SMALL_STATE(534)] = 31932, [SMALL_STATE(535)] = 31978, [SMALL_STATE(536)] = 32024, [SMALL_STATE(537)] = 32068, [SMALL_STATE(538)] = 32114, [SMALL_STATE(539)] = 32158, [SMALL_STATE(540)] = 32186, [SMALL_STATE(541)] = 32232, [SMALL_STATE(542)] = 32278, [SMALL_STATE(543)] = 32324, [SMALL_STATE(544)] = 32368, [SMALL_STATE(545)] = 32410, [SMALL_STATE(546)] = 32454, [SMALL_STATE(547)] = 32500, [SMALL_STATE(548)] = 32543, [SMALL_STATE(549)] = 32572, [SMALL_STATE(550)] = 32615, [SMALL_STATE(551)] = 32658, [SMALL_STATE(552)] = 32689, [SMALL_STATE(553)] = 32714, [SMALL_STATE(554)] = 32739, [SMALL_STATE(555)] = 32769, [SMALL_STATE(556)] = 32796, [SMALL_STATE(557)] = 32821, [SMALL_STATE(558)] = 32848, [SMALL_STATE(559)] = 32870, [SMALL_STATE(560)] = 32892, [SMALL_STATE(561)] = 32914, [SMALL_STATE(562)] = 32936, [SMALL_STATE(563)] = 32958, [SMALL_STATE(564)] = 32980, [SMALL_STATE(565)] = 33002, [SMALL_STATE(566)] = 33032, [SMALL_STATE(567)] = 33054, [SMALL_STATE(568)] = 33076, [SMALL_STATE(569)] = 33098, [SMALL_STATE(570)] = 33120, [SMALL_STATE(571)] = 33142, [SMALL_STATE(572)] = 33163, [SMALL_STATE(573)] = 33184, [SMALL_STATE(574)] = 33205, [SMALL_STATE(575)] = 33232, [SMALL_STATE(576)] = 33251, [SMALL_STATE(577)] = 33272, [SMALL_STATE(578)] = 33293, [SMALL_STATE(579)] = 33314, [SMALL_STATE(580)] = 33335, [SMALL_STATE(581)] = 33356, [SMALL_STATE(582)] = 33377, [SMALL_STATE(583)] = 33398, [SMALL_STATE(584)] = 33419, [SMALL_STATE(585)] = 33440, [SMALL_STATE(586)] = 33461, [SMALL_STATE(587)] = 33479, [SMALL_STATE(588)] = 33499, [SMALL_STATE(589)] = 33517, [SMALL_STATE(590)] = 33535, [SMALL_STATE(591)] = 33563, [SMALL_STATE(592)] = 33581, [SMALL_STATE(593)] = 33601, [SMALL_STATE(594)] = 33629, [SMALL_STATE(595)] = 33647, [SMALL_STATE(596)] = 33667, [SMALL_STATE(597)] = 33685, [SMALL_STATE(598)] = 33703, [SMALL_STATE(599)] = 33721, [SMALL_STATE(600)] = 33741, [SMALL_STATE(601)] = 33761, [SMALL_STATE(602)] = 33789, [SMALL_STATE(603)] = 33809, [SMALL_STATE(604)] = 33829, [SMALL_STATE(605)] = 33847, [SMALL_STATE(606)] = 33875, [SMALL_STATE(607)] = 33893, [SMALL_STATE(608)] = 33911, [SMALL_STATE(609)] = 33931, [SMALL_STATE(610)] = 33959, [SMALL_STATE(611)] = 33979, [SMALL_STATE(612)] = 33999, [SMALL_STATE(613)] = 34019, [SMALL_STATE(614)] = 34039, [SMALL_STATE(615)] = 34067, [SMALL_STATE(616)] = 34085, [SMALL_STATE(617)] = 34103, [SMALL_STATE(618)] = 34121, [SMALL_STATE(619)] = 34144, [SMALL_STATE(620)] = 34169, [SMALL_STATE(621)] = 34192, [SMALL_STATE(622)] = 34217, [SMALL_STATE(623)] = 34240, [SMALL_STATE(624)] = 34261, [SMALL_STATE(625)] = 34284, [SMALL_STATE(626)] = 34307, [SMALL_STATE(627)] = 34328, [SMALL_STATE(628)] = 34351, [SMALL_STATE(629)] = 34376, [SMALL_STATE(630)] = 34401, [SMALL_STATE(631)] = 34424, [SMALL_STATE(632)] = 34447, [SMALL_STATE(633)] = 34470, [SMALL_STATE(634)] = 34493, [SMALL_STATE(635)] = 34516, [SMALL_STATE(636)] = 34539, [SMALL_STATE(637)] = 34562, [SMALL_STATE(638)] = 34585, [SMALL_STATE(639)] = 34610, [SMALL_STATE(640)] = 34635, [SMALL_STATE(641)] = 34660, [SMALL_STATE(642)] = 34683, [SMALL_STATE(643)] = 34706, [SMALL_STATE(644)] = 34729, [SMALL_STATE(645)] = 34752, [SMALL_STATE(646)] = 34777, [SMALL_STATE(647)] = 34798, [SMALL_STATE(648)] = 34821, [SMALL_STATE(649)] = 34844, [SMALL_STATE(650)] = 34867, [SMALL_STATE(651)] = 34890, [SMALL_STATE(652)] = 34911, [SMALL_STATE(653)] = 34936, [SMALL_STATE(654)] = 34955, [SMALL_STATE(655)] = 34978, [SMALL_STATE(656)] = 35001, [SMALL_STATE(657)] = 35024, [SMALL_STATE(658)] = 35049, [SMALL_STATE(659)] = 35072, [SMALL_STATE(660)] = 35095, [SMALL_STATE(661)] = 35118, [SMALL_STATE(662)] = 35143, [SMALL_STATE(663)] = 35166, [SMALL_STATE(664)] = 35188, [SMALL_STATE(665)] = 35210, [SMALL_STATE(666)] = 35232, [SMALL_STATE(667)] = 35250, [SMALL_STATE(668)] = 35266, [SMALL_STATE(669)] = 35288, [SMALL_STATE(670)] = 35308, [SMALL_STATE(671)] = 35330, [SMALL_STATE(672)] = 35352, [SMALL_STATE(673)] = 35374, [SMALL_STATE(674)] = 35396, [SMALL_STATE(675)] = 35416, [SMALL_STATE(676)] = 35436, [SMALL_STATE(677)] = 35452, [SMALL_STATE(678)] = 35474, [SMALL_STATE(679)] = 35496, [SMALL_STATE(680)] = 35516, [SMALL_STATE(681)] = 35538, [SMALL_STATE(682)] = 35560, [SMALL_STATE(683)] = 35582, [SMALL_STATE(684)] = 35600, [SMALL_STATE(685)] = 35622, [SMALL_STATE(686)] = 35642, [SMALL_STATE(687)] = 35664, [SMALL_STATE(688)] = 35686, [SMALL_STATE(689)] = 35704, [SMALL_STATE(690)] = 35726, [SMALL_STATE(691)] = 35748, [SMALL_STATE(692)] = 35770, [SMALL_STATE(693)] = 35786, [SMALL_STATE(694)] = 35804, [SMALL_STATE(695)] = 35826, [SMALL_STATE(696)] = 35846, [SMALL_STATE(697)] = 35865, [SMALL_STATE(698)] = 35884, [SMALL_STATE(699)] = 35903, [SMALL_STATE(700)] = 35922, [SMALL_STATE(701)] = 35941, [SMALL_STATE(702)] = 35960, [SMALL_STATE(703)] = 35975, [SMALL_STATE(704)] = 35992, [SMALL_STATE(705)] = 36009, [SMALL_STATE(706)] = 36028, [SMALL_STATE(707)] = 36047, [SMALL_STATE(708)] = 36064, [SMALL_STATE(709)] = 36083, [SMALL_STATE(710)] = 36102, [SMALL_STATE(711)] = 36121, [SMALL_STATE(712)] = 36140, [SMALL_STATE(713)] = 36159, [SMALL_STATE(714)] = 36178, [SMALL_STATE(715)] = 36197, [SMALL_STATE(716)] = 36216, [SMALL_STATE(717)] = 36235, [SMALL_STATE(718)] = 36254, [SMALL_STATE(719)] = 36273, [SMALL_STATE(720)] = 36292, [SMALL_STATE(721)] = 36311, [SMALL_STATE(722)] = 36330, [SMALL_STATE(723)] = 36349, [SMALL_STATE(724)] = 36368, [SMALL_STATE(725)] = 36387, [SMALL_STATE(726)] = 36406, [SMALL_STATE(727)] = 36421, [SMALL_STATE(728)] = 36440, [SMALL_STATE(729)] = 36459, [SMALL_STATE(730)] = 36478, [SMALL_STATE(731)] = 36495, [SMALL_STATE(732)] = 36514, [SMALL_STATE(733)] = 36533, [SMALL_STATE(734)] = 36552, [SMALL_STATE(735)] = 36571, [SMALL_STATE(736)] = 36590, [SMALL_STATE(737)] = 36609, [SMALL_STATE(738)] = 36628, [SMALL_STATE(739)] = 36647, [SMALL_STATE(740)] = 36666, [SMALL_STATE(741)] = 36685, [SMALL_STATE(742)] = 36704, [SMALL_STATE(743)] = 36723, [SMALL_STATE(744)] = 36742, [SMALL_STATE(745)] = 36761, [SMALL_STATE(746)] = 36780, [SMALL_STATE(747)] = 36799, [SMALL_STATE(748)] = 36818, [SMALL_STATE(749)] = 36837, [SMALL_STATE(750)] = 36854, [SMALL_STATE(751)] = 36873, [SMALL_STATE(752)] = 36890, [SMALL_STATE(753)] = 36905, [SMALL_STATE(754)] = 36920, [SMALL_STATE(755)] = 36939, [SMALL_STATE(756)] = 36958, [SMALL_STATE(757)] = 36977, [SMALL_STATE(758)] = 36996, [SMALL_STATE(759)] = 37015, [SMALL_STATE(760)] = 37034, [SMALL_STATE(761)] = 37053, [SMALL_STATE(762)] = 37072, [SMALL_STATE(763)] = 37091, [SMALL_STATE(764)] = 37110, [SMALL_STATE(765)] = 37129, [SMALL_STATE(766)] = 37148, [SMALL_STATE(767)] = 37167, [SMALL_STATE(768)] = 37186, [SMALL_STATE(769)] = 37205, [SMALL_STATE(770)] = 37224, [SMALL_STATE(771)] = 37243, [SMALL_STATE(772)] = 37262, [SMALL_STATE(773)] = 37279, [SMALL_STATE(774)] = 37298, [SMALL_STATE(775)] = 37317, [SMALL_STATE(776)] = 37334, [SMALL_STATE(777)] = 37351, [SMALL_STATE(778)] = 37370, [SMALL_STATE(779)] = 37387, [SMALL_STATE(780)] = 37406, [SMALL_STATE(781)] = 37425, [SMALL_STATE(782)] = 37444, [SMALL_STATE(783)] = 37463, [SMALL_STATE(784)] = 37482, [SMALL_STATE(785)] = 37501, [SMALL_STATE(786)] = 37520, [SMALL_STATE(787)] = 37539, [SMALL_STATE(788)] = 37558, [SMALL_STATE(789)] = 37577, [SMALL_STATE(790)] = 37596, [SMALL_STATE(791)] = 37613, [SMALL_STATE(792)] = 37632, [SMALL_STATE(793)] = 37651, [SMALL_STATE(794)] = 37670, [SMALL_STATE(795)] = 37689, [SMALL_STATE(796)] = 37708, [SMALL_STATE(797)] = 37727, [SMALL_STATE(798)] = 37746, [SMALL_STATE(799)] = 37765, [SMALL_STATE(800)] = 37784, [SMALL_STATE(801)] = 37803, [SMALL_STATE(802)] = 37822, [SMALL_STATE(803)] = 37837, [SMALL_STATE(804)] = 37856, [SMALL_STATE(805)] = 37875, [SMALL_STATE(806)] = 37894, [SMALL_STATE(807)] = 37909, [SMALL_STATE(808)] = 37928, [SMALL_STATE(809)] = 37943, [SMALL_STATE(810)] = 37962, [SMALL_STATE(811)] = 37981, [SMALL_STATE(812)] = 37996, [SMALL_STATE(813)] = 38011, [SMALL_STATE(814)] = 38030, [SMALL_STATE(815)] = 38049, [SMALL_STATE(816)] = 38064, [SMALL_STATE(817)] = 38083, [SMALL_STATE(818)] = 38102, [SMALL_STATE(819)] = 38121, [SMALL_STATE(820)] = 38140, [SMALL_STATE(821)] = 38155, [SMALL_STATE(822)] = 38170, [SMALL_STATE(823)] = 38187, [SMALL_STATE(824)] = 38206, [SMALL_STATE(825)] = 38225, [SMALL_STATE(826)] = 38244, [SMALL_STATE(827)] = 38263, [SMALL_STATE(828)] = 38278, [SMALL_STATE(829)] = 38297, [SMALL_STATE(830)] = 38313, [SMALL_STATE(831)] = 38327, [SMALL_STATE(832)] = 38341, [SMALL_STATE(833)] = 38355, [SMALL_STATE(834)] = 38371, [SMALL_STATE(835)] = 38387, [SMALL_STATE(836)] = 38403, [SMALL_STATE(837)] = 38419, [SMALL_STATE(838)] = 38435, [SMALL_STATE(839)] = 38451, [SMALL_STATE(840)] = 38467, [SMALL_STATE(841)] = 38483, [SMALL_STATE(842)] = 38497, [SMALL_STATE(843)] = 38511, [SMALL_STATE(844)] = 38525, [SMALL_STATE(845)] = 38539, [SMALL_STATE(846)] = 38553, [SMALL_STATE(847)] = 38569, [SMALL_STATE(848)] = 38585, [SMALL_STATE(849)] = 38601, [SMALL_STATE(850)] = 38617, [SMALL_STATE(851)] = 38631, [SMALL_STATE(852)] = 38647, [SMALL_STATE(853)] = 38663, [SMALL_STATE(854)] = 38677, [SMALL_STATE(855)] = 38691, [SMALL_STATE(856)] = 38707, [SMALL_STATE(857)] = 38721, [SMALL_STATE(858)] = 38735, [SMALL_STATE(859)] = 38751, [SMALL_STATE(860)] = 38765, [SMALL_STATE(861)] = 38779, [SMALL_STATE(862)] = 38795, [SMALL_STATE(863)] = 38811, [SMALL_STATE(864)] = 38825, [SMALL_STATE(865)] = 38841, [SMALL_STATE(866)] = 38857, [SMALL_STATE(867)] = 38873, [SMALL_STATE(868)] = 38887, [SMALL_STATE(869)] = 38901, [SMALL_STATE(870)] = 38915, [SMALL_STATE(871)] = 38929, [SMALL_STATE(872)] = 38945, [SMALL_STATE(873)] = 38961, [SMALL_STATE(874)] = 38977, [SMALL_STATE(875)] = 38991, [SMALL_STATE(876)] = 39007, [SMALL_STATE(877)] = 39023, [SMALL_STATE(878)] = 39039, [SMALL_STATE(879)] = 39053, [SMALL_STATE(880)] = 39069, [SMALL_STATE(881)] = 39085, [SMALL_STATE(882)] = 39101, [SMALL_STATE(883)] = 39117, [SMALL_STATE(884)] = 39133, [SMALL_STATE(885)] = 39149, [SMALL_STATE(886)] = 39165, [SMALL_STATE(887)] = 39179, [SMALL_STATE(888)] = 39193, [SMALL_STATE(889)] = 39209, [SMALL_STATE(890)] = 39223, [SMALL_STATE(891)] = 39237, [SMALL_STATE(892)] = 39253, [SMALL_STATE(893)] = 39269, [SMALL_STATE(894)] = 39283, [SMALL_STATE(895)] = 39299, [SMALL_STATE(896)] = 39313, [SMALL_STATE(897)] = 39329, [SMALL_STATE(898)] = 39345, [SMALL_STATE(899)] = 39361, [SMALL_STATE(900)] = 39377, [SMALL_STATE(901)] = 39391, [SMALL_STATE(902)] = 39407, [SMALL_STATE(903)] = 39423, [SMALL_STATE(904)] = 39439, [SMALL_STATE(905)] = 39455, [SMALL_STATE(906)] = 39469, [SMALL_STATE(907)] = 39483, [SMALL_STATE(908)] = 39497, [SMALL_STATE(909)] = 39513, [SMALL_STATE(910)] = 39529, [SMALL_STATE(911)] = 39545, [SMALL_STATE(912)] = 39561, [SMALL_STATE(913)] = 39577, [SMALL_STATE(914)] = 39593, [SMALL_STATE(915)] = 39609, [SMALL_STATE(916)] = 39625, [SMALL_STATE(917)] = 39641, [SMALL_STATE(918)] = 39654, [SMALL_STATE(919)] = 39667, [SMALL_STATE(920)] = 39680, [SMALL_STATE(921)] = 39693, [SMALL_STATE(922)] = 39706, [SMALL_STATE(923)] = 39719, [SMALL_STATE(924)] = 39732, [SMALL_STATE(925)] = 39745, [SMALL_STATE(926)] = 39758, [SMALL_STATE(927)] = 39771, [SMALL_STATE(928)] = 39784, [SMALL_STATE(929)] = 39797, [SMALL_STATE(930)] = 39810, [SMALL_STATE(931)] = 39823, [SMALL_STATE(932)] = 39836, [SMALL_STATE(933)] = 39849, [SMALL_STATE(934)] = 39862, [SMALL_STATE(935)] = 39875, [SMALL_STATE(936)] = 39888, [SMALL_STATE(937)] = 39901, [SMALL_STATE(938)] = 39914, [SMALL_STATE(939)] = 39927, [SMALL_STATE(940)] = 39940, [SMALL_STATE(941)] = 39953, [SMALL_STATE(942)] = 39966, [SMALL_STATE(943)] = 39979, [SMALL_STATE(944)] = 39992, [SMALL_STATE(945)] = 40005, [SMALL_STATE(946)] = 40018, [SMALL_STATE(947)] = 40031, [SMALL_STATE(948)] = 40044, [SMALL_STATE(949)] = 40057, [SMALL_STATE(950)] = 40070, [SMALL_STATE(951)] = 40083, [SMALL_STATE(952)] = 40096, [SMALL_STATE(953)] = 40109, [SMALL_STATE(954)] = 40122, [SMALL_STATE(955)] = 40135, [SMALL_STATE(956)] = 40148, [SMALL_STATE(957)] = 40161, [SMALL_STATE(958)] = 40174, [SMALL_STATE(959)] = 40187, [SMALL_STATE(960)] = 40200, [SMALL_STATE(961)] = 40213, [SMALL_STATE(962)] = 40226, [SMALL_STATE(963)] = 40239, [SMALL_STATE(964)] = 40252, [SMALL_STATE(965)] = 40265, [SMALL_STATE(966)] = 40278, [SMALL_STATE(967)] = 40291, [SMALL_STATE(968)] = 40304, [SMALL_STATE(969)] = 40317, [SMALL_STATE(970)] = 40330, [SMALL_STATE(971)] = 40343, [SMALL_STATE(972)] = 40356, [SMALL_STATE(973)] = 40369, [SMALL_STATE(974)] = 40382, [SMALL_STATE(975)] = 40395, [SMALL_STATE(976)] = 40408, [SMALL_STATE(977)] = 40421, [SMALL_STATE(978)] = 40434, [SMALL_STATE(979)] = 40447, [SMALL_STATE(980)] = 40460, [SMALL_STATE(981)] = 40473, [SMALL_STATE(982)] = 40486, [SMALL_STATE(983)] = 40499, [SMALL_STATE(984)] = 40512, [SMALL_STATE(985)] = 40525, [SMALL_STATE(986)] = 40538, [SMALL_STATE(987)] = 40551, [SMALL_STATE(988)] = 40564, [SMALL_STATE(989)] = 40577, [SMALL_STATE(990)] = 40590, [SMALL_STATE(991)] = 40603, [SMALL_STATE(992)] = 40616, [SMALL_STATE(993)] = 40629, [SMALL_STATE(994)] = 40642, [SMALL_STATE(995)] = 40655, [SMALL_STATE(996)] = 40668, [SMALL_STATE(997)] = 40681, [SMALL_STATE(998)] = 40694, [SMALL_STATE(999)] = 40707, [SMALL_STATE(1000)] = 40720, [SMALL_STATE(1001)] = 40733, [SMALL_STATE(1002)] = 40746, [SMALL_STATE(1003)] = 40759, [SMALL_STATE(1004)] = 40772, [SMALL_STATE(1005)] = 40785, [SMALL_STATE(1006)] = 40798, [SMALL_STATE(1007)] = 40811, [SMALL_STATE(1008)] = 40824, [SMALL_STATE(1009)] = 40837, [SMALL_STATE(1010)] = 40850, [SMALL_STATE(1011)] = 40863, [SMALL_STATE(1012)] = 40876, [SMALL_STATE(1013)] = 40889, [SMALL_STATE(1014)] = 40902, [SMALL_STATE(1015)] = 40915, [SMALL_STATE(1016)] = 40928, [SMALL_STATE(1017)] = 40941, [SMALL_STATE(1018)] = 40954, [SMALL_STATE(1019)] = 40967, [SMALL_STATE(1020)] = 40980, [SMALL_STATE(1021)] = 40993, [SMALL_STATE(1022)] = 41006, [SMALL_STATE(1023)] = 41019, [SMALL_STATE(1024)] = 41032, [SMALL_STATE(1025)] = 41045, [SMALL_STATE(1026)] = 41058, [SMALL_STATE(1027)] = 41071, [SMALL_STATE(1028)] = 41084, [SMALL_STATE(1029)] = 41097, [SMALL_STATE(1030)] = 41110, [SMALL_STATE(1031)] = 41123, [SMALL_STATE(1032)] = 41136, [SMALL_STATE(1033)] = 41149, [SMALL_STATE(1034)] = 41162, [SMALL_STATE(1035)] = 41175, [SMALL_STATE(1036)] = 41188, [SMALL_STATE(1037)] = 41201, [SMALL_STATE(1038)] = 41214, [SMALL_STATE(1039)] = 41227, [SMALL_STATE(1040)] = 41240, [SMALL_STATE(1041)] = 41253, [SMALL_STATE(1042)] = 41266, [SMALL_STATE(1043)] = 41279, [SMALL_STATE(1044)] = 41292, [SMALL_STATE(1045)] = 41305, [SMALL_STATE(1046)] = 41318, [SMALL_STATE(1047)] = 41331, [SMALL_STATE(1048)] = 41344, [SMALL_STATE(1049)] = 41357, [SMALL_STATE(1050)] = 41370, [SMALL_STATE(1051)] = 41383, [SMALL_STATE(1052)] = 41396, [SMALL_STATE(1053)] = 41409, [SMALL_STATE(1054)] = 41422, [SMALL_STATE(1055)] = 41435, [SMALL_STATE(1056)] = 41448, [SMALL_STATE(1057)] = 41461, [SMALL_STATE(1058)] = 41474, [SMALL_STATE(1059)] = 41487, }; 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(990), [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [7] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file, 0, 0, 0), [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(359), [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(851), [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(654), [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(839), [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(953), [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(899), [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(901), [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(910), [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(827), [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47), [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(990), [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(10), [49] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(593), [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(815), [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(635), [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(636), [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(40), [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1036), [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(967), [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(22), [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(125), [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(972), [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), [79] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(47), [82] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(10), [85] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), [87] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(593), [90] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(815), [93] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(635), [96] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(636), [99] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(40), [102] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(62), [105] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(1036), [108] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(967), [111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(22), [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(63), [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(125), [120] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(382), [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(972), [126] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(226), [129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(47), [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(10), [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(593), [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(815), [141] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(635), [144] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(636), [147] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(40), [150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(62), [153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(1036), [156] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(967), [159] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(22), [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(63), [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(125), [168] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(382), [171] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(972), [174] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(226), [177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8), [179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344), [181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(614), [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(808), [185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), [187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(658), [189] = {.entry = {.count = 1, .reusable = false}}, SHIFT(36), [191] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1032), [193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1027), [195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(312), [197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(71), [199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), [201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), [203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(287), [205] = {.entry = {.count = 1, .reusable = false}}, SHIFT(128), [207] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338), [209] = {.entry = {.count = 1, .reusable = false}}, SHIFT(122), [211] = {.entry = {.count = 1, .reusable = false}}, SHIFT(191), [213] = {.entry = {.count = 1, .reusable = false}}, SHIFT(130), [215] = {.entry = {.count = 1, .reusable = false}}, SHIFT(90), [217] = {.entry = {.count = 1, .reusable = false}}, SHIFT(126), [219] = {.entry = {.count = 1, .reusable = false}}, SHIFT(243), [221] = {.entry = {.count = 1, .reusable = false}}, SHIFT(124), [223] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), [225] = {.entry = {.count = 1, .reusable = false}}, SHIFT(9), [227] = {.entry = {.count = 1, .reusable = false}}, SHIFT(605), [229] = {.entry = {.count = 1, .reusable = false}}, SHIFT(821), [231] = {.entry = {.count = 1, .reusable = false}}, SHIFT(647), [233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(648), [235] = {.entry = {.count = 1, .reusable = false}}, SHIFT(44), [237] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1042), [239] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(198), [243] = {.entry = {.count = 1, .reusable = false}}, SHIFT(129), [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), [247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1008), [249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call_expr, 2, 10, 41), [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), [253] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(146), [256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(9), [259] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(605), [262] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(821), [265] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(647), [268] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(648), [271] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(44), [274] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(1042), [277] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(136), [280] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(198), [283] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(129), [286] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(388), [289] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(1008), [292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), [294] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(228), [297] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(146), [300] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(9), [303] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(605), [306] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(821), [309] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(647), [312] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(648), [315] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(44), [318] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(1042), [321] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(136), [324] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(198), [327] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(129), [330] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(388), [333] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(1008), [336] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(228), [339] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), [341] = {.entry = {.count = 1, .reusable = false}}, SHIFT(11), [343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(590), [345] = {.entry = {.count = 1, .reusable = false}}, SHIFT(812), [347] = {.entry = {.count = 1, .reusable = false}}, SHIFT(624), [349] = {.entry = {.count = 1, .reusable = false}}, SHIFT(625), [351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(38), [353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1047), [355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(151), [357] = {.entry = {.count = 1, .reusable = false}}, SHIFT(262), [359] = {.entry = {.count = 1, .reusable = false}}, SHIFT(123), [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), [363] = {.entry = {.count = 1, .reusable = false}}, SHIFT(918), [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), [367] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(218), [370] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(11), [373] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(590), [376] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(812), [379] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(624), [382] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(625), [385] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(38), [388] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(1047), [391] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(151), [394] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(262), [397] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(123), [400] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(393), [403] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(918), [406] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(224), [409] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(218), [412] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(11), [415] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(590), [418] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(812), [421] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(624), [424] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(625), [427] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(38), [430] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(1047), [433] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(151), [436] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(262), [439] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(123), [442] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(393), [445] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(918), [448] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_function_call_expr, 2, 10, 41), SHIFT(224), [451] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_access_expr, 2, 0, 42), [453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_access_expr, 2, 0, 42), [455] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_field_access_expr_repeat1, 2, 0, 0), [457] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_field_access_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(853), [460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_access_expr_repeat1, 2, 0, 0), [462] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_upper_case_qid, 1, 0, 0), [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(853), [466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_upper_case_qid, 1, 0, 0), [468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_upper_case_qid, 2, 0, 0), [470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_upper_case_qid, 2, 0, 0), [472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_upper_case_qid_repeat1, 2, 0, 0), [474] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_upper_case_qid_repeat1, 2, 0, 0), SHIFT_REPEAT(853), [477] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_upper_case_qid_repeat1, 2, 0, 0), [479] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bin_op_expr, 2, 0, 40), [481] = {.entry = {.count = 1, .reusable = false}}, SHIFT(517), [483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bin_op_expr, 2, 0, 40), [485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1, 0, 0), [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1, 0, 0), [489] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_bin_op_expr_repeat1, 2, 0, 0), [491] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_bin_op_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(517), [494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bin_op_expr_repeat1, 2, 0, 0), [496] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_upper_case_qid_repeat1, 2, 0, 0), SHIFT(853), [499] = {.entry = {.count = 1, .reusable = false}}, SHIFT(406), [501] = {.entry = {.count = 1, .reusable = false}}, SHIFT(121), [503] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__function_call_target, 1, 0, 0), REDUCE(sym__atom, 1, 0, 0), [506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__atom, 1, 0, 0), [508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__field_access_start, 1, 0, 0), [510] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__function_call_target, 1, 0, 0), REDUCE(sym__atom, 1, 0, 0), [513] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value_qid, 3, 0, 0), [515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_qid, 3, 0, 0), [517] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value_expr, 1, 0, 21), [519] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_expr, 1, 0, 21), [521] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__field_access_segment, 2, 0, 0), [523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__field_access_segment, 2, 0, 0), [525] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_call_target, 1, 0, 0), [527] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_call_target, 1, 0, 0), [529] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value_qid, 4, 0, 0), [531] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_qid, 4, 0, 0), [533] = {.entry = {.count = 1, .reusable = false}}, SHIFT(310), [535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_field_access_expr_repeat1, 1, 0, 0), [537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_access_expr_repeat1, 1, 0, 0), [539] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257), [541] = {.entry = {.count = 1, .reusable = false}}, SHIFT(473), [543] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70), [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__atom, 1, 0, 0), [547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expr, 2, 0, 0), [549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expr, 2, 0, 0), [551] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expr, 3, 0, 51), [553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expr, 3, 0, 51), [555] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), [557] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expr, 3, 0, 54), [559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expr, 3, 0, 54), [561] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value_qid, 1, 0, 0), [563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_qid, 1, 0, 0), [565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5), [567] = {.entry = {.count = 1, .reusable = false}}, SHIFT(609), [569] = {.entry = {.count = 1, .reusable = false}}, SHIFT(802), [571] = {.entry = {.count = 1, .reusable = false}}, SHIFT(630), [573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(631), [575] = {.entry = {.count = 1, .reusable = false}}, SHIFT(39), [577] = {.entry = {.count = 1, .reusable = false}}, SHIFT(928), [579] = {.entry = {.count = 1, .reusable = false}}, SHIFT(468), [581] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48), [583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), [587] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7), [589] = {.entry = {.count = 1, .reusable = false}}, SHIFT(601), [591] = {.entry = {.count = 1, .reusable = false}}, SHIFT(820), [593] = {.entry = {.count = 1, .reusable = false}}, SHIFT(641), [595] = {.entry = {.count = 1, .reusable = false}}, SHIFT(642), [597] = {.entry = {.count = 1, .reusable = false}}, SHIFT(29), [599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1039), [601] = {.entry = {.count = 1, .reusable = false}}, SHIFT(398), [603] = {.entry = {.count = 1, .reusable = false}}, SHIFT(127), [605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), [607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), [609] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_function_call_expr_repeat1, 1, 0, 0), [611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_call_expr_repeat1, 1, 0, 0), [613] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_as_function_expr, 1, 0, 23), [615] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_as_function_expr, 1, 0, 23), [617] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_accessor_function_expr, 2, 0, 0), [619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_accessor_function_expr, 2, 0, 0), [621] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_constant_expr, 1, 0, 0), [623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_constant_expr, 1, 0, 0), [625] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__literal_expr_group, 1, 0, 0), [627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__literal_expr_group, 1, 0, 0), [629] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_constant_expr, 2, 0, 4), [631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_constant_expr, 2, 0, 4), [633] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_char_constant_expr, 3, 0, 11), [635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char_constant_expr, 3, 0, 11), [637] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_constant_expr, 3, 0, 12), [639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_constant_expr, 3, 0, 12), [641] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_negate_expr, 2, 0, 0), [643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_negate_expr, 2, 0, 0), [645] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_expr, 2, 0, 0), [647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expr, 2, 0, 0), [649] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__operator_as_function_inner, 3, 0, 52), [651] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__operator_as_function_inner, 3, 0, 52), [653] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_expr, 3, 0, 39), [655] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expr, 3, 0, 39), [657] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else_expr, 3, 0, 57), [659] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else_expr, 3, 0, 57), [661] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__glsl_end, 1, 0, 0), [663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__glsl_end, 1, 0, 0), [665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_glsl_code_expr, 3, 0, 58), [667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_glsl_code_expr, 3, 0, 58), [669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expr, 4, 0, 75), [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expr, 4, 0, 75), [673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_expr, 4, 0, 81), [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expr, 4, 0, 81), [677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_function_expr, 4, 0, 83), [679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_function_expr, 4, 0, 83), [681] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__else, 2, 0, 39), [683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__else, 2, 0, 39), [685] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else_expr, 4, 0, 84), [687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else_expr, 4, 0, 84), [689] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_in_expr, 6, 0, 89), [691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_in_expr, 6, 0, 89), [693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_of_expr, 6, 0, 90), [695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_of_expr, 6, 0, 90), [697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_of_expr, 7, 0, 92), [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_of_expr, 7, 0, 92), [701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_in_expr, 7, 0, 93), [703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_in_expr, 7, 0, 93), [705] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_of_expr, 7, 0, 95), [707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_of_expr, 7, 0, 95), [709] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_of_expr, 8, 0, 92), [711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_of_expr, 8, 0, 92), [713] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_of_expr, 8, 0, 98), [715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_of_expr, 8, 0, 98), [717] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_of_expr, 9, 0, 98), [719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_of_expr, 9, 0, 98), [721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unit_expr, 2, 0, 0), [723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unit_expr, 2, 0, 0), [725] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__call_or_atom, 1, 0, 0), [727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__call_or_atom, 1, 0, 0), [729] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file, 3, 0, 7), [731] = {.entry = {.count = 1, .reusable = false}}, SHIFT(959), [733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file, 2, 0, 7), [735] = {.entry = {.count = 1, .reusable = false}}, SHIFT(451), [737] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6), [739] = {.entry = {.count = 1, .reusable = false}}, SHIFT(358), [741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(942), [743] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file, 1, 0, 0), [745] = {.entry = {.count = 1, .reusable = false}}, SHIFT(288), [747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(12), [749] = {.entry = {.count = 1, .reusable = false}}, SHIFT(276), [751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(941), [753] = {.entry = {.count = 1, .reusable = false}}, SHIFT(367), [755] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13), [757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(342), [759] = {.entry = {.count = 1, .reusable = false}}, SHIFT(930), [761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file, 4, 0, 7), [763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_file, 2, 0, 0), [765] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), [767] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(359), [770] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(360), [773] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(851), [776] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(726), [779] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(622), [782] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(654), [785] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(355), [788] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(490), [791] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(495), [794] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(901), [797] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(959), [800] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(827), [803] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), SHIFT_REPEAT(513), [806] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_bin_op_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(517), [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), [811] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(493), [814] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(375), [817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), [819] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(851), [822] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(726), [825] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(622), [828] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(654), [831] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(355), [834] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(490), [837] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(495), [840] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), [842] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(513), [845] = {.entry = {.count = 1, .reusable = false}}, SHIFT(493), [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), [849] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_pattern, 1, 0, 1), [851] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_pattern, 1, 0, 1), [853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_pattern, 2, 0, 8), [855] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_pattern, 2, 0, 8), [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493), [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), [869] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(493), [872] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(360), [875] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(851), [878] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(726), [881] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(622), [884] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(654), [887] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(355), [890] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(490), [893] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(495), [896] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), [898] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(513), [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lower_pattern, 1, 0, 0), [909] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lower_pattern, 1, 0, 0), [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration_left, 1, 0, 0), [913] = {.entry = {.count = 1, .reusable = false}}, SHIFT(542), [915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492), [917] = {.entry = {.count = 1, .reusable = false}}, SHIFT(541), [919] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 7, 0, 95), SHIFT(476), [922] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 6, 0, 90), SHIFT(475), [925] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 6, 0, 90), SHIFT(333), [928] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 7, 0, 95), SHIFT(335), [931] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 6, 0, 90), SHIFT(247), [934] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 7, 0, 95), SHIFT(249), [937] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 6, 0, 90), SHIFT(87), [940] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 7, 0, 95), SHIFT(89), [943] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 6, 0, 90), SHIFT(420), [946] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 7, 0, 95), SHIFT(422), [949] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 6, 0, 90), SHIFT(186), [952] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_case_of_expr, 7, 0, 95), SHIFT(190), [955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1027), [957] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(493), [960] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(375), [963] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(851), [966] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(726), [969] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(622), [972] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(654), [975] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(355), [978] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(490), [981] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(495), [984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), [986] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 2, 0, 0), SHIFT_REPEAT(513), [989] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration_left, 2, 0, 5), [991] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__single_pattern, 3, 0, 9), [993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_pattern, 3, 0, 9), [995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parenthesized_pattern, 3, 0, 0), [997] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__single_pattern_cons, 1, 0, 0), [999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_pattern_cons, 1, 0, 0), [1001] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parenthesized_pattern, 3, 0, 0), [1003] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_pattern, 4, 0, 28), [1005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_pattern, 4, 0, 28), [1007] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_nullary_constructor_argument_pattern, 1, 0, 0), [1009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nullary_constructor_argument_pattern, 1, 0, 0), [1011] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list, 2, 0, 0), [1013] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__import_list, 2, 0, 0), [1015] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__import_list, 2, 0, 0), SHIFT_REPEAT(899), [1018] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_pattern, 3, 0, 10), [1020] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_pattern, 3, 0, 10), [1022] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__union_argument_pattern, 1, 0, 0), [1024] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__union_argument_pattern, 1, 0, 0), [1026] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 6, 0, 59), [1028] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 6, 0, 59), [1030] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 3, 0, 13), [1032] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, 0, 13), [1034] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2, 0, 0), [1036] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), [1038] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 4, 0, 30), [1040] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 4, 0, 30), [1042] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__single_pattern, 1, 0, 2), [1044] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_pattern, 1, 0, 2), [1046] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 5, 0, 43), [1048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 5, 0, 43), [1050] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anything_pattern, 1, 0, 0), [1052] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anything_pattern, 1, 0, 0), [1054] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_union_pattern_repeat1, 1, 0, 0), [1056] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 1, 0, 0), [1058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), [1060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), [1062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_ref_without_args, 1, 0, 0), [1064] = {.entry = {.count = 1, .reusable = false}}, SHIFT(639), [1066] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 2), [1068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 2), [1070] = {.entry = {.count = 1, .reusable = false}}, SHIFT(903), [1072] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_identifier, 1, 0, 0), [1074] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_identifier, 1, 0, 0), [1076] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(567), [1079] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(532), [1082] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), [1084] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(639), [1087] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(490), [1090] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cons_pattern, 3, 0, 26), [1092] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cons_pattern, 3, 0, 26), [1094] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 3), [1096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 3), [1098] = {.entry = {.count = 1, .reusable = false}}, SHIFT(834), [1100] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator, 1, 0, 0), [1102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator, 1, 0, 0), [1104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_ref, 2, 0, 32), [1106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), [1108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), [1110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(528), [1112] = {.entry = {.count = 1, .reusable = false}}, SHIFT(628), [1114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554), [1116] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(576), [1119] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(528), [1122] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(628), [1125] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(554), [1128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), [1130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(591), [1132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 3, 0, 25), [1134] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 3, 0, 25), [1136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 3, 0, 27), [1138] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 3, 0, 27), [1140] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(613), [1143] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(523), [1146] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(621), [1149] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 2, 0, 31), SHIFT_REPEAT(551), [1152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), [1154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), [1156] = {.entry = {.count = 1, .reusable = false}}, SHIFT(621), [1158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), [1160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(586), [1162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(604), [1164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529), [1166] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_variant, 2, 0, 46), [1168] = {.entry = {.count = 1, .reusable = false}}, SHIFT(638), [1170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(555), [1172] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__top_decl_list, 2, 0, 0), [1174] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_variant_repeat1, 2, 0, 31), SHIFT_REPEAT(586), [1177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_variant_repeat1, 2, 0, 31), SHIFT_REPEAT(604), [1180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_variant_repeat1, 2, 0, 31), SHIFT_REPEAT(529), [1183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_union_variant_repeat1, 2, 0, 31), [1185] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_union_variant_repeat1, 2, 0, 31), SHIFT_REPEAT(638), [1188] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_variant_repeat1, 2, 0, 31), SHIFT_REPEAT(555), [1191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_variant, 1, 0, 21), [1193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462), [1195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_declaration_left_repeat1, 1, 0, 0), [1197] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_function_declaration_left_repeat1, 1, 0, 0), [1199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 1, 0, 0), [1201] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_anonymous_function_expr_repeat1, 1, 0, 0), [1203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 4, 0, 62), [1205] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 4, 0, 62), [1207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 4, 0, 64), [1209] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 4, 0, 64), [1211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 5, 0, 85), [1213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 5, 0, 85), [1215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_type_expression, 1, 0, 16), [1217] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__single_type_expression, 1, 0, 16), [1219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 1, 0, 17), [1221] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 1, 0, 17), [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_type_expression, 3, 0, 13), [1225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__single_type_expression, 3, 0, 13), [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 3, 0, 44), [1229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 3, 0, 44), [1231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(854), [1233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), [1235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), [1237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), [1239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 4, 0, 66), [1241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 4, 0, 66), [1243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_variable, 1, 0, 0), [1245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_variable, 1, 0, 0), [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 2, 0, 0), [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_type, 2, 0, 0), [1251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_ref_without_args, 1, 0, 0), [1253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_ref_repeat1, 1, 0, 15), [1255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_ref_repeat1, 1, 0, 15), [1257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), [1259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(904), [1261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), [1263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), [1265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_union_variant_repeat1, 1, 0, 0), [1269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_union_variant_repeat1, 1, 0, 0), [1271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), [1273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_union_variant_repeat1, 1, 0, 15), [1275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_union_variant_repeat1, 1, 0, 15), [1277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), [1279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), [1281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(256), [1283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(688), [1285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688), [1287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), [1289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), [1291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), [1293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(506), [1295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666), [1297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(666), [1299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(840), [1301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595), [1303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(499), [1305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_expression, 1, 0, 15), [1307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), [1309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), [1311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_constant_expr_repeat1, 2, 0, 0), [1313] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_constant_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(688), [1316] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_constant_expr_repeat1, 2, 0, 0), SHIFT_REPEAT(688), [1319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(579), [1321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), [1323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), [1325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(474), [1327] = {.entry = {.count = 1, .reusable = false}}, SHIFT(457), [1329] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), [1331] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), [1333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588), [1335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568), [1337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), [1339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), [1341] = {.entry = {.count = 1, .reusable = false}}, SHIFT(400), [1343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(402), [1345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), [1347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), [1349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_expression, 2, 0, 31), [1351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(200), [1353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(202), [1355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_constant_expr_repeat2, 2, 0, 0), [1357] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_constant_expr_repeat2, 2, 0, 0), SHIFT_REPEAT(666), [1360] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_constant_expr_repeat2, 2, 0, 0), SHIFT_REPEAT(666), [1363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), [1365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435), [1367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_expression_repeat1, 2, 0, 31), [1369] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_expression_repeat1, 2, 0, 31), SHIFT_REPEAT(549), [1372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), [1374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), [1376] = {.entry = {.count = 1, .reusable = false}}, SHIFT(318), [1378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), [1380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), [1382] = {.entry = {.count = 1, .reusable = false}}, SHIFT(322), [1384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(945), [1386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(992), [1388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_clause, 2, 0, 6), [1390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), [1392] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_constant_expr_repeat2, 1, 0, 0), [1394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_constant_expr_repeat2, 1, 0, 0), [1396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_expression_inner, 1, 0, 0), [1398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868), [1400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), [1402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), [1404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposed_type, 1, 0, 0), [1406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), [1408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), [1410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(862), [1412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 4, 0, 35), [1414] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(868), [1417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat1, 2, 0, 0), [1419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), [1421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_expression_repeat1, 2, 0, 32), [1423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(540), [1425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 5, 0, 48), [1427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 5, 0, 49), [1429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(882), [1431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__more_case_of_branches_repeat1, 2, 0, 96), [1433] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__more_case_of_branches_repeat1, 2, 0, 96), SHIFT_REPEAT(371), [1436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908), [1438] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat2, 2, 0, 70), SHIFT_REPEAT(862), [1441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat2, 2, 0, 70), [1443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 6, 0, 71), [1445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_constant_expr_repeat1, 1, 0, 0), [1447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_constant_expr_repeat1, 1, 0, 0), [1449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), [1451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), [1453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_expression_inner, 1, 0, 15), [1455] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_expression_repeat1, 2, 0, 31), SHIFT_REPEAT(550), [1458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), [1460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__more_case_of_branches, 1, 6, 91), [1462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), [1464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), [1466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), [1468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(936), [1470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(846), [1472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), [1474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), [1476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), [1478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), [1480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), [1482] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2, 0, 60), SHIFT_REPEAT(403), [1485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2, 0, 60), [1487] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2, 0, 63), SHIFT_REPEAT(535), [1490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2, 0, 63), [1492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), [1494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_inner, 1, 0, 38), [1496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), [1498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), [1500] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, 0, 65), SHIFT_REPEAT(833), [1503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, 0, 65), [1505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(911), [1507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), [1509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), [1511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), [1513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(833), [1515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), [1517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(535), [1519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), [1521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), [1523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), [1525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), [1527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), [1529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(448), [1531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), [1533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), [1535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), [1537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(566), [1539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), [1541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), [1543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), [1545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574), [1547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), [1549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), [1551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560), [1553] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1005), [1555] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_else_expr_repeat1, 3, 0, 88), [1557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), [1559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_clause, 3, 0, 20), [1561] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expr_repeat1, 2, 0, 76), SHIFT_REPEAT(100), [1564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expr_repeat1, 2, 0, 76), [1566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), [1568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(617), [1570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), [1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), [1574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), [1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), [1578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_inner, 3, 0, 78), [1580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594), [1582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(596), [1584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(597), [1586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), [1588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), [1590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), [1592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598), [1594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403), [1596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), [1598] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__record_inner_repeat1, 2, 0, 80), SHIFT_REPEAT(913), [1601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__record_inner_repeat1, 2, 0, 80), [1603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), [1605] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_expr_repeat1, 2, 0, 82), SHIFT_REPEAT(114), [1608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expr_repeat1, 2, 0, 82), [1610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), [1612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(978), [1614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), [1616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), [1618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), [1620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), [1622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), [1624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), [1626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(582), [1628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(583), [1630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), [1632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), [1634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), [1636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), [1638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466), [1640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610), [1642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512), [1644] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_value_qid_repeat1, 2, 0, 0), SHIFT_REPEAT(846), [1647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_value_qid_repeat1, 2, 0, 0), [1649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(612), [1651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), [1653] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_expression_repeat1, 2, 0, 31), SHIFT_REPEAT(547), [1656] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_pattern_repeat1, 2, 0, 29), SHIFT_REPEAT(911), [1659] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_pattern_repeat1, 2, 0, 29), [1661] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_inner, 2, 0, 55), [1663] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_pattern_repeat1, 2, 0, 31), SHIFT_REPEAT(428), [1666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_pattern_repeat1, 2, 0, 31), [1668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), [1670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), [1672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), [1674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), [1676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), [1678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), [1680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603), [1682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), [1684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), [1686] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exposing_list_repeat1, 2, 0, 0), SHIFT_REPEAT(574), [1689] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exposing_list_repeat1, 2, 0, 0), [1691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), [1693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), [1695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), [1697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), [1699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), [1701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), [1703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), [1705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(989), [1707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), [1709] = {.entry = {.count = 1, .reusable = false}}, SHIFT(995), [1711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), [1713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1050), [1715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__more_case_of_branches_repeat1, 2, 0, 94), [1717] = {.entry = {.count = 1, .reusable = false}}, SHIFT(951), [1719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1009), [1721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1012), [1723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_of_branch, 3, 0, 97), [1725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(926), [1727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(973), [1729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), [1731] = {.entry = {.count = 1, .reusable = false}}, SHIFT(997), [1733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), [1735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1051), [1737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1052), [1739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), [1741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(922), [1743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(952), [1745] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_in_expr_repeat1, 2, 0, 87), SHIFT_REPEAT(336), [1748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_let_in_expr_repeat1, 2, 0, 87), [1750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), [1752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), [1754] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_inner, 2, 0, 53), [1756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), [1758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(572), [1760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), [1762] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__inner_declaration, 1, 0, 56), [1764] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_declaration, 3, 0, 22), [1766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), [1768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), [1770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), [1772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1021), [1774] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_base_identifier, 1, 0, 0), [1776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534), [1778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__inner_declaration, 1, 0, 0), [1780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2, 0, 5), [1782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_annotation, 3, 0, 14), [1784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), [1786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), [1788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), [1790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposed_type, 2, 0, 0), [1792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__dot_without_leading_whitespace, 1, 0, 0), [1794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposed_value, 1, 0, 0), [1796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), [1798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), [1800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2, 0, 61), [1802] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposed_operator, 1, 0, 23), [1804] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__more_union_variants, 2, 0, 69), [1806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), [1808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), [1810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545), [1812] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat2, 1, 0, 47), [1814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), [1816] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_let_in_expr_repeat1, 2, 0, 86), [1818] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lower_type_name, 1, 0, 0), [1820] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_type, 3, 0, 14), [1822] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expr_repeat1, 2, 0, 74), [1824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), [1826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), [1828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), [1830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_pattern_repeat1, 2, 0, 10), [1832] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, 0, 44), [1834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), [1836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), [1838] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_as_clause, 2, 0, 33), [1840] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__record_inner_repeat1, 2, 0, 79), [1842] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_declaration_repeat1, 1, 0, 0), [1844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), [1846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), [1848] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_pattern_repeat1, 2, 0, 13), [1850] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_expr_repeat1, 2, 0, 82), SHIFT_REPEAT(829), [1853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(470), [1855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), [1857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expr_repeat1, 2, 0, 39), [1859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682), [1861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1053), [1863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), [1865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field, 3, 0, 77), [1867] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value_declaration, 3, 0, 24), [1869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposed_union_constructors, 3, 0, 0), [1871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), [1873] = {.entry = {.count = 1, .reusable = false}}, SHIFT(923), [1875] = {.entry = {.count = 1, .reusable = false}}, SHIFT(866), [1877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), [1879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), [1881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), [1883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), [1885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), [1887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), [1889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909), [1891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), [1893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), [1895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), [1897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), [1899] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_list, 5, 0, 0), [1901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), [1903] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_declaration, 3, 0, 18), [1905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), [1907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(985), [1909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575), [1911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), [1913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), [1915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), [1917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), [1919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), [1921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), [1923] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_declaration, 6, 0, 72), [1925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_infix_declaration, 6, 0, 73), [1927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), [1929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469), [1931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), [1933] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_list, 4, 0, 67), [1935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(887), [1937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), [1939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), [1941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), [1943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), [1945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1059), [1947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), [1949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), [1951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), [1953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), [1955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_clause, 3, 0, 19), [1957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), [1959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), [1961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), [1963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), [1965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), [1967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), [1969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), [1971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), [1973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), [1975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__glsl_begin, 1, 0, 0), [1977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), [1979] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), [1981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), [1983] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), [1985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), [1987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), [1989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), [1991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), [1993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), [1995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), [1997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), [1999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__then, 2, 0, 39), [2001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), [2003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), [2005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), [2007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), [2009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), [2011] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_base, 2, 0, 45), [2013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), [2015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_declaration, 5, 0, 50), [2017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exposing_list, 4, 0, 0), [2019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), [2021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), [2023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(565), [2025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), [2027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), [2029] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), [2031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), [2033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943), [2035] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__if, 2, 0, 39), [2037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), [2039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), [2041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(912), [2043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), [2045] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_port_annotation, 4, 0, 36), [2047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505), [2049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), [2051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), [2053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), [2055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(848), [2057] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_clause, 4, 0, 34), [2059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), [2061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), [2063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), [2065] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_declaration, 6, 0, 68), [2067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1006), [2069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907), [2071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), [2073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), [2075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), [2077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), [2079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), [2081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), [2083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), [2085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), [2087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), [2089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), [2091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), [2093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), [2095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), [2097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), [2099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1018), [2101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1019), [2103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), [2105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), [2107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1023), [2109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), [2111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1025), [2113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1026), [2115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), [2117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), [2119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1029), [2121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1030), [2123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1031), [2125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), [2127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), [2129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_declaration, 4, 0, 37), [2131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), [2133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), [2135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), [2137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668), [2139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), [2141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1017), [2143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), [2145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(849), [2147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_comment, 3, 0, 0), }; enum ts_external_scanner_symbol_identifiers { ts_external_token__virtual_end_decl = 0, ts_external_token__virtual_open_section = 1, ts_external_token__virtual_end_section = 2, ts_external_token_minus_without_trailing_whitespace = 3, ts_external_token_glsl_content = 4, ts_external_token__block_comment_content = 5, ts_external_token__string_content_multiline = 6, }; static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { [ts_external_token__virtual_end_decl] = sym__virtual_end_decl, [ts_external_token__virtual_open_section] = sym__virtual_open_section, [ts_external_token__virtual_end_section] = sym__virtual_end_section, [ts_external_token_minus_without_trailing_whitespace] = sym_minus_without_trailing_whitespace, [ts_external_token_glsl_content] = sym_glsl_content, [ts_external_token__block_comment_content] = sym__block_comment_content, [ts_external_token__string_content_multiline] = sym__string_content_multiline, }; static const bool ts_external_scanner_states[12][EXTERNAL_TOKEN_COUNT] = { [1] = { [ts_external_token__virtual_end_decl] = true, [ts_external_token__virtual_open_section] = true, [ts_external_token__virtual_end_section] = true, [ts_external_token_minus_without_trailing_whitespace] = true, [ts_external_token_glsl_content] = true, [ts_external_token__block_comment_content] = true, [ts_external_token__string_content_multiline] = true, }, [2] = { [ts_external_token_minus_without_trailing_whitespace] = true, }, [3] = { [ts_external_token__virtual_end_decl] = true, [ts_external_token__virtual_end_section] = true, [ts_external_token_minus_without_trailing_whitespace] = true, }, [4] = { [ts_external_token__virtual_end_decl] = true, [ts_external_token_minus_without_trailing_whitespace] = true, }, [5] = { [ts_external_token__virtual_end_decl] = true, }, [6] = { [ts_external_token__virtual_end_decl] = true, [ts_external_token__virtual_end_section] = true, }, [7] = { [ts_external_token__string_content_multiline] = true, }, [8] = { [ts_external_token__virtual_end_section] = true, }, [9] = { [ts_external_token_glsl_content] = true, }, [10] = { [ts_external_token__virtual_open_section] = true, }, [11] = { [ts_external_token__block_comment_content] = true, }, }; #ifdef __cplusplus extern "C" { #endif void *tree_sitter_elm_external_scanner_create(void); void tree_sitter_elm_external_scanner_destroy(void *); bool tree_sitter_elm_external_scanner_scan(void *, TSLexer *, const bool *); unsigned tree_sitter_elm_external_scanner_serialize(void *, char *); void tree_sitter_elm_external_scanner_deserialize(void *, const char *, unsigned); #ifdef TREE_SITTER_HIDE_SYMBOLS #define TS_PUBLIC #elif defined(_WIN32) #define TS_PUBLIC __declspec(dllexport) #else #define TS_PUBLIC __attribute__((visibility("default"))) #endif TS_PUBLIC const TSLanguage *tree_sitter_elm(void) { static const TSLanguage language = { .abi_version = LANGUAGE_VERSION, .symbol_count = SYMBOL_COUNT, .alias_count = ALIAS_COUNT, .token_count = TOKEN_COUNT, .external_token_count = EXTERNAL_TOKEN_COUNT, .state_count = STATE_COUNT, .large_state_count = LARGE_STATE_COUNT, .production_id_count = PRODUCTION_ID_COUNT, .supertype_count = SUPERTYPE_COUNT, .field_count = FIELD_COUNT, .max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH, .parse_table = &ts_parse_table[0][0], .small_parse_table = ts_small_parse_table, .small_parse_table_map = ts_small_parse_table_map, .parse_actions = ts_parse_actions, .symbol_names = ts_symbol_names, .field_names = ts_field_names, .field_map_slices = ts_field_map_slices, .field_map_entries = ts_field_map_entries, .symbol_metadata = ts_symbol_metadata, .public_symbol_map = ts_symbol_map, .alias_map = ts_non_terminal_alias_map, .alias_sequences = &ts_alias_sequences[0][0], .lex_modes = (const void*)ts_lex_modes, .lex_fn = ts_lex, .keyword_lex_fn = ts_lex_keywords, .keyword_capture_token = sym_lower_case_identifier, .external_scanner = { &ts_external_scanner_states[0][0], ts_external_scanner_symbol_map, tree_sitter_elm_external_scanner_create, tree_sitter_elm_external_scanner_destroy, tree_sitter_elm_external_scanner_scan, tree_sitter_elm_external_scanner_serialize, tree_sitter_elm_external_scanner_deserialize, }, .primary_state_ids = ts_primary_state_ids, .name = "elm", .max_reserved_word_set_size = 0, .metadata = { .major_version = 5, .minor_version = 9, .patch_version = 0, }, }; return &language; } #ifdef __cplusplus } #endif