#include "tree_sitter/parser.h" #if defined(__GNUC__) || defined(__clang__) #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wmissing-field-initializers" #endif #ifdef _MSC_VER #pragma optimize("", off) #elif defined(__clang__) #pragma clang optimize off #elif defined(__GNUC__) #pragma GCC optimize ("O0") #endif #define LANGUAGE_VERSION 14 #define STATE_COUNT 357 #define LARGE_STATE_COUNT 3 #define SYMBOL_COUNT 163 #define ALIAS_COUNT 4 #define TOKEN_COUNT 84 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 21 #define MAX_ALIAS_SEQUENCE_LENGTH 8 #define PRODUCTION_ID_COUNT 38 enum { sym_identifier = 1, anon_sym_module = 2, anon_sym_COLON_COLON = 3, anon_sym_LBRACE = 4, anon_sym_RBRACE = 5, anon_sym_SEMI = 6, anon_sym_POUND = 7, anon_sym_LBRACK = 8, anon_sym_RBRACK = 9, anon_sym_EQ = 10, anon_sym_fun = 11, anon_sym_COLON = 12, anon_sym_public = 13, anon_sym_LT = 14, anon_sym_COMMA = 15, anon_sym_GT = 16, anon_sym_LPAREN = 17, anon_sym__ = 18, anon_sym_RPAREN = 19, anon_sym_use = 20, anon_sym_u8 = 21, anon_sym_u64 = 22, anon_sym_u128 = 23, anon_sym_bool = 24, anon_sym_address = 25, anon_sym_as = 26, anon_sym_LT2 = 27, anon_sym_AMP = 28, sym_mutable_specifier = 29, anon_sym_BANG = 30, anon_sym_AMP_AMP = 31, anon_sym_PIPE_PIPE = 32, anon_sym_PIPE = 33, anon_sym_CARET = 34, anon_sym_EQ_EQ = 35, anon_sym_BANG_EQ = 36, anon_sym_LT_EQ = 37, anon_sym_GT_EQ = 38, anon_sym_LT_LT = 39, anon_sym_GT_GT = 40, anon_sym_PLUS = 41, anon_sym_DASH = 42, anon_sym_STAR = 43, anon_sym_SLASH = 44, anon_sym_PERCENT = 45, anon_sym_return = 46, anon_sym_if = 47, anon_sym_let = 48, anon_sym_else = 49, anon_sym_while = 50, anon_sym_loop = 51, anon_sym_const = 52, anon_sym_break = 53, anon_sym_continue = 54, anon_sym_DOT = 55, anon_sym_DOLLAR = 56, aux_sym__non_special_token_token1 = 57, anon_sym_SQUOTE = 58, anon_sym_async = 59, anon_sym_await = 60, anon_sym_default = 61, anon_sym_enum = 62, anon_sym_fn = 63, anon_sym_for = 64, anon_sym_impl = 65, anon_sym_match = 66, anon_sym_mod = 67, anon_sym_pub = 68, anon_sym_static = 69, anon_sym_struct = 70, anon_sym_trait = 71, anon_sym_type = 72, anon_sym_union = 73, anon_sym_unsafe = 74, anon_sym_where = 75, sym_integer_literal = 76, sym_float_literal = 77, anon_sym_true = 78, anon_sym_false = 79, anon_sym_0x = 80, anon_sym_0X = 81, aux_sym_hex_address_token1 = 82, sym_comment = 83, sym_module = 84, sym_module_body = 85, sym__statement = 86, sym_expression_statement = 87, sym__declaration_statement = 88, sym_attribute_item = 89, sym_attribute = 90, sym_function_item = 91, sym_visibility_modifier = 92, sym_type_parameters = 93, sym_parameters = 94, sym_parameter = 95, sym_use_declaration = 96, sym__use_clause = 97, sym__type = 98, sym_bracketed_type = 99, sym_qualified_type = 100, sym_unit_type = 101, sym_generic_function = 102, sym_generic_type = 103, sym_type_arguments = 104, sym_reference_type = 105, sym__expression_except_range = 106, sym__expression = 107, sym__expression_ending_with_block = 108, sym_scoped_type_identifier = 109, sym_unary_expression = 110, sym_reference_expression = 111, sym_binary_expression = 112, sym_assignment_expression = 113, sym_type_cast_expression = 114, sym_return_expression = 115, sym_call_expression = 116, sym_arguments = 117, sym_parenthesized_expression = 118, sym_tuple_expression = 119, sym_unit_expression = 120, sym_if_expression = 121, sym_let_condition = 122, sym__condition = 123, sym_else_clause = 124, sym_while_expression = 125, sym_loop_expression = 126, sym_const_block = 127, sym_break_expression = 128, sym_continue_expression = 129, sym_field_expression = 130, sym_block = 131, sym__pattern = 132, sym_tuple_pattern = 133, sym_struct_pattern = 134, sym_field_pattern = 135, sym_mut_pattern = 136, sym_reference_pattern = 137, sym_or_pattern = 138, sym_delim_token_tree = 139, sym__delim_tokens = 140, sym__non_delim_token = 141, sym_scoped_identifier = 142, sym__non_special_token = 143, sym__literal = 144, sym__literal_pattern = 145, sym_negative_literal = 146, sym_boolean_literal = 147, sym_hex_address = 148, sym__path = 149, sym__type_identifier = 150, sym__field_identifier = 151, aux_sym_module_body_repeat1 = 152, aux_sym_type_parameters_repeat1 = 153, aux_sym_parameters_repeat1 = 154, aux_sym_type_arguments_repeat1 = 155, aux_sym_arguments_repeat1 = 156, aux_sym_tuple_expression_repeat1 = 157, aux_sym_tuple_expression_repeat2 = 158, aux_sym_block_repeat1 = 159, aux_sym_tuple_pattern_repeat1 = 160, aux_sym_struct_pattern_repeat1 = 161, aux_sym_delim_token_tree_repeat1 = 162, alias_sym_field_identifier = 163, alias_sym_primitive_type = 164, alias_sym_shorthand_field_identifier = 165, alias_sym_type_identifier = 166, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [sym_identifier] = "identifier", [anon_sym_module] = "module", [anon_sym_COLON_COLON] = "::", [anon_sym_LBRACE] = "{", [anon_sym_RBRACE] = "}", [anon_sym_SEMI] = ";", [anon_sym_POUND] = "#", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", [anon_sym_EQ] = "=", [anon_sym_fun] = "fun", [anon_sym_COLON] = ":", [anon_sym_public] = "public", [anon_sym_LT] = "<", [anon_sym_COMMA] = ",", [anon_sym_GT] = ">", [anon_sym_LPAREN] = "(", [anon_sym__] = "_", [anon_sym_RPAREN] = ")", [anon_sym_use] = "use", [anon_sym_u8] = "identifier", [anon_sym_u64] = "identifier", [anon_sym_u128] = "identifier", [anon_sym_bool] = "identifier", [anon_sym_address] = "identifier", [anon_sym_as] = "as", [anon_sym_LT2] = "<", [anon_sym_AMP] = "&", [sym_mutable_specifier] = "mutable_specifier", [anon_sym_BANG] = "!", [anon_sym_AMP_AMP] = "&&", [anon_sym_PIPE_PIPE] = "||", [anon_sym_PIPE] = "|", [anon_sym_CARET] = "^", [anon_sym_EQ_EQ] = "==", [anon_sym_BANG_EQ] = "!=", [anon_sym_LT_EQ] = "<=", [anon_sym_GT_EQ] = ">=", [anon_sym_LT_LT] = "<<", [anon_sym_GT_GT] = ">>", [anon_sym_PLUS] = "+", [anon_sym_DASH] = "-", [anon_sym_STAR] = "*", [anon_sym_SLASH] = "/", [anon_sym_PERCENT] = "%", [anon_sym_return] = "return", [anon_sym_if] = "if", [anon_sym_let] = "let", [anon_sym_else] = "else", [anon_sym_while] = "while", [anon_sym_loop] = "loop", [anon_sym_const] = "const", [anon_sym_break] = "break", [anon_sym_continue] = "continue", [anon_sym_DOT] = ".", [anon_sym_DOLLAR] = "$", [aux_sym__non_special_token_token1] = "_non_special_token_token1", [anon_sym_SQUOTE] = "'", [anon_sym_async] = "async", [anon_sym_await] = "await", [anon_sym_default] = "default", [anon_sym_enum] = "enum", [anon_sym_fn] = "fn", [anon_sym_for] = "for", [anon_sym_impl] = "impl", [anon_sym_match] = "match", [anon_sym_mod] = "mod", [anon_sym_pub] = "pub", [anon_sym_static] = "static", [anon_sym_struct] = "struct", [anon_sym_trait] = "trait", [anon_sym_type] = "type", [anon_sym_union] = "union", [anon_sym_unsafe] = "unsafe", [anon_sym_where] = "where", [sym_integer_literal] = "integer_literal", [sym_float_literal] = "float_literal", [anon_sym_true] = "true", [anon_sym_false] = "false", [anon_sym_0x] = "0x", [anon_sym_0X] = "0X", [aux_sym_hex_address_token1] = "hex_address_token1", [sym_comment] = "comment", [sym_module] = "module", [sym_module_body] = "module_body", [sym__statement] = "_statement", [sym_expression_statement] = "expression_statement", [sym__declaration_statement] = "_declaration_statement", [sym_attribute_item] = "attribute_item", [sym_attribute] = "attribute", [sym_function_item] = "function_item", [sym_visibility_modifier] = "visibility_modifier", [sym_type_parameters] = "type_parameters", [sym_parameters] = "parameters", [sym_parameter] = "parameter", [sym_use_declaration] = "use_declaration", [sym__use_clause] = "_use_clause", [sym__type] = "_type", [sym_bracketed_type] = "bracketed_type", [sym_qualified_type] = "qualified_type", [sym_unit_type] = "unit_type", [sym_generic_function] = "generic_function", [sym_generic_type] = "generic_type", [sym_type_arguments] = "type_arguments", [sym_reference_type] = "reference_type", [sym__expression_except_range] = "_expression_except_range", [sym__expression] = "_expression", [sym__expression_ending_with_block] = "_expression_ending_with_block", [sym_scoped_type_identifier] = "scoped_type_identifier", [sym_unary_expression] = "unary_expression", [sym_reference_expression] = "reference_expression", [sym_binary_expression] = "binary_expression", [sym_assignment_expression] = "assignment_expression", [sym_type_cast_expression] = "type_cast_expression", [sym_return_expression] = "return_expression", [sym_call_expression] = "call_expression", [sym_arguments] = "arguments", [sym_parenthesized_expression] = "parenthesized_expression", [sym_tuple_expression] = "tuple_expression", [sym_unit_expression] = "unit_expression", [sym_if_expression] = "if_expression", [sym_let_condition] = "let_condition", [sym__condition] = "_condition", [sym_else_clause] = "else_clause", [sym_while_expression] = "while_expression", [sym_loop_expression] = "loop_expression", [sym_const_block] = "const_block", [sym_break_expression] = "break_expression", [sym_continue_expression] = "continue_expression", [sym_field_expression] = "field_expression", [sym_block] = "block", [sym__pattern] = "_pattern", [sym_tuple_pattern] = "tuple_pattern", [sym_struct_pattern] = "struct_pattern", [sym_field_pattern] = "field_pattern", [sym_mut_pattern] = "mut_pattern", [sym_reference_pattern] = "reference_pattern", [sym_or_pattern] = "or_pattern", [sym_delim_token_tree] = "token_tree", [sym__delim_tokens] = "_delim_tokens", [sym__non_delim_token] = "_non_delim_token", [sym_scoped_identifier] = "scoped_identifier", [sym__non_special_token] = "_non_special_token", [sym__literal] = "_literal", [sym__literal_pattern] = "_literal_pattern", [sym_negative_literal] = "negative_literal", [sym_boolean_literal] = "boolean_literal", [sym_hex_address] = "hex_address", [sym__path] = "_path", [sym__type_identifier] = "_type_identifier", [sym__field_identifier] = "_field_identifier", [aux_sym_module_body_repeat1] = "module_body_repeat1", [aux_sym_type_parameters_repeat1] = "type_parameters_repeat1", [aux_sym_parameters_repeat1] = "parameters_repeat1", [aux_sym_type_arguments_repeat1] = "type_arguments_repeat1", [aux_sym_arguments_repeat1] = "arguments_repeat1", [aux_sym_tuple_expression_repeat1] = "tuple_expression_repeat1", [aux_sym_tuple_expression_repeat2] = "tuple_expression_repeat2", [aux_sym_block_repeat1] = "block_repeat1", [aux_sym_tuple_pattern_repeat1] = "tuple_pattern_repeat1", [aux_sym_struct_pattern_repeat1] = "struct_pattern_repeat1", [aux_sym_delim_token_tree_repeat1] = "delim_token_tree_repeat1", [alias_sym_field_identifier] = "field_identifier", [alias_sym_primitive_type] = "primitive_type", [alias_sym_shorthand_field_identifier] = "shorthand_field_identifier", [alias_sym_type_identifier] = "type_identifier", }; static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, [sym_identifier] = sym_identifier, [anon_sym_module] = anon_sym_module, [anon_sym_COLON_COLON] = anon_sym_COLON_COLON, [anon_sym_LBRACE] = anon_sym_LBRACE, [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_SEMI] = anon_sym_SEMI, [anon_sym_POUND] = anon_sym_POUND, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, [anon_sym_EQ] = anon_sym_EQ, [anon_sym_fun] = anon_sym_fun, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_public] = anon_sym_public, [anon_sym_LT] = anon_sym_LT, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_GT] = anon_sym_GT, [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym__] = anon_sym__, [anon_sym_RPAREN] = anon_sym_RPAREN, [anon_sym_use] = anon_sym_use, [anon_sym_u8] = sym_identifier, [anon_sym_u64] = sym_identifier, [anon_sym_u128] = sym_identifier, [anon_sym_bool] = sym_identifier, [anon_sym_address] = sym_identifier, [anon_sym_as] = anon_sym_as, [anon_sym_LT2] = anon_sym_LT, [anon_sym_AMP] = anon_sym_AMP, [sym_mutable_specifier] = sym_mutable_specifier, [anon_sym_BANG] = anon_sym_BANG, [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, [anon_sym_PIPE] = anon_sym_PIPE, [anon_sym_CARET] = anon_sym_CARET, [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, [anon_sym_BANG_EQ] = anon_sym_BANG_EQ, [anon_sym_LT_EQ] = anon_sym_LT_EQ, [anon_sym_GT_EQ] = anon_sym_GT_EQ, [anon_sym_LT_LT] = anon_sym_LT_LT, [anon_sym_GT_GT] = anon_sym_GT_GT, [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_PERCENT] = anon_sym_PERCENT, [anon_sym_return] = anon_sym_return, [anon_sym_if] = anon_sym_if, [anon_sym_let] = anon_sym_let, [anon_sym_else] = anon_sym_else, [anon_sym_while] = anon_sym_while, [anon_sym_loop] = anon_sym_loop, [anon_sym_const] = anon_sym_const, [anon_sym_break] = anon_sym_break, [anon_sym_continue] = anon_sym_continue, [anon_sym_DOT] = anon_sym_DOT, [anon_sym_DOLLAR] = anon_sym_DOLLAR, [aux_sym__non_special_token_token1] = aux_sym__non_special_token_token1, [anon_sym_SQUOTE] = anon_sym_SQUOTE, [anon_sym_async] = anon_sym_async, [anon_sym_await] = anon_sym_await, [anon_sym_default] = anon_sym_default, [anon_sym_enum] = anon_sym_enum, [anon_sym_fn] = anon_sym_fn, [anon_sym_for] = anon_sym_for, [anon_sym_impl] = anon_sym_impl, [anon_sym_match] = anon_sym_match, [anon_sym_mod] = anon_sym_mod, [anon_sym_pub] = anon_sym_pub, [anon_sym_static] = anon_sym_static, [anon_sym_struct] = anon_sym_struct, [anon_sym_trait] = anon_sym_trait, [anon_sym_type] = anon_sym_type, [anon_sym_union] = anon_sym_union, [anon_sym_unsafe] = anon_sym_unsafe, [anon_sym_where] = anon_sym_where, [sym_integer_literal] = sym_integer_literal, [sym_float_literal] = sym_float_literal, [anon_sym_true] = anon_sym_true, [anon_sym_false] = anon_sym_false, [anon_sym_0x] = anon_sym_0x, [anon_sym_0X] = anon_sym_0X, [aux_sym_hex_address_token1] = aux_sym_hex_address_token1, [sym_comment] = sym_comment, [sym_module] = sym_module, [sym_module_body] = sym_module_body, [sym__statement] = sym__statement, [sym_expression_statement] = sym_expression_statement, [sym__declaration_statement] = sym__declaration_statement, [sym_attribute_item] = sym_attribute_item, [sym_attribute] = sym_attribute, [sym_function_item] = sym_function_item, [sym_visibility_modifier] = sym_visibility_modifier, [sym_type_parameters] = sym_type_parameters, [sym_parameters] = sym_parameters, [sym_parameter] = sym_parameter, [sym_use_declaration] = sym_use_declaration, [sym__use_clause] = sym__use_clause, [sym__type] = sym__type, [sym_bracketed_type] = sym_bracketed_type, [sym_qualified_type] = sym_qualified_type, [sym_unit_type] = sym_unit_type, [sym_generic_function] = sym_generic_function, [sym_generic_type] = sym_generic_type, [sym_type_arguments] = sym_type_arguments, [sym_reference_type] = sym_reference_type, [sym__expression_except_range] = sym__expression_except_range, [sym__expression] = sym__expression, [sym__expression_ending_with_block] = sym__expression_ending_with_block, [sym_scoped_type_identifier] = sym_scoped_type_identifier, [sym_unary_expression] = sym_unary_expression, [sym_reference_expression] = sym_reference_expression, [sym_binary_expression] = sym_binary_expression, [sym_assignment_expression] = sym_assignment_expression, [sym_type_cast_expression] = sym_type_cast_expression, [sym_return_expression] = sym_return_expression, [sym_call_expression] = sym_call_expression, [sym_arguments] = sym_arguments, [sym_parenthesized_expression] = sym_parenthesized_expression, [sym_tuple_expression] = sym_tuple_expression, [sym_unit_expression] = sym_unit_expression, [sym_if_expression] = sym_if_expression, [sym_let_condition] = sym_let_condition, [sym__condition] = sym__condition, [sym_else_clause] = sym_else_clause, [sym_while_expression] = sym_while_expression, [sym_loop_expression] = sym_loop_expression, [sym_const_block] = sym_const_block, [sym_break_expression] = sym_break_expression, [sym_continue_expression] = sym_continue_expression, [sym_field_expression] = sym_field_expression, [sym_block] = sym_block, [sym__pattern] = sym__pattern, [sym_tuple_pattern] = sym_tuple_pattern, [sym_struct_pattern] = sym_struct_pattern, [sym_field_pattern] = sym_field_pattern, [sym_mut_pattern] = sym_mut_pattern, [sym_reference_pattern] = sym_reference_pattern, [sym_or_pattern] = sym_or_pattern, [sym_delim_token_tree] = sym_delim_token_tree, [sym__delim_tokens] = sym__delim_tokens, [sym__non_delim_token] = sym__non_delim_token, [sym_scoped_identifier] = sym_scoped_identifier, [sym__non_special_token] = sym__non_special_token, [sym__literal] = sym__literal, [sym__literal_pattern] = sym__literal_pattern, [sym_negative_literal] = sym_negative_literal, [sym_boolean_literal] = sym_boolean_literal, [sym_hex_address] = sym_hex_address, [sym__path] = sym__path, [sym__type_identifier] = sym__type_identifier, [sym__field_identifier] = sym__field_identifier, [aux_sym_module_body_repeat1] = aux_sym_module_body_repeat1, [aux_sym_type_parameters_repeat1] = aux_sym_type_parameters_repeat1, [aux_sym_parameters_repeat1] = aux_sym_parameters_repeat1, [aux_sym_type_arguments_repeat1] = aux_sym_type_arguments_repeat1, [aux_sym_arguments_repeat1] = aux_sym_arguments_repeat1, [aux_sym_tuple_expression_repeat1] = aux_sym_tuple_expression_repeat1, [aux_sym_tuple_expression_repeat2] = aux_sym_tuple_expression_repeat2, [aux_sym_block_repeat1] = aux_sym_block_repeat1, [aux_sym_tuple_pattern_repeat1] = aux_sym_tuple_pattern_repeat1, [aux_sym_struct_pattern_repeat1] = aux_sym_struct_pattern_repeat1, [aux_sym_delim_token_tree_repeat1] = aux_sym_delim_token_tree_repeat1, [alias_sym_field_identifier] = alias_sym_field_identifier, [alias_sym_primitive_type] = alias_sym_primitive_type, [alias_sym_shorthand_field_identifier] = alias_sym_shorthand_field_identifier, [alias_sym_type_identifier] = alias_sym_type_identifier, }; static const TSSymbolMetadata ts_symbol_metadata[] = { [ts_builtin_sym_end] = { .visible = false, .named = true, }, [sym_identifier] = { .visible = true, .named = true, }, [anon_sym_module] = { .visible = true, .named = false, }, [anon_sym_COLON_COLON] = { .visible = true, .named = false, }, [anon_sym_LBRACE] = { .visible = true, .named = false, }, [anon_sym_RBRACE] = { .visible = true, .named = false, }, [anon_sym_SEMI] = { .visible = true, .named = false, }, [anon_sym_POUND] = { .visible = true, .named = false, }, [anon_sym_LBRACK] = { .visible = true, .named = false, }, [anon_sym_RBRACK] = { .visible = true, .named = false, }, [anon_sym_EQ] = { .visible = true, .named = false, }, [anon_sym_fun] = { .visible = true, .named = false, }, [anon_sym_COLON] = { .visible = true, .named = false, }, [anon_sym_public] = { .visible = true, .named = false, }, [anon_sym_LT] = { .visible = true, .named = false, }, [anon_sym_COMMA] = { .visible = true, .named = false, }, [anon_sym_GT] = { .visible = true, .named = false, }, [anon_sym_LPAREN] = { .visible = true, .named = false, }, [anon_sym__] = { .visible = true, .named = false, }, [anon_sym_RPAREN] = { .visible = true, .named = false, }, [anon_sym_use] = { .visible = true, .named = false, }, [anon_sym_u8] = { .visible = true, .named = true, }, [anon_sym_u64] = { .visible = true, .named = true, }, [anon_sym_u128] = { .visible = true, .named = true, }, [anon_sym_bool] = { .visible = true, .named = true, }, [anon_sym_address] = { .visible = true, .named = true, }, [anon_sym_as] = { .visible = true, .named = false, }, [anon_sym_LT2] = { .visible = true, .named = false, }, [anon_sym_AMP] = { .visible = true, .named = false, }, [sym_mutable_specifier] = { .visible = true, .named = true, }, [anon_sym_BANG] = { .visible = true, .named = false, }, [anon_sym_AMP_AMP] = { .visible = true, .named = false, }, [anon_sym_PIPE_PIPE] = { .visible = true, .named = false, }, [anon_sym_PIPE] = { .visible = true, .named = false, }, [anon_sym_CARET] = { .visible = true, .named = false, }, [anon_sym_EQ_EQ] = { .visible = true, .named = false, }, [anon_sym_BANG_EQ] = { .visible = true, .named = false, }, [anon_sym_LT_EQ] = { .visible = true, .named = false, }, [anon_sym_GT_EQ] = { .visible = true, .named = false, }, [anon_sym_LT_LT] = { .visible = true, .named = false, }, [anon_sym_GT_GT] = { .visible = true, .named = false, }, [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_PERCENT] = { .visible = true, .named = false, }, [anon_sym_return] = { .visible = true, .named = false, }, [anon_sym_if] = { .visible = true, .named = false, }, [anon_sym_let] = { .visible = true, .named = false, }, [anon_sym_else] = { .visible = true, .named = false, }, [anon_sym_while] = { .visible = true, .named = false, }, [anon_sym_loop] = { .visible = true, .named = false, }, [anon_sym_const] = { .visible = true, .named = false, }, [anon_sym_break] = { .visible = true, .named = false, }, [anon_sym_continue] = { .visible = true, .named = false, }, [anon_sym_DOT] = { .visible = true, .named = false, }, [anon_sym_DOLLAR] = { .visible = true, .named = false, }, [aux_sym__non_special_token_token1] = { .visible = false, .named = false, }, [anon_sym_SQUOTE] = { .visible = true, .named = false, }, [anon_sym_async] = { .visible = true, .named = false, }, [anon_sym_await] = { .visible = true, .named = false, }, [anon_sym_default] = { .visible = true, .named = false, }, [anon_sym_enum] = { .visible = true, .named = false, }, [anon_sym_fn] = { .visible = true, .named = false, }, [anon_sym_for] = { .visible = true, .named = false, }, [anon_sym_impl] = { .visible = true, .named = false, }, [anon_sym_match] = { .visible = true, .named = false, }, [anon_sym_mod] = { .visible = true, .named = false, }, [anon_sym_pub] = { .visible = true, .named = false, }, [anon_sym_static] = { .visible = true, .named = false, }, [anon_sym_struct] = { .visible = true, .named = false, }, [anon_sym_trait] = { .visible = true, .named = false, }, [anon_sym_type] = { .visible = true, .named = false, }, [anon_sym_union] = { .visible = true, .named = false, }, [anon_sym_unsafe] = { .visible = true, .named = false, }, [anon_sym_where] = { .visible = true, .named = false, }, [sym_integer_literal] = { .visible = true, .named = true, }, [sym_float_literal] = { .visible = true, .named = true, }, [anon_sym_true] = { .visible = true, .named = false, }, [anon_sym_false] = { .visible = true, .named = false, }, [anon_sym_0x] = { .visible = true, .named = false, }, [anon_sym_0X] = { .visible = true, .named = false, }, [aux_sym_hex_address_token1] = { .visible = false, .named = false, }, [sym_comment] = { .visible = true, .named = true, }, [sym_module] = { .visible = true, .named = true, }, [sym_module_body] = { .visible = true, .named = true, }, [sym__statement] = { .visible = false, .named = true, }, [sym_expression_statement] = { .visible = true, .named = true, }, [sym__declaration_statement] = { .visible = false, .named = true, }, [sym_attribute_item] = { .visible = true, .named = true, }, [sym_attribute] = { .visible = true, .named = true, }, [sym_function_item] = { .visible = true, .named = true, }, [sym_visibility_modifier] = { .visible = true, .named = true, }, [sym_type_parameters] = { .visible = true, .named = true, }, [sym_parameters] = { .visible = true, .named = true, }, [sym_parameter] = { .visible = true, .named = true, }, [sym_use_declaration] = { .visible = true, .named = true, }, [sym__use_clause] = { .visible = false, .named = true, }, [sym__type] = { .visible = false, .named = true, }, [sym_bracketed_type] = { .visible = true, .named = true, }, [sym_qualified_type] = { .visible = true, .named = true, }, [sym_unit_type] = { .visible = true, .named = true, }, [sym_generic_function] = { .visible = true, .named = true, }, [sym_generic_type] = { .visible = true, .named = true, }, [sym_type_arguments] = { .visible = true, .named = true, }, [sym_reference_type] = { .visible = true, .named = true, }, [sym__expression_except_range] = { .visible = false, .named = true, }, [sym__expression] = { .visible = false, .named = true, }, [sym__expression_ending_with_block] = { .visible = false, .named = true, }, [sym_scoped_type_identifier] = { .visible = true, .named = true, }, [sym_unary_expression] = { .visible = true, .named = true, }, [sym_reference_expression] = { .visible = true, .named = true, }, [sym_binary_expression] = { .visible = true, .named = true, }, [sym_assignment_expression] = { .visible = true, .named = true, }, [sym_type_cast_expression] = { .visible = true, .named = true, }, [sym_return_expression] = { .visible = true, .named = true, }, [sym_call_expression] = { .visible = true, .named = true, }, [sym_arguments] = { .visible = true, .named = true, }, [sym_parenthesized_expression] = { .visible = true, .named = true, }, [sym_tuple_expression] = { .visible = true, .named = true, }, [sym_unit_expression] = { .visible = true, .named = true, }, [sym_if_expression] = { .visible = true, .named = true, }, [sym_let_condition] = { .visible = true, .named = true, }, [sym__condition] = { .visible = false, .named = true, }, [sym_else_clause] = { .visible = true, .named = true, }, [sym_while_expression] = { .visible = true, .named = true, }, [sym_loop_expression] = { .visible = true, .named = true, }, [sym_const_block] = { .visible = true, .named = true, }, [sym_break_expression] = { .visible = true, .named = true, }, [sym_continue_expression] = { .visible = true, .named = true, }, [sym_field_expression] = { .visible = true, .named = true, }, [sym_block] = { .visible = true, .named = true, }, [sym__pattern] = { .visible = false, .named = true, }, [sym_tuple_pattern] = { .visible = true, .named = true, }, [sym_struct_pattern] = { .visible = true, .named = true, }, [sym_field_pattern] = { .visible = true, .named = true, }, [sym_mut_pattern] = { .visible = true, .named = true, }, [sym_reference_pattern] = { .visible = true, .named = true, }, [sym_or_pattern] = { .visible = true, .named = true, }, [sym_delim_token_tree] = { .visible = true, .named = true, }, [sym__delim_tokens] = { .visible = false, .named = true, }, [sym__non_delim_token] = { .visible = false, .named = true, }, [sym_scoped_identifier] = { .visible = true, .named = true, }, [sym__non_special_token] = { .visible = false, .named = true, }, [sym__literal] = { .visible = false, .named = true, }, [sym__literal_pattern] = { .visible = false, .named = true, }, [sym_negative_literal] = { .visible = true, .named = true, }, [sym_boolean_literal] = { .visible = true, .named = true, }, [sym_hex_address] = { .visible = true, .named = true, }, [sym__path] = { .visible = false, .named = true, }, [sym__type_identifier] = { .visible = false, .named = true, }, [sym__field_identifier] = { .visible = false, .named = true, }, [aux_sym_module_body_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_parameters_repeat1] = { .visible = false, .named = false, }, [aux_sym_parameters_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_arguments_repeat1] = { .visible = false, .named = false, }, [aux_sym_arguments_repeat1] = { .visible = false, .named = false, }, [aux_sym_tuple_expression_repeat1] = { .visible = false, .named = false, }, [aux_sym_tuple_expression_repeat2] = { .visible = false, .named = false, }, [aux_sym_block_repeat1] = { .visible = false, .named = false, }, [aux_sym_tuple_pattern_repeat1] = { .visible = false, .named = false, }, [aux_sym_struct_pattern_repeat1] = { .visible = false, .named = false, }, [aux_sym_delim_token_tree_repeat1] = { .visible = false, .named = false, }, [alias_sym_field_identifier] = { .visible = true, .named = true, }, [alias_sym_primitive_type] = { .visible = true, .named = true, }, [alias_sym_shorthand_field_identifier] = { .visible = true, .named = true, }, [alias_sym_type_identifier] = { .visible = true, .named = true, }, }; enum { field_alias = 1, field_alternative = 2, field_argument = 3, field_arguments = 4, field_body = 5, field_condition = 6, field_consequence = 7, field_field = 8, field_function = 9, field_left = 10, field_name = 11, field_operator = 12, field_parameters = 13, field_path = 14, field_pattern = 15, field_return_type = 16, field_right = 17, field_type = 18, field_type_arguments = 19, field_type_parameters = 20, field_value = 21, }; static const char * const ts_field_names[] = { [0] = NULL, [field_alias] = "alias", [field_alternative] = "alternative", [field_argument] = "argument", [field_arguments] = "arguments", [field_body] = "body", [field_condition] = "condition", [field_consequence] = "consequence", [field_field] = "field", [field_function] = "function", [field_left] = "left", [field_name] = "name", [field_operator] = "operator", [field_parameters] = "parameters", [field_path] = "path", [field_pattern] = "pattern", [field_return_type] = "return_type", [field_right] = "right", [field_type] = "type", [field_type_arguments] = "type_arguments", [field_type_parameters] = "type_parameters", [field_value] = "value", }; static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [1] = {.index = 0, .length = 1}, [4] = {.index = 1, .length = 1}, [5] = {.index = 2, .length = 3}, [6] = {.index = 5, .length = 1}, [7] = {.index = 6, .length = 2}, [8] = {.index = 8, .length = 4}, [9] = {.index = 12, .length = 2}, [10] = {.index = 14, .length = 3}, [11] = {.index = 17, .length = 1}, [12] = {.index = 18, .length = 1}, [13] = {.index = 19, .length = 1}, [14] = {.index = 20, .length = 2}, [15] = {.index = 22, .length = 4}, [16] = {.index = 26, .length = 4}, [17] = {.index = 30, .length = 5}, [18] = {.index = 35, .length = 1}, [19] = {.index = 36, .length = 2}, [20] = {.index = 38, .length = 2}, [21] = {.index = 40, .length = 3}, [22] = {.index = 43, .length = 2}, [23] = {.index = 45, .length = 2}, [25] = {.index = 47, .length = 4}, [26] = {.index = 51, .length = 5}, [27] = {.index = 56, .length = 1}, [28] = {.index = 57, .length = 2}, [29] = {.index = 59, .length = 2}, [30] = {.index = 61, .length = 2}, [31] = {.index = 63, .length = 1}, [32] = {.index = 64, .length = 1}, [33] = {.index = 65, .length = 2}, [34] = {.index = 67, .length = 3}, [35] = {.index = 0, .length = 1}, [36] = {.index = 70, .length = 2}, [37] = {.index = 72, .length = 2}, }; static const TSFieldMapEntry ts_field_map_entries[] = { [0] = {field_name, 1}, [1] = {field_argument, 1}, [2] = {field_body, 3}, {field_name, 1}, {field_parameters, 2}, [5] = {field_type, 1}, [6] = {field_name, 2}, {field_path, 0}, [8] = {field_body, 4}, {field_name, 1}, {field_parameters, 3}, {field_type_parameters, 2}, [12] = {field_alias, 2}, {field_type, 0}, [14] = {field_body, 4}, {field_name, 2}, {field_parameters, 3}, [17] = {field_type, 2}, [18] = {field_value, 1}, [19] = {field_body, 1}, [20] = {field_arguments, 1}, {field_function, 0}, [22] = {field_body, 5}, {field_name, 1}, {field_parameters, 2}, {field_return_type, 4}, [26] = {field_body, 5}, {field_name, 2}, {field_parameters, 4}, {field_type_parameters, 3}, [30] = {field_body, 6}, {field_name, 1}, {field_parameters, 3}, {field_return_type, 5}, {field_type_parameters, 2}, [35] = {field_value, 2}, [36] = {field_function, 0}, {field_type_arguments, 2}, [38] = {field_left, 0}, {field_right, 2}, [40] = {field_left, 0}, {field_operator, 1}, {field_right, 2}, [43] = {field_type, 2}, {field_value, 0}, [45] = {field_field, 2}, {field_value, 0}, [47] = {field_body, 6}, {field_name, 2}, {field_parameters, 3}, {field_return_type, 5}, [51] = {field_body, 7}, {field_name, 2}, {field_parameters, 4}, {field_return_type, 6}, {field_type_parameters, 3}, [56] = {field_arguments, 1}, [57] = {field_type, 0}, {field_type_arguments, 1}, [59] = {field_condition, 2}, {field_consequence, 4}, [61] = {field_body, 4}, {field_condition, 2}, [63] = {field_type, 0}, [64] = {field_name, 0}, [65] = {field_pattern, 1}, {field_value, 3}, [67] = {field_alternative, 5}, {field_condition, 2}, {field_consequence, 4}, [70] = {field_name, 0}, {field_pattern, 2}, [72] = {field_name, 1}, {field_pattern, 3}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = {0}, [2] = { [0] = alias_sym_primitive_type, }, [3] = { [0] = alias_sym_type_identifier, }, [24] = { [0] = alias_sym_field_identifier, }, [32] = { [0] = alias_sym_shorthand_field_identifier, }, [35] = { [1] = alias_sym_shorthand_field_identifier, }, }; static const uint16_t ts_non_terminal_alias_map[] = { 0, }; static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [0] = 0, [1] = 1, [2] = 2, [3] = 3, [4] = 4, [5] = 4, [6] = 6, [7] = 6, [8] = 4, [9] = 6, [10] = 10, [11] = 11, [12] = 12, [13] = 12, [14] = 11, [15] = 15, [16] = 16, [17] = 17, [18] = 18, [19] = 19, [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] = 34, [35] = 35, [36] = 36, [37] = 37, [38] = 38, [39] = 39, [40] = 40, [41] = 41, [42] = 42, [43] = 43, [44] = 44, [45] = 45, [46] = 46, [47] = 47, [48] = 48, [49] = 49, [50] = 50, [51] = 51, [52] = 52, [53] = 53, [54] = 52, [55] = 51, [56] = 50, [57] = 57, [58] = 58, [59] = 53, [60] = 58, [61] = 57, [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] = 43, [77] = 42, [78] = 43, [79] = 42, [80] = 40, [81] = 81, [82] = 82, [83] = 83, [84] = 84, [85] = 85, [86] = 86, [87] = 87, [88] = 88, [89] = 89, [90] = 90, [91] = 91, [92] = 92, [93] = 93, [94] = 94, [95] = 95, [96] = 96, [97] = 97, [98] = 98, [99] = 99, [100] = 100, [101] = 101, [102] = 102, [103] = 103, [104] = 104, [105] = 105, [106] = 106, [107] = 107, [108] = 108, [109] = 109, [110] = 110, [111] = 111, [112] = 112, [113] = 113, [114] = 114, [115] = 115, [116] = 46, [117] = 117, [118] = 118, [119] = 119, [120] = 120, [121] = 121, [122] = 122, [123] = 123, [124] = 124, [125] = 47, [126] = 48, [127] = 41, [128] = 128, [129] = 129, [130] = 45, [131] = 131, [132] = 132, [133] = 133, [134] = 134, [135] = 135, [136] = 136, [137] = 137, [138] = 138, [139] = 139, [140] = 140, [141] = 141, [142] = 142, [143] = 143, [144] = 144, [145] = 145, [146] = 146, [147] = 147, [148] = 148, [149] = 149, [150] = 150, [151] = 151, [152] = 152, [153] = 153, [154] = 154, [155] = 155, [156] = 156, [157] = 157, [158] = 158, [159] = 159, [160] = 160, [161] = 161, [162] = 162, [163] = 163, [164] = 164, [165] = 165, [166] = 166, [167] = 167, [168] = 168, [169] = 169, [170] = 170, [171] = 168, [172] = 163, [173] = 173, [174] = 167, [175] = 173, [176] = 176, [177] = 170, [178] = 164, [179] = 179, [180] = 180, [181] = 181, [182] = 182, [183] = 183, [184] = 184, [185] = 185, [186] = 186, [187] = 187, [188] = 188, [189] = 137, [190] = 190, [191] = 191, [192] = 192, [193] = 193, [194] = 194, [195] = 195, [196] = 196, [197] = 197, [198] = 198, [199] = 199, [200] = 200, [201] = 201, [202] = 202, [203] = 128, [204] = 204, [205] = 129, [206] = 206, [207] = 207, [208] = 110, [209] = 97, [210] = 99, [211] = 211, [212] = 212, [213] = 213, [214] = 212, [215] = 91, [216] = 211, [217] = 89, [218] = 81, [219] = 95, [220] = 220, [221] = 221, [222] = 87, [223] = 213, [224] = 93, [225] = 100, [226] = 226, [227] = 227, [228] = 228, [229] = 229, [230] = 230, [231] = 231, [232] = 232, [233] = 233, [234] = 234, [235] = 234, [236] = 236, [237] = 237, [238] = 238, [239] = 239, [240] = 233, [241] = 241, [242] = 232, [243] = 243, [244] = 244, [245] = 245, [246] = 246, [247] = 247, [248] = 248, [249] = 249, [250] = 250, [251] = 251, [252] = 252, [253] = 253, [254] = 254, [255] = 255, [256] = 256, [257] = 257, [258] = 258, [259] = 259, [260] = 229, [261] = 261, [262] = 262, [263] = 263, [264] = 264, [265] = 265, [266] = 266, [267] = 267, [268] = 268, [269] = 269, [270] = 270, [271] = 271, [272] = 272, [273] = 273, [274] = 274, [275] = 275, [276] = 276, [277] = 276, [278] = 278, [279] = 279, [280] = 280, [281] = 281, [282] = 280, [283] = 274, [284] = 284, [285] = 285, [286] = 286, [287] = 266, [288] = 288, [289] = 289, [290] = 286, [291] = 275, [292] = 292, [293] = 265, [294] = 294, [295] = 84, [296] = 296, [297] = 297, [298] = 276, [299] = 299, [300] = 278, [301] = 301, [302] = 302, [303] = 303, [304] = 273, [305] = 284, [306] = 306, [307] = 307, [308] = 308, [309] = 309, [310] = 310, [311] = 311, [312] = 312, [313] = 313, [314] = 314, [315] = 306, [316] = 316, [317] = 317, [318] = 318, [319] = 319, [320] = 320, [321] = 321, [322] = 322, [323] = 64, [324] = 324, [325] = 325, [326] = 326, [327] = 327, [328] = 328, [329] = 329, [330] = 313, [331] = 331, [332] = 332, [333] = 333, [334] = 334, [335] = 335, [336] = 336, [337] = 337, [338] = 338, [339] = 339, [340] = 340, [341] = 341, [342] = 342, [343] = 343, [344] = 63, [345] = 345, [346] = 346, [347] = 347, [348] = 321, [349] = 320, [350] = 336, [351] = 317, [352] = 352, [353] = 353, [354] = 333, [355] = 327, [356] = 337, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: if (eof) ADVANCE(127); if (lookahead == '!') ADVANCE(165); if (lookahead == '#') ADVANCE(132); if (lookahead == '$') ADVANCE(200); if (lookahead == '%') ADVANCE(181); if (lookahead == '&') ADVANCE(163); if (lookahead == '\'') ADVANCE(206); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == '*') ADVANCE(179); if (lookahead == '+') ADVANCE(177); if (lookahead == ',') ADVANCE(140); if (lookahead == '-') ADVANCE(178); if (lookahead == '.') ADVANCE(199); if (lookahead == '/') ADVANCE(180); if (lookahead == '0') ADVANCE(253); if (lookahead == ':') ADVANCE(137); if (lookahead == ';') ADVANCE(131); if (lookahead == '<') ADVANCE(161); if (lookahead == '=') ADVANCE(136); if (lookahead == '>') ADVANCE(142); if (lookahead == '[') ADVANCE(133); if (lookahead == ']') ADVANCE(134); if (lookahead == '^') ADVANCE(170); if (lookahead == 'a') ADVANCE(256); if (lookahead == 'b') ADVANCE(262); if (lookahead == 'c') ADVANCE(263); if (lookahead == 'd') ADVANCE(258); if (lookahead == 'e') ADVANCE(261); if (lookahead == 'f') ADVANCE(260); if (lookahead == 'i') ADVANCE(300); if (lookahead == 'l') ADVANCE(296); if (lookahead == 'm') ADVANCE(277); if (lookahead == 'p') ADVANCE(356); if (lookahead == 'r') ADVANCE(299); if (lookahead == 's') ADVANCE(346); if (lookahead == 't') ADVANCE(339); if (lookahead == 'u') ADVANCE(268); if (lookahead == 'w') ADVANCE(303); if (lookahead == '{') ADVANCE(129); if (lookahead == '|') ADVANCE(169); if (lookahead == '}') ADVANCE(130); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(0) if (('A' <= lookahead && lookahead <= 'F')) ADVANCE(266); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(254); if (('G' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 1: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(181); if (lookahead == '&') ADVANCE(163); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == '*') ADVANCE(179); if (lookahead == '+') ADVANCE(177); if (lookahead == ',') ADVANCE(140); if (lookahead == '-') ADVANCE(178); if (lookahead == '.') ADVANCE(199); if (lookahead == '/') ADVANCE(180); if (lookahead == '0') ADVANCE(242); if (lookahead == ':') ADVANCE(34); if (lookahead == ';') ADVANCE(131); if (lookahead == '<') ADVANCE(139); if (lookahead == '=') ADVANCE(136); if (lookahead == '>') ADVANCE(142); if (lookahead == ']') ADVANCE(134); if (lookahead == '^') ADVANCE(170); if (lookahead == 'a') ADVANCE(286); if (lookahead == 'b') ADVANCE(324); if (lookahead == 'c') ADVANCE(326); if (lookahead == 'i') ADVANCE(301); if (lookahead == 'l') ADVANCE(328); if (lookahead == 'r') ADVANCE(299); if (lookahead == 'u') ADVANCE(270); if (lookahead == 'w') ADVANCE(305); if (lookahead == '{') ADVANCE(129); if (lookahead == '|') ADVANCE(169); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(1) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(243); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('d' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 2: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(181); if (lookahead == '&') ADVANCE(163); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == '*') ADVANCE(179); if (lookahead == '+') ADVANCE(177); if (lookahead == ',') ADVANCE(140); if (lookahead == '-') ADVANCE(178); if (lookahead == '.') ADVANCE(199); if (lookahead == '/') ADVANCE(180); if (lookahead == '0') ADVANCE(242); if (lookahead == ':') ADVANCE(34); if (lookahead == ';') ADVANCE(131); if (lookahead == '<') ADVANCE(139); if (lookahead == '=') ADVANCE(136); if (lookahead == '>') ADVANCE(142); if (lookahead == '^') ADVANCE(170); if (lookahead == 'a') ADVANCE(286); if (lookahead == 'b') ADVANCE(324); if (lookahead == 'c') ADVANCE(326); if (lookahead == 'i') ADVANCE(301); if (lookahead == 'l') ADVANCE(328); if (lookahead == 'r') ADVANCE(299); if (lookahead == 'u') ADVANCE(269); if (lookahead == 'w') ADVANCE(305); if (lookahead == '{') ADVANCE(129); if (lookahead == '|') ADVANCE(169); if (lookahead == '}') ADVANCE(130); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(2) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(243); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('d' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 3: if (lookahead == '!') ADVANCE(164); if (lookahead == '#') ADVANCE(132); if (lookahead == '&') ADVANCE(162); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == ',') ADVANCE(140); if (lookahead == '.') ADVANCE(123); if (lookahead == '/') ADVANCE(14); if (lookahead == '0') ADVANCE(242); if (lookahead == ':') ADVANCE(34); if (lookahead == '<') ADVANCE(138); if (lookahead == 'a') ADVANCE(287); if (lookahead == 'b') ADVANCE(324); if (lookahead == 'c') ADVANCE(326); if (lookahead == 'i') ADVANCE(301); if (lookahead == 'l') ADVANCE(328); if (lookahead == 'r') ADVANCE(299); if (lookahead == 'u') ADVANCE(270); if (lookahead == 'w') ADVANCE(305); if (lookahead == '{') ADVANCE(129); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(3) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(243); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('d' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 4: if (lookahead == '!') ADVANCE(164); if (lookahead == '&') ADVANCE(162); if (lookahead == '(') ADVANCE(143); if (lookahead == ',') ADVANCE(140); if (lookahead == '.') ADVANCE(123); if (lookahead == '/') ADVANCE(14); if (lookahead == '0') ADVANCE(242); if (lookahead == ':') ADVANCE(34); if (lookahead == '<') ADVANCE(138); if (lookahead == '>') ADVANCE(141); if (lookahead == 'a') ADVANCE(287); if (lookahead == 'b') ADVANCE(324); if (lookahead == 'c') ADVANCE(326); if (lookahead == 'i') ADVANCE(301); if (lookahead == 'l') ADVANCE(328); if (lookahead == 'r') ADVANCE(299); if (lookahead == 'u') ADVANCE(269); if (lookahead == 'w') ADVANCE(305); if (lookahead == '{') ADVANCE(129); if (lookahead == '}') ADVANCE(130); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(4) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(243); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('d' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 5: if (lookahead == '!') ADVANCE(164); if (lookahead == '&') ADVANCE(162); if (lookahead == '(') ADVANCE(143); if (lookahead == '.') ADVANCE(123); if (lookahead == '/') ADVANCE(14); if (lookahead == '0') ADVANCE(242); if (lookahead == ':') ADVANCE(34); if (lookahead == '<') ADVANCE(138); if (lookahead == 'a') ADVANCE(287); if (lookahead == 'b') ADVANCE(324); if (lookahead == 'c') ADVANCE(326); if (lookahead == 'i') ADVANCE(301); if (lookahead == 'l') ADVANCE(296); if (lookahead == 'r') ADVANCE(299); if (lookahead == 'u') ADVANCE(270); if (lookahead == 'w') ADVANCE(305); if (lookahead == '{') ADVANCE(129); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(5) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(243); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('d' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 6: if (lookahead == '!') ADVANCE(35); if (lookahead == '%') ADVANCE(181); if (lookahead == '&') ADVANCE(163); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == '*') ADVANCE(179); if (lookahead == '+') ADVANCE(177); if (lookahead == ',') ADVANCE(140); if (lookahead == '-') ADVANCE(178); if (lookahead == '.') ADVANCE(198); if (lookahead == '/') ADVANCE(180); if (lookahead == ':') ADVANCE(34); if (lookahead == ';') ADVANCE(131); if (lookahead == '<') ADVANCE(139); if (lookahead == '=') ADVANCE(136); if (lookahead == '>') ADVANCE(142); if (lookahead == ']') ADVANCE(134); if (lookahead == '^') ADVANCE(170); if (lookahead == 'a') ADVANCE(102); if (lookahead == 'i') ADVANCE(64); if (lookahead == '{') ADVANCE(129); if (lookahead == '|') ADVANCE(169); if (lookahead == '}') ADVANCE(130); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(6) END_STATE(); case 7: if (lookahead == '!') ADVANCE(35); if (lookahead == '%') ADVANCE(181); if (lookahead == '&') ADVANCE(163); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == '*') ADVANCE(179); if (lookahead == '+') ADVANCE(177); if (lookahead == ',') ADVANCE(140); if (lookahead == '-') ADVANCE(178); if (lookahead == '.') ADVANCE(198); if (lookahead == '/') ADVANCE(180); if (lookahead == ';') ADVANCE(131); if (lookahead == '<') ADVANCE(139); if (lookahead == '=') ADVANCE(136); if (lookahead == '>') ADVANCE(142); if (lookahead == ']') ADVANCE(134); if (lookahead == '^') ADVANCE(170); if (lookahead == 'a') ADVANCE(341); if (lookahead == 'u') ADVANCE(343); if (lookahead == '|') ADVANCE(169); if (lookahead == '}') ADVANCE(130); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(7) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 8: if (lookahead == '!') ADVANCE(35); if (lookahead == '%') ADVANCE(181); if (lookahead == '&') ADVANCE(163); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == '*') ADVANCE(179); if (lookahead == '+') ADVANCE(177); if (lookahead == ',') ADVANCE(140); if (lookahead == '-') ADVANCE(178); if (lookahead == '.') ADVANCE(198); if (lookahead == '/') ADVANCE(180); if (lookahead == ';') ADVANCE(131); if (lookahead == '<') ADVANCE(139); if (lookahead == '=') ADVANCE(136); if (lookahead == '>') ADVANCE(142); if (lookahead == ']') ADVANCE(134); if (lookahead == '^') ADVANCE(170); if (lookahead == 'a') ADVANCE(341); if (lookahead == '|') ADVANCE(169); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(8) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 9: if (lookahead == '$') ADVANCE(200); if (lookahead == '\'') ADVANCE(206); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == '/') ADVANCE(201); if (lookahead == '[') ADVANCE(133); if (lookahead == ']') ADVANCE(134); if (lookahead == 'a') ADVANCE(49); if (lookahead == 'b') ADVANCE(89); if (lookahead == 'c') ADVANCE(90); if (lookahead == 'd') ADVANCE(52); if (lookahead == 'e') ADVANCE(85); if (lookahead == 'f') ADVANCE(81); if (lookahead == 'i') ADVANCE(65); if (lookahead == 'l') ADVANCE(60); if (lookahead == 'm') ADVANCE(40); if (lookahead == 'p') ADVANCE(115); if (lookahead == 'r') ADVANCE(62); if (lookahead == 's') ADVANCE(105); if (lookahead == 't') ADVANCE(100); if (lookahead == 'u') ADVANCE(24); if (lookahead == 'w') ADVANCE(68); if (lookahead == '{') ADVANCE(129); if (lookahead == '}') ADVANCE(130); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(9) if (lookahead == '!' || ('#' <= lookahead && lookahead <= '.') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '_' || ('|' <= lookahead && lookahead <= '~')) ADVANCE(205); END_STATE(); case 10: if (lookahead == '&') ADVANCE(162); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == ',') ADVANCE(140); if (lookahead == '-') ADVANCE(178); if (lookahead == '.') ADVANCE(123); if (lookahead == '/') ADVANCE(14); if (lookahead == '0') ADVANCE(242); if (lookahead == ':') ADVANCE(34); if (lookahead == '<') ADVANCE(138); if (lookahead == 'a') ADVANCE(287); if (lookahead == 'b') ADVANCE(325); if (lookahead == 'c') ADVANCE(331); if (lookahead == 'u') ADVANCE(270); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(10) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(243); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('d' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 11: if (lookahead == '&') ADVANCE(162); if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == ',') ADVANCE(140); if (lookahead == '.') ADVANCE(123); if (lookahead == '/') ADVANCE(14); if (lookahead == '0') ADVANCE(242); if (lookahead == ':') ADVANCE(34); if (lookahead == '<') ADVANCE(138); if (lookahead == '>') ADVANCE(141); if (lookahead == 'a') ADVANCE(287); if (lookahead == 'b') ADVANCE(325); if (lookahead == 'u') ADVANCE(270); if (lookahead == '{') ADVANCE(129); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(11) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(243); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('c' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 12: if (lookahead == '(') ADVANCE(143); if (lookahead == ')') ADVANCE(144); if (lookahead == ',') ADVANCE(140); if (lookahead == '/') ADVANCE(14); if (lookahead == '0') ADVANCE(36); if (lookahead == ':') ADVANCE(34); if (lookahead == ';') ADVANCE(131); if (lookahead == '<') ADVANCE(161); if (lookahead == '=') ADVANCE(135); if (lookahead == '>') ADVANCE(141); if (lookahead == '[') ADVANCE(133); if (lookahead == ']') ADVANCE(134); if (lookahead == '{') ADVANCE(129); if (lookahead == '|') ADVANCE(168); if (lookahead == '}') ADVANCE(130); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(12) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 13: if (lookahead == ')') ADVANCE(144); if (lookahead == ',') ADVANCE(140); if (lookahead == '/') ADVANCE(14); if (lookahead == '<') ADVANCE(161); if (lookahead == '>') ADVANCE(141); if (lookahead == 'a') ADVANCE(102); if (lookahead == '{') ADVANCE(129); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(13) END_STATE(); case 14: if (lookahead == '*') ADVANCE(16); if (lookahead == '/') ADVANCE(364); END_STATE(); case 15: if (lookahead == '*') ADVANCE(15); if (lookahead == '/') ADVANCE(363); if (lookahead != 0) ADVANCE(16); END_STATE(); case 16: if (lookahead == '*') ADVANCE(15); if (lookahead != 0) ADVANCE(16); END_STATE(); case 17: if (lookahead == '.') ADVANCE(250); if (lookahead == '_') ADVANCE(18); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(254); if (('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(267); END_STATE(); case 18: if (lookahead == '.') ADVANCE(250); if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(18); END_STATE(); case 19: if (lookahead == '/') ADVANCE(14); if (lookahead == '0') ADVANCE(244); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(19) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(247); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 20: if (lookahead == '/') ADVANCE(14); if (lookahead == 'u') ADVANCE(343); if (lookahead == '}') ADVANCE(130); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(20) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 21: if (lookahead == '/') ADVANCE(14); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(21) if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(267); END_STATE(); case 22: if (lookahead == '1') ADVANCE(25); if (lookahead == '6') ADVANCE(28); if (lookahead == '8') ADVANCE(249); END_STATE(); case 23: if (lookahead == '1') ADVANCE(26); if (lookahead == '6') ADVANCE(29); if (lookahead == '8') ADVANCE(241); END_STATE(); case 24: if (lookahead == '1') ADVANCE(27); if (lookahead == '6') ADVANCE(30); if (lookahead == '8') ADVANCE(147); if (lookahead == 'n') ADVANCE(73); if (lookahead == 's') ADVANCE(53); END_STATE(); case 25: if (lookahead == '2') ADVANCE(31); END_STATE(); case 26: if (lookahead == '2') ADVANCE(32); END_STATE(); case 27: if (lookahead == '2') ADVANCE(33); END_STATE(); case 28: if (lookahead == '4') ADVANCE(249); END_STATE(); case 29: if (lookahead == '4') ADVANCE(241); END_STATE(); case 30: if (lookahead == '4') ADVANCE(149); END_STATE(); case 31: if (lookahead == '8') ADVANCE(249); END_STATE(); case 32: if (lookahead == '8') ADVANCE(241); END_STATE(); case 33: if (lookahead == '8') ADVANCE(151); END_STATE(); case 34: if (lookahead == ':') ADVANCE(128); END_STATE(); case 35: if (lookahead == '=') ADVANCE(172); END_STATE(); case 36: if (lookahead == 'X') ADVANCE(252); if (lookahead == 'x') ADVANCE(251); END_STATE(); case 37: if (lookahead == 'a') ADVANCE(71); END_STATE(); case 38: if (lookahead == 'a') ADVANCE(75); END_STATE(); case 39: if (lookahead == 'a') ADVANCE(67); END_STATE(); case 40: if (lookahead == 'a') ADVANCE(107); if (lookahead == 'o') ADVANCE(50); END_STATE(); case 41: if (lookahead == 'a') ADVANCE(119); END_STATE(); case 42: if (lookahead == 'a') ADVANCE(114); if (lookahead == 'r') ADVANCE(118); END_STATE(); case 43: if (lookahead == 'a') ADVANCE(72); END_STATE(); case 44: if (lookahead == 'b') ADVANCE(225); END_STATE(); case 45: if (lookahead == 'c') ADVANCE(207); END_STATE(); case 46: if (lookahead == 'c') ADVANCE(227); END_STATE(); case 47: if (lookahead == 'c') ADVANCE(69); END_STATE(); case 48: if (lookahead == 'c') ADVANCE(111); END_STATE(); case 49: if (lookahead == 'd') ADVANCE(51); if (lookahead == 's') ADVANCE(159); if (lookahead == 'w') ADVANCE(37); END_STATE(); case 50: if (lookahead == 'd') ADVANCE(223); END_STATE(); case 51: if (lookahead == 'd') ADVANCE(98); END_STATE(); case 52: if (lookahead == 'e') ADVANCE(66); END_STATE(); case 53: if (lookahead == 'e') ADVANCE(145); END_STATE(); case 54: if (lookahead == 'e') ADVANCE(233); END_STATE(); case 55: if (lookahead == 'e') ADVANCE(103); END_STATE(); case 56: if (lookahead == 'e') ADVANCE(239); END_STATE(); case 57: if (lookahead == 'e') ADVANCE(188); END_STATE(); case 58: if (lookahead == 'e') ADVANCE(237); END_STATE(); case 59: if (lookahead == 'e') ADVANCE(196); END_STATE(); case 60: if (lookahead == 'e') ADVANCE(106); if (lookahead == 'o') ADVANCE(91); END_STATE(); case 61: if (lookahead == 'e') ADVANCE(38); END_STATE(); case 62: if (lookahead == 'e') ADVANCE(113); END_STATE(); case 63: if (lookahead == 'e') ADVANCE(99); if (lookahead == 'i') ADVANCE(78); END_STATE(); case 64: if (lookahead == 'f') ADVANCE(184); END_STATE(); case 65: if (lookahead == 'f') ADVANCE(184); if (lookahead == 'm') ADVANCE(94); END_STATE(); case 66: if (lookahead == 'f') ADVANCE(41); END_STATE(); case 67: if (lookahead == 'f') ADVANCE(58); END_STATE(); case 68: if (lookahead == 'h') ADVANCE(63); END_STATE(); case 69: if (lookahead == 'h') ADVANCE(221); END_STATE(); case 70: if (lookahead == 'i') ADVANCE(46); END_STATE(); case 71: if (lookahead == 'i') ADVANCE(108); END_STATE(); case 72: if (lookahead == 'i') ADVANCE(110); END_STATE(); case 73: if (lookahead == 'i') ADVANCE(92); if (lookahead == 's') ADVANCE(39); END_STATE(); case 74: if (lookahead == 'i') ADVANCE(87); END_STATE(); case 75: if (lookahead == 'k') ADVANCE(194); END_STATE(); case 76: if (lookahead == 'l') ADVANCE(153); END_STATE(); case 77: if (lookahead == 'l') ADVANCE(219); END_STATE(); case 78: if (lookahead == 'l') ADVANCE(57); END_STATE(); case 79: if (lookahead == 'l') ADVANCE(112); END_STATE(); case 80: if (lookahead == 'm') ADVANCE(213); END_STATE(); case 81: if (lookahead == 'n') ADVANCE(215); if (lookahead == 'o') ADVANCE(96); END_STATE(); case 82: if (lookahead == 'n') ADVANCE(104); END_STATE(); case 83: if (lookahead == 'n') ADVANCE(235); END_STATE(); case 84: if (lookahead == 'n') ADVANCE(182); END_STATE(); case 85: if (lookahead == 'n') ADVANCE(116); END_STATE(); case 86: if (lookahead == 'n') ADVANCE(45); END_STATE(); case 87: if (lookahead == 'n') ADVANCE(120); END_STATE(); case 88: if (lookahead == 'o') ADVANCE(76); END_STATE(); case 89: if (lookahead == 'o') ADVANCE(88); if (lookahead == 'r') ADVANCE(61); END_STATE(); case 90: if (lookahead == 'o') ADVANCE(82); END_STATE(); case 91: if (lookahead == 'o') ADVANCE(93); END_STATE(); case 92: if (lookahead == 'o') ADVANCE(83); END_STATE(); case 93: if (lookahead == 'p') ADVANCE(190); END_STATE(); case 94: if (lookahead == 'p') ADVANCE(77); END_STATE(); case 95: if (lookahead == 'p') ADVANCE(54); END_STATE(); case 96: if (lookahead == 'r') ADVANCE(217); END_STATE(); case 97: if (lookahead == 'r') ADVANCE(84); END_STATE(); case 98: if (lookahead == 'r') ADVANCE(55); END_STATE(); case 99: if (lookahead == 'r') ADVANCE(56); END_STATE(); case 100: if (lookahead == 'r') ADVANCE(43); if (lookahead == 'y') ADVANCE(95); END_STATE(); case 101: if (lookahead == 's') ADVANCE(155); END_STATE(); case 102: if (lookahead == 's') ADVANCE(157); END_STATE(); case 103: if (lookahead == 's') ADVANCE(101); END_STATE(); case 104: if (lookahead == 's') ADVANCE(109); if (lookahead == 't') ADVANCE(74); END_STATE(); case 105: if (lookahead == 't') ADVANCE(42); END_STATE(); case 106: if (lookahead == 't') ADVANCE(186); END_STATE(); case 107: if (lookahead == 't') ADVANCE(47); END_STATE(); case 108: if (lookahead == 't') ADVANCE(209); END_STATE(); case 109: if (lookahead == 't') ADVANCE(192); END_STATE(); case 110: if (lookahead == 't') ADVANCE(231); END_STATE(); case 111: if (lookahead == 't') ADVANCE(229); END_STATE(); case 112: if (lookahead == 't') ADVANCE(211); END_STATE(); case 113: if (lookahead == 't') ADVANCE(117); END_STATE(); case 114: if (lookahead == 't') ADVANCE(70); END_STATE(); case 115: if (lookahead == 'u') ADVANCE(44); END_STATE(); case 116: if (lookahead == 'u') ADVANCE(80); END_STATE(); case 117: if (lookahead == 'u') ADVANCE(97); END_STATE(); case 118: if (lookahead == 'u') ADVANCE(48); END_STATE(); case 119: if (lookahead == 'u') ADVANCE(79); END_STATE(); case 120: if (lookahead == 'u') ADVANCE(59); END_STATE(); case 121: if (lookahead == '0' || lookahead == '1' || lookahead == '_') ADVANCE(245); END_STATE(); case 122: if (('0' <= lookahead && lookahead <= '7') || lookahead == '_') ADVANCE(246); END_STATE(); case 123: if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(250); END_STATE(); case 124: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(267); END_STATE(); case 125: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(248); END_STATE(); case 126: if (lookahead != 0 && lookahead != '\r') ADVANCE(364); if (lookahead == '\r') ADVANCE(365); END_STATE(); case 127: ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 128: ACCEPT_TOKEN(anon_sym_COLON_COLON); END_STATE(); case 129: ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 130: ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 131: ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 132: ACCEPT_TOKEN(anon_sym_POUND); END_STATE(); case 133: ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 134: ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 135: ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); case 136: ACCEPT_TOKEN(anon_sym_EQ); if (lookahead == '=') ADVANCE(171); END_STATE(); case 137: ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 138: ACCEPT_TOKEN(anon_sym_LT); END_STATE(); case 139: ACCEPT_TOKEN(anon_sym_LT); if (lookahead == '<') ADVANCE(175); if (lookahead == '=') ADVANCE(173); END_STATE(); case 140: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 141: ACCEPT_TOKEN(anon_sym_GT); END_STATE(); case 142: ACCEPT_TOKEN(anon_sym_GT); if (lookahead == '=') ADVANCE(174); if (lookahead == '>') ADVANCE(176); END_STATE(); case 143: ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 144: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 145: ACCEPT_TOKEN(anon_sym_use); END_STATE(); case 146: ACCEPT_TOKEN(anon_sym_use); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 147: ACCEPT_TOKEN(anon_sym_u8); END_STATE(); case 148: ACCEPT_TOKEN(anon_sym_u8); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 149: ACCEPT_TOKEN(anon_sym_u64); END_STATE(); case 150: ACCEPT_TOKEN(anon_sym_u64); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 151: ACCEPT_TOKEN(anon_sym_u128); END_STATE(); case 152: ACCEPT_TOKEN(anon_sym_u128); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 153: ACCEPT_TOKEN(anon_sym_bool); END_STATE(); case 154: ACCEPT_TOKEN(anon_sym_bool); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 155: ACCEPT_TOKEN(anon_sym_address); END_STATE(); case 156: ACCEPT_TOKEN(anon_sym_address); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 157: ACCEPT_TOKEN(anon_sym_as); END_STATE(); case 158: ACCEPT_TOKEN(anon_sym_as); if (lookahead == 'y') ADVANCE(321); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 159: ACCEPT_TOKEN(anon_sym_as); if (lookahead == 'y') ADVANCE(86); END_STATE(); case 160: ACCEPT_TOKEN(anon_sym_as); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 161: ACCEPT_TOKEN(anon_sym_LT2); END_STATE(); case 162: ACCEPT_TOKEN(anon_sym_AMP); END_STATE(); case 163: ACCEPT_TOKEN(anon_sym_AMP); if (lookahead == '&') ADVANCE(166); END_STATE(); case 164: ACCEPT_TOKEN(anon_sym_BANG); END_STATE(); case 165: ACCEPT_TOKEN(anon_sym_BANG); if (lookahead == '=') ADVANCE(172); END_STATE(); case 166: ACCEPT_TOKEN(anon_sym_AMP_AMP); END_STATE(); case 167: ACCEPT_TOKEN(anon_sym_PIPE_PIPE); END_STATE(); case 168: ACCEPT_TOKEN(anon_sym_PIPE); END_STATE(); case 169: ACCEPT_TOKEN(anon_sym_PIPE); if (lookahead == '|') ADVANCE(167); END_STATE(); case 170: ACCEPT_TOKEN(anon_sym_CARET); END_STATE(); case 171: ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); case 172: ACCEPT_TOKEN(anon_sym_BANG_EQ); END_STATE(); case 173: ACCEPT_TOKEN(anon_sym_LT_EQ); END_STATE(); case 174: ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); case 175: ACCEPT_TOKEN(anon_sym_LT_LT); END_STATE(); case 176: ACCEPT_TOKEN(anon_sym_GT_GT); END_STATE(); case 177: ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 178: ACCEPT_TOKEN(anon_sym_DASH); END_STATE(); case 179: ACCEPT_TOKEN(anon_sym_STAR); END_STATE(); case 180: ACCEPT_TOKEN(anon_sym_SLASH); if (lookahead == '*') ADVANCE(16); if (lookahead == '/') ADVANCE(364); END_STATE(); case 181: ACCEPT_TOKEN(anon_sym_PERCENT); END_STATE(); case 182: ACCEPT_TOKEN(anon_sym_return); END_STATE(); case 183: ACCEPT_TOKEN(anon_sym_return); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 184: ACCEPT_TOKEN(anon_sym_if); END_STATE(); case 185: ACCEPT_TOKEN(anon_sym_if); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 186: ACCEPT_TOKEN(anon_sym_let); END_STATE(); case 187: ACCEPT_TOKEN(anon_sym_let); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 188: ACCEPT_TOKEN(anon_sym_while); END_STATE(); case 189: ACCEPT_TOKEN(anon_sym_while); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 190: ACCEPT_TOKEN(anon_sym_loop); END_STATE(); case 191: ACCEPT_TOKEN(anon_sym_loop); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 192: ACCEPT_TOKEN(anon_sym_const); END_STATE(); case 193: ACCEPT_TOKEN(anon_sym_const); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 194: ACCEPT_TOKEN(anon_sym_break); END_STATE(); case 195: ACCEPT_TOKEN(anon_sym_break); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 196: ACCEPT_TOKEN(anon_sym_continue); END_STATE(); case 197: ACCEPT_TOKEN(anon_sym_continue); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 198: ACCEPT_TOKEN(anon_sym_DOT); END_STATE(); case 199: ACCEPT_TOKEN(anon_sym_DOT); if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(250); END_STATE(); case 200: ACCEPT_TOKEN(anon_sym_DOLLAR); END_STATE(); case 201: ACCEPT_TOKEN(aux_sym__non_special_token_token1); if (lookahead == '*') ADVANCE(203); if (lookahead == '/') ADVANCE(204); if (lookahead == '!' || lookahead == '#' || lookahead == '%' || lookahead == '&' || ('+' <= lookahead && lookahead <= '.') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '_' || lookahead == '|' || lookahead == '~') ADVANCE(205); END_STATE(); case 202: ACCEPT_TOKEN(aux_sym__non_special_token_token1); if (lookahead == '*') ADVANCE(202); if (lookahead == '/') ADVANCE(205); if (lookahead == '!' || lookahead == '#' || lookahead == '%' || lookahead == '&' || ('+' <= lookahead && lookahead <= '.') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '_' || lookahead == '|' || lookahead == '~') ADVANCE(203); if (lookahead != 0) ADVANCE(16); END_STATE(); case 203: ACCEPT_TOKEN(aux_sym__non_special_token_token1); if (lookahead == '*') ADVANCE(202); if (lookahead == '!' || lookahead == '#' || lookahead == '%' || lookahead == '&' || ('+' <= lookahead && lookahead <= '/') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '_' || lookahead == '|' || lookahead == '~') ADVANCE(203); if (lookahead != 0) ADVANCE(16); END_STATE(); case 204: ACCEPT_TOKEN(aux_sym__non_special_token_token1); if (lookahead == '\\') ADVANCE(126); if (lookahead == '!' || lookahead == '#' || lookahead == '%' || lookahead == '&' || ('*' <= lookahead && lookahead <= '/') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '_' || lookahead == '|' || lookahead == '~') ADVANCE(204); if (lookahead != 0 && lookahead != '\n') ADVANCE(364); END_STATE(); case 205: ACCEPT_TOKEN(aux_sym__non_special_token_token1); if (lookahead == '!' || lookahead == '#' || lookahead == '%' || lookahead == '&' || ('*' <= lookahead && lookahead <= '/') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '_' || lookahead == '|' || lookahead == '~') ADVANCE(205); END_STATE(); case 206: ACCEPT_TOKEN(anon_sym_SQUOTE); END_STATE(); case 207: ACCEPT_TOKEN(anon_sym_async); END_STATE(); case 208: ACCEPT_TOKEN(anon_sym_async); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 209: ACCEPT_TOKEN(anon_sym_await); END_STATE(); case 210: ACCEPT_TOKEN(anon_sym_await); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 211: ACCEPT_TOKEN(anon_sym_default); END_STATE(); case 212: ACCEPT_TOKEN(anon_sym_default); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 213: ACCEPT_TOKEN(anon_sym_enum); END_STATE(); case 214: ACCEPT_TOKEN(anon_sym_enum); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 215: ACCEPT_TOKEN(anon_sym_fn); END_STATE(); case 216: ACCEPT_TOKEN(anon_sym_fn); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 217: ACCEPT_TOKEN(anon_sym_for); END_STATE(); case 218: ACCEPT_TOKEN(anon_sym_for); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 219: ACCEPT_TOKEN(anon_sym_impl); END_STATE(); case 220: ACCEPT_TOKEN(anon_sym_impl); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 221: ACCEPT_TOKEN(anon_sym_match); END_STATE(); case 222: ACCEPT_TOKEN(anon_sym_match); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 223: ACCEPT_TOKEN(anon_sym_mod); END_STATE(); case 224: ACCEPT_TOKEN(anon_sym_mod); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 225: ACCEPT_TOKEN(anon_sym_pub); END_STATE(); case 226: ACCEPT_TOKEN(anon_sym_pub); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 227: ACCEPT_TOKEN(anon_sym_static); END_STATE(); case 228: ACCEPT_TOKEN(anon_sym_static); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 229: ACCEPT_TOKEN(anon_sym_struct); END_STATE(); case 230: ACCEPT_TOKEN(anon_sym_struct); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 231: ACCEPT_TOKEN(anon_sym_trait); END_STATE(); case 232: ACCEPT_TOKEN(anon_sym_trait); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 233: ACCEPT_TOKEN(anon_sym_type); END_STATE(); case 234: ACCEPT_TOKEN(anon_sym_type); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 235: ACCEPT_TOKEN(anon_sym_union); END_STATE(); case 236: ACCEPT_TOKEN(anon_sym_union); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 237: ACCEPT_TOKEN(anon_sym_unsafe); END_STATE(); case 238: ACCEPT_TOKEN(anon_sym_unsafe); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 239: ACCEPT_TOKEN(anon_sym_where); END_STATE(); case 240: ACCEPT_TOKEN(anon_sym_where); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 241: ACCEPT_TOKEN(sym_integer_literal); END_STATE(); case 242: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == '.') ADVANCE(250); if (lookahead == 'b') ADVANCE(121); if (lookahead == 'o') ADVANCE(122); if (lookahead == 'u') ADVANCE(23); if (lookahead == 'x') ADVANCE(125); if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(243); END_STATE(); case 243: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == '.') ADVANCE(250); if (lookahead == 'u') ADVANCE(23); if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(243); END_STATE(); case 244: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'b') ADVANCE(121); if (lookahead == 'o') ADVANCE(122); if (lookahead == 'u') ADVANCE(23); if (lookahead == 'x') ADVANCE(125); if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(247); END_STATE(); case 245: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'u') ADVANCE(23); if (lookahead == '0' || lookahead == '1' || lookahead == '_') ADVANCE(245); END_STATE(); case 246: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'u') ADVANCE(23); if (('0' <= lookahead && lookahead <= '7') || lookahead == '_') ADVANCE(246); END_STATE(); case 247: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'u') ADVANCE(23); if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(247); END_STATE(); case 248: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'u') ADVANCE(23); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(248); END_STATE(); case 249: ACCEPT_TOKEN(sym_float_literal); END_STATE(); case 250: ACCEPT_TOKEN(sym_float_literal); if (lookahead == 'u') ADVANCE(22); if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(250); END_STATE(); case 251: ACCEPT_TOKEN(anon_sym_0x); END_STATE(); case 252: ACCEPT_TOKEN(anon_sym_0X); END_STATE(); case 253: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '.') ADVANCE(250); if (lookahead == 'X') ADVANCE(252); if (lookahead == '_') ADVANCE(17); if (lookahead == 'x') ADVANCE(251); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(254); if (('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(267); END_STATE(); case 254: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '.') ADVANCE(250); if (lookahead == '_') ADVANCE(17); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(254); if (('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(267); END_STATE(); case 255: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'a') ADVANCE(265); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('b' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 256: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'd') ADVANCE(257); if (lookahead == 's') ADVANCE(158); if (lookahead == 'w') ADVANCE(274); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 257: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'd') ADVANCE(264); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 258: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'e') ADVANCE(259); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 259: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'f') ADVANCE(255); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 260: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'n') ADVANCE(216); if (lookahead == 'o') ADVANCE(335); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 261: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'n') ADVANCE(357); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 262: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'o') ADVANCE(327); if (lookahead == 'r') ADVANCE(297); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 263: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'o') ADVANCE(318); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 264: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'r') ADVANCE(291); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 265: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (lookahead == 'u') ADVANCE(316); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 266: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(361); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 267: ACCEPT_TOKEN(aux_sym_hex_address_token1); if (lookahead == '_') ADVANCE(124); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(267); END_STATE(); case 268: ACCEPT_TOKEN(sym_identifier); if (lookahead == '1') ADVANCE(271); if (lookahead == '6') ADVANCE(272); if (lookahead == '8') ADVANCE(148); if (lookahead == 'n') ADVANCE(306); if (lookahead == 's') ADVANCE(289); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 269: ACCEPT_TOKEN(sym_identifier); if (lookahead == '1') ADVANCE(271); if (lookahead == '6') ADVANCE(272); if (lookahead == '8') ADVANCE(148); if (lookahead == 's') ADVANCE(289); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 270: ACCEPT_TOKEN(sym_identifier); if (lookahead == '1') ADVANCE(271); if (lookahead == '6') ADVANCE(272); if (lookahead == '8') ADVANCE(148); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 271: ACCEPT_TOKEN(sym_identifier); if (lookahead == '2') ADVANCE(273); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 272: ACCEPT_TOKEN(sym_identifier); if (lookahead == '4') ADVANCE(150); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 273: ACCEPT_TOKEN(sym_identifier); if (lookahead == '8') ADVANCE(152); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 274: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(310); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 275: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(312); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 276: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(302); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 277: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(348); if (lookahead == 'o') ADVANCE(285); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 278: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(355); if (lookahead == 'r') ADVANCE(359); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 279: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(311); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 280: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'b') ADVANCE(226); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 281: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'c') ADVANCE(208); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 282: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'c') ADVANCE(228); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 283: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'c') ADVANCE(304); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 284: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'c') ADVANCE(352); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 285: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'd') ADVANCE(224); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 286: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'd') ADVANCE(288); if (lookahead == 's') ADVANCE(160); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 287: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'd') ADVANCE(288); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 288: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'd') ADVANCE(336); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 289: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(146); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 290: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(234); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 291: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(342); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 292: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(240); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 293: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(189); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 294: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(238); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 295: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(197); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 296: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(347); if (lookahead == 'o') ADVANCE(330); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 297: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(275); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 298: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(338); if (lookahead == 'i') ADVANCE(315); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 299: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(354); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 300: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'f') ADVANCE(185); if (lookahead == 'm') ADVANCE(333); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 301: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'f') ADVANCE(185); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 302: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'f') ADVANCE(294); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 303: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'h') ADVANCE(298); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 304: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'h') ADVANCE(222); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 305: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'h') ADVANCE(307); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 306: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(329); if (lookahead == 's') ADVANCE(276); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 307: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(315); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 308: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(323); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 309: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(282); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 310: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(349); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 311: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(351); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 312: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'k') ADVANCE(195); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 313: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(154); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 314: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(220); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 315: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(293); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 316: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 317: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'm') ADVANCE(214); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 318: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(344); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 319: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(236); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 320: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(183); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 321: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(281); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 322: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(345); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 323: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(360); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 324: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(327); if (lookahead == 'r') ADVANCE(297); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 325: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(327); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 326: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(318); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 327: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(313); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 328: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(330); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 329: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(319); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 330: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(332); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 331: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(322); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 332: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'p') ADVANCE(191); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 333: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'p') ADVANCE(314); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 334: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'p') ADVANCE(290); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 335: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(218); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 336: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(291); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 337: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(320); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 338: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(292); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 339: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(279); if (lookahead == 'y') ADVANCE(334); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 340: ACCEPT_TOKEN(sym_identifier); if (lookahead == 's') ADVANCE(156); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 341: ACCEPT_TOKEN(sym_identifier); if (lookahead == 's') ADVANCE(160); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 342: ACCEPT_TOKEN(sym_identifier); if (lookahead == 's') ADVANCE(340); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 343: ACCEPT_TOKEN(sym_identifier); if (lookahead == 's') ADVANCE(289); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 344: ACCEPT_TOKEN(sym_identifier); if (lookahead == 's') ADVANCE(350); if (lookahead == 't') ADVANCE(308); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 345: ACCEPT_TOKEN(sym_identifier); if (lookahead == 's') ADVANCE(350); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 346: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(278); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 347: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(187); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 348: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(283); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 349: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(210); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 350: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(193); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 351: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(232); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 352: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(230); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 353: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(212); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 354: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(358); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 355: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(309); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 356: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'u') ADVANCE(280); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 357: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'u') ADVANCE(317); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 358: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'u') ADVANCE(337); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 359: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'u') ADVANCE(284); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 360: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'u') ADVANCE(295); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 361: ACCEPT_TOKEN(sym_identifier); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(266); if (('G' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('g' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 362: ACCEPT_TOKEN(sym_identifier); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(362); END_STATE(); case 363: ACCEPT_TOKEN(sym_comment); END_STATE(); case 364: ACCEPT_TOKEN(sym_comment); if (lookahead == '\\') ADVANCE(126); if (lookahead != 0 && lookahead != '\n') ADVANCE(364); END_STATE(); case 365: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && lookahead != '\\') ADVANCE(364); if (lookahead == '\\') ADVANCE(126); 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 == '_') ADVANCE(1); if (lookahead == 'e') ADVANCE(2); if (lookahead == 'f') ADVANCE(3); if (lookahead == 'm') ADVANCE(4); if (lookahead == 'p') ADVANCE(5); if (lookahead == 't') ADVANCE(6); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(0) END_STATE(); case 1: ACCEPT_TOKEN(anon_sym__); END_STATE(); case 2: if (lookahead == 'l') ADVANCE(7); END_STATE(); case 3: if (lookahead == 'a') ADVANCE(8); if (lookahead == 'u') ADVANCE(9); END_STATE(); case 4: if (lookahead == 'o') ADVANCE(10); if (lookahead == 'u') ADVANCE(11); END_STATE(); case 5: if (lookahead == 'u') ADVANCE(12); END_STATE(); case 6: if (lookahead == 'r') ADVANCE(13); END_STATE(); case 7: if (lookahead == 's') ADVANCE(14); END_STATE(); case 8: if (lookahead == 'l') ADVANCE(15); END_STATE(); case 9: if (lookahead == 'n') ADVANCE(16); END_STATE(); case 10: if (lookahead == 'd') ADVANCE(17); END_STATE(); case 11: if (lookahead == 't') ADVANCE(18); END_STATE(); case 12: if (lookahead == 'b') ADVANCE(19); END_STATE(); case 13: if (lookahead == 'u') ADVANCE(20); END_STATE(); case 14: if (lookahead == 'e') ADVANCE(21); END_STATE(); case 15: if (lookahead == 's') ADVANCE(22); END_STATE(); case 16: ACCEPT_TOKEN(anon_sym_fun); END_STATE(); case 17: if (lookahead == 'u') ADVANCE(23); END_STATE(); case 18: ACCEPT_TOKEN(sym_mutable_specifier); END_STATE(); case 19: if (lookahead == 'l') ADVANCE(24); END_STATE(); case 20: if (lookahead == 'e') ADVANCE(25); END_STATE(); case 21: ACCEPT_TOKEN(anon_sym_else); END_STATE(); case 22: if (lookahead == 'e') ADVANCE(26); END_STATE(); case 23: if (lookahead == 'l') ADVANCE(27); END_STATE(); case 24: if (lookahead == 'i') ADVANCE(28); END_STATE(); case 25: ACCEPT_TOKEN(anon_sym_true); END_STATE(); case 26: ACCEPT_TOKEN(anon_sym_false); END_STATE(); case 27: if (lookahead == 'e') ADVANCE(29); END_STATE(); case 28: if (lookahead == 'c') ADVANCE(30); END_STATE(); case 29: ACCEPT_TOKEN(anon_sym_module); END_STATE(); case 30: ACCEPT_TOKEN(anon_sym_public); END_STATE(); default: return false; } } static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, [1] = {.lex_state = 12}, [2] = {.lex_state = 1}, [3] = {.lex_state = 4}, [4] = {.lex_state = 4}, [5] = {.lex_state = 4}, [6] = {.lex_state = 4}, [7] = {.lex_state = 4}, [8] = {.lex_state = 4}, [9] = {.lex_state = 4}, [10] = {.lex_state = 3}, [11] = {.lex_state = 5}, [12] = {.lex_state = 5}, [13] = {.lex_state = 5}, [14] = {.lex_state = 5}, [15] = {.lex_state = 3}, [16] = {.lex_state = 3}, [17] = {.lex_state = 3}, [18] = {.lex_state = 3}, [19] = {.lex_state = 3}, [20] = {.lex_state = 3}, [21] = {.lex_state = 3}, [22] = {.lex_state = 3}, [23] = {.lex_state = 3}, [24] = {.lex_state = 3}, [25] = {.lex_state = 3}, [26] = {.lex_state = 3}, [27] = {.lex_state = 3}, [28] = {.lex_state = 3}, [29] = {.lex_state = 3}, [30] = {.lex_state = 3}, [31] = {.lex_state = 3}, [32] = {.lex_state = 3}, [33] = {.lex_state = 3}, [34] = {.lex_state = 3}, [35] = {.lex_state = 3}, [36] = {.lex_state = 3}, [37] = {.lex_state = 3}, [38] = {.lex_state = 3}, [39] = {.lex_state = 3}, [40] = {.lex_state = 2}, [41] = {.lex_state = 2}, [42] = {.lex_state = 2}, [43] = {.lex_state = 2}, [44] = {.lex_state = 2}, [45] = {.lex_state = 2}, [46] = {.lex_state = 2}, [47] = {.lex_state = 2}, [48] = {.lex_state = 2}, [49] = {.lex_state = 9}, [50] = {.lex_state = 9}, [51] = {.lex_state = 9}, [52] = {.lex_state = 9}, [53] = {.lex_state = 9}, [54] = {.lex_state = 9}, [55] = {.lex_state = 9}, [56] = {.lex_state = 9}, [57] = {.lex_state = 9}, [58] = {.lex_state = 9}, [59] = {.lex_state = 9}, [60] = {.lex_state = 9}, [61] = {.lex_state = 9}, [62] = {.lex_state = 9}, [63] = {.lex_state = 9}, [64] = {.lex_state = 9}, [65] = {.lex_state = 10}, [66] = {.lex_state = 10}, [67] = {.lex_state = 10}, [68] = {.lex_state = 10}, [69] = {.lex_state = 10}, [70] = {.lex_state = 10}, [71] = {.lex_state = 10}, [72] = {.lex_state = 10}, [73] = {.lex_state = 10}, [74] = {.lex_state = 10}, [75] = {.lex_state = 10}, [76] = {.lex_state = 7}, [77] = {.lex_state = 7}, [78] = {.lex_state = 4}, [79] = {.lex_state = 4}, [80] = {.lex_state = 8}, [81] = {.lex_state = 4}, [82] = {.lex_state = 6}, [83] = {.lex_state = 6}, [84] = {.lex_state = 6}, [85] = {.lex_state = 6}, [86] = {.lex_state = 6}, [87] = {.lex_state = 4}, [88] = {.lex_state = 4}, [89] = {.lex_state = 4}, [90] = {.lex_state = 6}, [91] = {.lex_state = 4}, [92] = {.lex_state = 6}, [93] = {.lex_state = 4}, [94] = {.lex_state = 6}, [95] = {.lex_state = 4}, [96] = {.lex_state = 6}, [97] = {.lex_state = 4}, [98] = {.lex_state = 6}, [99] = {.lex_state = 4}, [100] = {.lex_state = 4}, [101] = {.lex_state = 6}, [102] = {.lex_state = 6}, [103] = {.lex_state = 6}, [104] = {.lex_state = 6}, [105] = {.lex_state = 6}, [106] = {.lex_state = 6}, [107] = {.lex_state = 6}, [108] = {.lex_state = 6}, [109] = {.lex_state = 6}, [110] = {.lex_state = 6}, [111] = {.lex_state = 6}, [112] = {.lex_state = 6}, [113] = {.lex_state = 6}, [114] = {.lex_state = 6}, [115] = {.lex_state = 6}, [116] = {.lex_state = 6}, [117] = {.lex_state = 6}, [118] = {.lex_state = 6}, [119] = {.lex_state = 6}, [120] = {.lex_state = 6}, [121] = {.lex_state = 6}, [122] = {.lex_state = 6}, [123] = {.lex_state = 6}, [124] = {.lex_state = 6}, [125] = {.lex_state = 6}, [126] = {.lex_state = 6}, [127] = {.lex_state = 6}, [128] = {.lex_state = 6}, [129] = {.lex_state = 6}, [130] = {.lex_state = 6}, [131] = {.lex_state = 6}, [132] = {.lex_state = 6}, [133] = {.lex_state = 6}, [134] = {.lex_state = 6}, [135] = {.lex_state = 6}, [136] = {.lex_state = 6}, [137] = {.lex_state = 6}, [138] = {.lex_state = 6}, [139] = {.lex_state = 3}, [140] = {.lex_state = 3}, [141] = {.lex_state = 6}, [142] = {.lex_state = 3}, [143] = {.lex_state = 6}, [144] = {.lex_state = 6}, [145] = {.lex_state = 6}, [146] = {.lex_state = 6}, [147] = {.lex_state = 6}, [148] = {.lex_state = 6}, [149] = {.lex_state = 6}, [150] = {.lex_state = 6}, [151] = {.lex_state = 6}, [152] = {.lex_state = 6}, [153] = {.lex_state = 6}, [154] = {.lex_state = 11}, [155] = {.lex_state = 11}, [156] = {.lex_state = 11}, [157] = {.lex_state = 11}, [158] = {.lex_state = 11}, [159] = {.lex_state = 11}, [160] = {.lex_state = 11}, [161] = {.lex_state = 11}, [162] = {.lex_state = 11}, [163] = {.lex_state = 11}, [164] = {.lex_state = 11}, [165] = {.lex_state = 11}, [166] = {.lex_state = 11}, [167] = {.lex_state = 11}, [168] = {.lex_state = 11}, [169] = {.lex_state = 11}, [170] = {.lex_state = 11}, [171] = {.lex_state = 11}, [172] = {.lex_state = 11}, [173] = {.lex_state = 11}, [174] = {.lex_state = 11}, [175] = {.lex_state = 11}, [176] = {.lex_state = 11}, [177] = {.lex_state = 11}, [178] = {.lex_state = 11}, [179] = {.lex_state = 20}, [180] = {.lex_state = 20}, [181] = {.lex_state = 20}, [182] = {.lex_state = 12}, [183] = {.lex_state = 12}, [184] = {.lex_state = 12}, [185] = {.lex_state = 12}, [186] = {.lex_state = 12}, [187] = {.lex_state = 12}, [188] = {.lex_state = 12}, [189] = {.lex_state = 13}, [190] = {.lex_state = 12}, [191] = {.lex_state = 0}, [192] = {.lex_state = 0}, [193] = {.lex_state = 0}, [194] = {.lex_state = 12}, [195] = {.lex_state = 0}, [196] = {.lex_state = 0}, [197] = {.lex_state = 0}, [198] = {.lex_state = 0}, [199] = {.lex_state = 12}, [200] = {.lex_state = 0}, [201] = {.lex_state = 0}, [202] = {.lex_state = 0}, [203] = {.lex_state = 13}, [204] = {.lex_state = 0}, [205] = {.lex_state = 13}, [206] = {.lex_state = 0}, [207] = {.lex_state = 0}, [208] = {.lex_state = 13}, [209] = {.lex_state = 20}, [210] = {.lex_state = 20}, [211] = {.lex_state = 4}, [212] = {.lex_state = 4}, [213] = {.lex_state = 6}, [214] = {.lex_state = 4}, [215] = {.lex_state = 20}, [216] = {.lex_state = 4}, [217] = {.lex_state = 20}, [218] = {.lex_state = 20}, [219] = {.lex_state = 20}, [220] = {.lex_state = 12}, [221] = {.lex_state = 0}, [222] = {.lex_state = 20}, [223] = {.lex_state = 6}, [224] = {.lex_state = 20}, [225] = {.lex_state = 20}, [226] = {.lex_state = 0}, [227] = {.lex_state = 0}, [228] = {.lex_state = 12}, [229] = {.lex_state = 0}, [230] = {.lex_state = 12}, [231] = {.lex_state = 0}, [232] = {.lex_state = 0}, [233] = {.lex_state = 0}, [234] = {.lex_state = 0}, [235] = {.lex_state = 0}, [236] = {.lex_state = 0}, [237] = {.lex_state = 12}, [238] = {.lex_state = 0}, [239] = {.lex_state = 0}, [240] = {.lex_state = 0}, [241] = {.lex_state = 0}, [242] = {.lex_state = 0}, [243] = {.lex_state = 12}, [244] = {.lex_state = 0}, [245] = {.lex_state = 12}, [246] = {.lex_state = 12}, [247] = {.lex_state = 0}, [248] = {.lex_state = 0}, [249] = {.lex_state = 0}, [250] = {.lex_state = 0}, [251] = {.lex_state = 12}, [252] = {.lex_state = 12}, [253] = {.lex_state = 19}, [254] = {.lex_state = 0}, [255] = {.lex_state = 0}, [256] = {.lex_state = 12}, [257] = {.lex_state = 0}, [258] = {.lex_state = 12}, [259] = {.lex_state = 0}, [260] = {.lex_state = 0}, [261] = {.lex_state = 12}, [262] = {.lex_state = 13}, [263] = {.lex_state = 12}, [264] = {.lex_state = 12}, [265] = {.lex_state = 0}, [266] = {.lex_state = 0}, [267] = {.lex_state = 0}, [268] = {.lex_state = 0}, [269] = {.lex_state = 0}, [270] = {.lex_state = 0}, [271] = {.lex_state = 0}, [272] = {.lex_state = 12}, [273] = {.lex_state = 0}, [274] = {.lex_state = 0}, [275] = {.lex_state = 0}, [276] = {.lex_state = 0}, [277] = {.lex_state = 0}, [278] = {.lex_state = 0}, [279] = {.lex_state = 0}, [280] = {.lex_state = 0}, [281] = {.lex_state = 12}, [282] = {.lex_state = 0}, [283] = {.lex_state = 0}, [284] = {.lex_state = 0}, [285] = {.lex_state = 12}, [286] = {.lex_state = 0}, [287] = {.lex_state = 0}, [288] = {.lex_state = 0}, [289] = {.lex_state = 12}, [290] = {.lex_state = 0}, [291] = {.lex_state = 0}, [292] = {.lex_state = 12}, [293] = {.lex_state = 0}, [294] = {.lex_state = 12}, [295] = {.lex_state = 12}, [296] = {.lex_state = 12}, [297] = {.lex_state = 0}, [298] = {.lex_state = 0}, [299] = {.lex_state = 0}, [300] = {.lex_state = 0}, [301] = {.lex_state = 1}, [302] = {.lex_state = 12}, [303] = {.lex_state = 12}, [304] = {.lex_state = 0}, [305] = {.lex_state = 0}, [306] = {.lex_state = 0}, [307] = {.lex_state = 12}, [308] = {.lex_state = 0}, [309] = {.lex_state = 0}, [310] = {.lex_state = 0}, [311] = {.lex_state = 12}, [312] = {.lex_state = 0}, [313] = {.lex_state = 0}, [314] = {.lex_state = 0}, [315] = {.lex_state = 0}, [316] = {.lex_state = 0}, [317] = {.lex_state = 12}, [318] = {.lex_state = 12}, [319] = {.lex_state = 0}, [320] = {.lex_state = 0}, [321] = {.lex_state = 0}, [322] = {.lex_state = 12}, [323] = {.lex_state = 0}, [324] = {.lex_state = 0}, [325] = {.lex_state = 0}, [326] = {.lex_state = 0}, [327] = {.lex_state = 0}, [328] = {.lex_state = 0}, [329] = {.lex_state = 12}, [330] = {.lex_state = 0}, [331] = {.lex_state = 12}, [332] = {.lex_state = 12}, [333] = {.lex_state = 12}, [334] = {.lex_state = 12}, [335] = {.lex_state = 12}, [336] = {.lex_state = 12}, [337] = {.lex_state = 0}, [338] = {.lex_state = 0}, [339] = {.lex_state = 0}, [340] = {.lex_state = 12}, [341] = {.lex_state = 12}, [342] = {.lex_state = 0}, [343] = {.lex_state = 0}, [344] = {.lex_state = 0}, [345] = {.lex_state = 12}, [346] = {.lex_state = 12}, [347] = {.lex_state = 12}, [348] = {.lex_state = 0}, [349] = {.lex_state = 0}, [350] = {.lex_state = 12}, [351] = {.lex_state = 12}, [352] = {.lex_state = 21}, [353] = {.lex_state = 0}, [354] = {.lex_state = 12}, [355] = {.lex_state = 0}, [356] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [0] = { [ts_builtin_sym_end] = ACTIONS(1), [sym_identifier] = ACTIONS(1), [anon_sym_module] = ACTIONS(1), [anon_sym_LBRACE] = ACTIONS(1), [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_SEMI] = ACTIONS(1), [anon_sym_POUND] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), [anon_sym_EQ] = ACTIONS(1), [anon_sym_fun] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), [anon_sym_public] = ACTIONS(1), [anon_sym_LT] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), [anon_sym_GT] = ACTIONS(1), [anon_sym_LPAREN] = ACTIONS(1), [anon_sym__] = ACTIONS(1), [anon_sym_RPAREN] = ACTIONS(1), [anon_sym_use] = ACTIONS(1), [anon_sym_u8] = ACTIONS(1), [anon_sym_u64] = ACTIONS(1), [anon_sym_u128] = ACTIONS(1), [anon_sym_bool] = ACTIONS(1), [anon_sym_address] = ACTIONS(1), [anon_sym_as] = ACTIONS(1), [anon_sym_LT2] = ACTIONS(1), [anon_sym_AMP] = ACTIONS(1), [sym_mutable_specifier] = ACTIONS(1), [anon_sym_BANG] = ACTIONS(1), [anon_sym_AMP_AMP] = ACTIONS(1), [anon_sym_PIPE_PIPE] = ACTIONS(1), [anon_sym_PIPE] = ACTIONS(1), [anon_sym_CARET] = ACTIONS(1), [anon_sym_EQ_EQ] = ACTIONS(1), [anon_sym_BANG_EQ] = ACTIONS(1), [anon_sym_LT_EQ] = ACTIONS(1), [anon_sym_GT_EQ] = ACTIONS(1), [anon_sym_LT_LT] = ACTIONS(1), [anon_sym_GT_GT] = ACTIONS(1), [anon_sym_PLUS] = ACTIONS(1), [anon_sym_DASH] = ACTIONS(1), [anon_sym_STAR] = ACTIONS(1), [anon_sym_SLASH] = ACTIONS(1), [anon_sym_PERCENT] = ACTIONS(1), [anon_sym_return] = ACTIONS(1), [anon_sym_if] = ACTIONS(1), [anon_sym_let] = ACTIONS(1), [anon_sym_else] = ACTIONS(1), [anon_sym_while] = ACTIONS(1), [anon_sym_loop] = ACTIONS(1), [anon_sym_const] = ACTIONS(1), [anon_sym_break] = ACTIONS(1), [anon_sym_continue] = ACTIONS(1), [anon_sym_DOT] = ACTIONS(1), [anon_sym_DOLLAR] = ACTIONS(1), [anon_sym_SQUOTE] = ACTIONS(1), [anon_sym_async] = ACTIONS(1), [anon_sym_await] = ACTIONS(1), [anon_sym_default] = ACTIONS(1), [anon_sym_enum] = ACTIONS(1), [anon_sym_fn] = ACTIONS(1), [anon_sym_for] = ACTIONS(1), [anon_sym_impl] = ACTIONS(1), [anon_sym_match] = ACTIONS(1), [anon_sym_mod] = ACTIONS(1), [anon_sym_pub] = ACTIONS(1), [anon_sym_static] = ACTIONS(1), [anon_sym_struct] = ACTIONS(1), [anon_sym_trait] = ACTIONS(1), [anon_sym_type] = ACTIONS(1), [anon_sym_union] = ACTIONS(1), [anon_sym_unsafe] = ACTIONS(1), [anon_sym_where] = ACTIONS(1), [sym_float_literal] = ACTIONS(1), [anon_sym_true] = ACTIONS(1), [anon_sym_false] = ACTIONS(1), [anon_sym_0x] = ACTIONS(1), [anon_sym_0X] = ACTIONS(1), [aux_sym_hex_address_token1] = ACTIONS(1), [sym_comment] = ACTIONS(3), }, [1] = { [sym_module] = STATE(353), [anon_sym_module] = ACTIONS(5), [sym_comment] = ACTIONS(3), }, [2] = { [sym_bracketed_type] = STATE(329), [sym_generic_function] = STATE(83), [sym__expression_except_range] = STATE(83), [sym__expression] = STATE(107), [sym__expression_ending_with_block] = STATE(83), [sym_unary_expression] = STATE(83), [sym_reference_expression] = STATE(83), [sym_binary_expression] = STATE(83), [sym_assignment_expression] = STATE(83), [sym_type_cast_expression] = STATE(83), [sym_return_expression] = STATE(83), [sym_call_expression] = STATE(83), [sym_parenthesized_expression] = STATE(83), [sym_tuple_expression] = STATE(83), [sym_unit_expression] = STATE(83), [sym_if_expression] = STATE(83), [sym_while_expression] = STATE(83), [sym_loop_expression] = STATE(83), [sym_const_block] = STATE(83), [sym_break_expression] = STATE(83), [sym_continue_expression] = STATE(83), [sym_field_expression] = STATE(82), [sym_block] = STATE(83), [sym_scoped_identifier] = STATE(340), [sym__literal] = STATE(83), [sym_boolean_literal] = STATE(83), [sym__path] = STATE(329), [sym_identifier] = ACTIONS(7), [anon_sym_COLON_COLON] = ACTIONS(9), [anon_sym_LBRACE] = ACTIONS(11), [anon_sym_SEMI] = ACTIONS(13), [anon_sym_RBRACK] = ACTIONS(13), [anon_sym_EQ] = ACTIONS(15), [anon_sym_LT] = ACTIONS(17), [anon_sym_COMMA] = ACTIONS(13), [anon_sym_GT] = ACTIONS(15), [anon_sym_LPAREN] = ACTIONS(19), [anon_sym_RPAREN] = ACTIONS(13), [anon_sym_u8] = ACTIONS(21), [anon_sym_u64] = ACTIONS(21), [anon_sym_u128] = ACTIONS(21), [anon_sym_bool] = ACTIONS(21), [anon_sym_address] = ACTIONS(21), [anon_sym_as] = ACTIONS(15), [anon_sym_AMP] = ACTIONS(23), [anon_sym_BANG] = ACTIONS(25), [anon_sym_AMP_AMP] = ACTIONS(13), [anon_sym_PIPE_PIPE] = ACTIONS(13), [anon_sym_PIPE] = ACTIONS(15), [anon_sym_CARET] = ACTIONS(13), [anon_sym_EQ_EQ] = ACTIONS(13), [anon_sym_BANG_EQ] = ACTIONS(13), [anon_sym_LT_EQ] = ACTIONS(13), [anon_sym_GT_EQ] = ACTIONS(13), [anon_sym_LT_LT] = ACTIONS(13), [anon_sym_GT_GT] = ACTIONS(13), [anon_sym_PLUS] = ACTIONS(13), [anon_sym_DASH] = ACTIONS(13), [anon_sym_STAR] = ACTIONS(13), [anon_sym_SLASH] = ACTIONS(15), [anon_sym_PERCENT] = ACTIONS(13), [anon_sym_return] = ACTIONS(27), [anon_sym_if] = ACTIONS(29), [anon_sym_while] = ACTIONS(31), [anon_sym_loop] = ACTIONS(33), [anon_sym_const] = ACTIONS(35), [anon_sym_break] = ACTIONS(37), [anon_sym_continue] = ACTIONS(39), [anon_sym_DOT] = ACTIONS(15), [sym_integer_literal] = ACTIONS(41), [sym_float_literal] = ACTIONS(43), [anon_sym_true] = ACTIONS(45), [anon_sym_false] = ACTIONS(45), [sym_comment] = ACTIONS(3), }, }; static const uint16_t ts_small_parse_table[] = { [0] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, sym_identifier, ACTIONS(50), 1, anon_sym_COLON_COLON, ACTIONS(53), 1, anon_sym_LBRACE, ACTIONS(56), 1, anon_sym_RBRACE, ACTIONS(58), 1, anon_sym_fun, ACTIONS(61), 1, anon_sym_public, ACTIONS(64), 1, anon_sym_LT, ACTIONS(67), 1, anon_sym_LPAREN, ACTIONS(70), 1, anon_sym_use, ACTIONS(76), 1, anon_sym_AMP, ACTIONS(79), 1, anon_sym_BANG, ACTIONS(82), 1, anon_sym_return, ACTIONS(85), 1, anon_sym_if, ACTIONS(88), 1, anon_sym_while, ACTIONS(91), 1, anon_sym_loop, ACTIONS(94), 1, anon_sym_const, ACTIONS(97), 1, anon_sym_break, ACTIONS(100), 1, anon_sym_continue, ACTIONS(103), 1, sym_integer_literal, ACTIONS(106), 1, sym_float_literal, STATE(82), 1, sym_field_expression, STATE(153), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, STATE(354), 1, sym_visibility_modifier, ACTIONS(109), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(73), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(3), 6, sym__statement, sym_expression_statement, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_block_repeat1, STATE(44), 6, sym__expression_ending_with_block, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_block, STATE(83), 16, sym_generic_function, sym__expression_except_range, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_break_expression, sym_continue_expression, sym__literal, sym_boolean_literal, [125] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(112), 1, anon_sym_LBRACE, ACTIONS(114), 1, anon_sym_RBRACE, ACTIONS(116), 1, anon_sym_fun, ACTIONS(118), 1, anon_sym_public, ACTIONS(120), 1, anon_sym_LT, ACTIONS(122), 1, anon_sym_use, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(128), 1, anon_sym_if, ACTIONS(130), 1, anon_sym_while, ACTIONS(132), 1, anon_sym_loop, ACTIONS(134), 1, anon_sym_const, STATE(82), 1, sym_field_expression, STATE(153), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, STATE(354), 1, sym_visibility_modifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(9), 6, sym__statement, sym_expression_statement, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_block_repeat1, STATE(44), 6, sym__expression_ending_with_block, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_block, STATE(83), 16, sym_generic_function, sym__expression_except_range, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_break_expression, sym_continue_expression, sym__literal, sym_boolean_literal, [250] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(112), 1, anon_sym_LBRACE, ACTIONS(116), 1, anon_sym_fun, ACTIONS(118), 1, anon_sym_public, ACTIONS(120), 1, anon_sym_LT, ACTIONS(122), 1, anon_sym_use, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(128), 1, anon_sym_if, ACTIONS(130), 1, anon_sym_while, ACTIONS(132), 1, anon_sym_loop, ACTIONS(134), 1, anon_sym_const, ACTIONS(136), 1, anon_sym_RBRACE, STATE(82), 1, sym_field_expression, STATE(153), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, STATE(354), 1, sym_visibility_modifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(6), 6, sym__statement, sym_expression_statement, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_block_repeat1, STATE(44), 6, sym__expression_ending_with_block, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_block, STATE(83), 16, sym_generic_function, sym__expression_except_range, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_break_expression, sym_continue_expression, sym__literal, sym_boolean_literal, [375] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(112), 1, anon_sym_LBRACE, ACTIONS(116), 1, anon_sym_fun, ACTIONS(118), 1, anon_sym_public, ACTIONS(120), 1, anon_sym_LT, ACTIONS(122), 1, anon_sym_use, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(128), 1, anon_sym_if, ACTIONS(130), 1, anon_sym_while, ACTIONS(132), 1, anon_sym_loop, ACTIONS(134), 1, anon_sym_const, ACTIONS(138), 1, anon_sym_RBRACE, STATE(82), 1, sym_field_expression, STATE(153), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, STATE(354), 1, sym_visibility_modifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(3), 6, sym__statement, sym_expression_statement, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_block_repeat1, STATE(44), 6, sym__expression_ending_with_block, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_block, STATE(83), 16, sym_generic_function, sym__expression_except_range, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_break_expression, sym_continue_expression, sym__literal, sym_boolean_literal, [500] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(112), 1, anon_sym_LBRACE, ACTIONS(116), 1, anon_sym_fun, ACTIONS(118), 1, anon_sym_public, ACTIONS(120), 1, anon_sym_LT, ACTIONS(122), 1, anon_sym_use, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(128), 1, anon_sym_if, ACTIONS(130), 1, anon_sym_while, ACTIONS(132), 1, anon_sym_loop, ACTIONS(134), 1, anon_sym_const, ACTIONS(140), 1, anon_sym_RBRACE, STATE(82), 1, sym_field_expression, STATE(153), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, STATE(354), 1, sym_visibility_modifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(3), 6, sym__statement, sym_expression_statement, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_block_repeat1, STATE(44), 6, sym__expression_ending_with_block, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_block, STATE(83), 16, sym_generic_function, sym__expression_except_range, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_break_expression, sym_continue_expression, sym__literal, sym_boolean_literal, [625] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(112), 1, anon_sym_LBRACE, ACTIONS(116), 1, anon_sym_fun, ACTIONS(118), 1, anon_sym_public, ACTIONS(120), 1, anon_sym_LT, ACTIONS(122), 1, anon_sym_use, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(128), 1, anon_sym_if, ACTIONS(130), 1, anon_sym_while, ACTIONS(132), 1, anon_sym_loop, ACTIONS(134), 1, anon_sym_const, ACTIONS(142), 1, anon_sym_RBRACE, STATE(82), 1, sym_field_expression, STATE(153), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, STATE(354), 1, sym_visibility_modifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(7), 6, sym__statement, sym_expression_statement, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_block_repeat1, STATE(44), 6, sym__expression_ending_with_block, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_block, STATE(83), 16, sym_generic_function, sym__expression_except_range, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_break_expression, sym_continue_expression, sym__literal, sym_boolean_literal, [750] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(112), 1, anon_sym_LBRACE, ACTIONS(116), 1, anon_sym_fun, ACTIONS(118), 1, anon_sym_public, ACTIONS(120), 1, anon_sym_LT, ACTIONS(122), 1, anon_sym_use, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(128), 1, anon_sym_if, ACTIONS(130), 1, anon_sym_while, ACTIONS(132), 1, anon_sym_loop, ACTIONS(134), 1, anon_sym_const, ACTIONS(144), 1, anon_sym_RBRACE, STATE(82), 1, sym_field_expression, STATE(153), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, STATE(354), 1, sym_visibility_modifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(3), 6, sym__statement, sym_expression_statement, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_block_repeat1, STATE(44), 6, sym__expression_ending_with_block, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_block, STATE(83), 16, sym_generic_function, sym__expression_except_range, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_break_expression, sym_continue_expression, sym__literal, sym_boolean_literal, [875] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(146), 1, anon_sym_POUND, ACTIONS(148), 1, anon_sym_RPAREN, STATE(82), 1, sym_field_expression, STATE(144), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(15), 2, sym_attribute_item, aux_sym_tuple_expression_repeat1, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [985] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(150), 1, anon_sym_let, STATE(82), 1, sym_field_expression, STATE(151), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, STATE(349), 2, sym_let_condition, sym__condition, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [1092] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(150), 1, anon_sym_let, STATE(82), 1, sym_field_expression, STATE(151), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, STATE(348), 2, sym_let_condition, sym__condition, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [1199] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(150), 1, anon_sym_let, STATE(82), 1, sym_field_expression, STATE(151), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(321), 2, sym_let_condition, sym__condition, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [1306] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(150), 1, anon_sym_let, STATE(82), 1, sym_field_expression, STATE(151), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(320), 2, sym_let_condition, sym__condition, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [1413] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(146), 1, anon_sym_POUND, STATE(82), 1, sym_field_expression, STATE(149), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(139), 2, sym_attribute_item, aux_sym_tuple_expression_repeat1, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [1520] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(152), 1, anon_sym_RPAREN, STATE(19), 1, aux_sym_tuple_expression_repeat2, STATE(82), 1, sym_field_expression, STATE(145), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [1626] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(154), 1, anon_sym_RPAREN, STATE(21), 1, aux_sym_tuple_expression_repeat2, STATE(82), 1, sym_field_expression, STATE(143), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [1732] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(156), 1, anon_sym_RPAREN, STATE(16), 1, aux_sym_tuple_expression_repeat2, STATE(82), 1, sym_field_expression, STATE(147), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [1838] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(158), 1, sym_identifier, ACTIONS(161), 1, anon_sym_COLON_COLON, ACTIONS(164), 1, anon_sym_LBRACE, ACTIONS(167), 1, anon_sym_LT, ACTIONS(170), 1, anon_sym_LPAREN, ACTIONS(173), 1, anon_sym_RPAREN, ACTIONS(178), 1, anon_sym_AMP, ACTIONS(181), 1, anon_sym_BANG, ACTIONS(184), 1, anon_sym_return, ACTIONS(187), 1, anon_sym_if, ACTIONS(190), 1, anon_sym_while, ACTIONS(193), 1, anon_sym_loop, ACTIONS(196), 1, anon_sym_const, ACTIONS(199), 1, anon_sym_break, ACTIONS(202), 1, anon_sym_continue, ACTIONS(205), 1, sym_integer_literal, ACTIONS(208), 1, sym_float_literal, STATE(19), 1, aux_sym_tuple_expression_repeat2, STATE(82), 1, sym_field_expression, STATE(152), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(211), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(175), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [1944] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(214), 1, anon_sym_COMMA, ACTIONS(216), 1, anon_sym_RPAREN, STATE(82), 1, sym_field_expression, STATE(141), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2050] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(156), 1, anon_sym_RPAREN, STATE(19), 1, aux_sym_tuple_expression_repeat2, STATE(82), 1, sym_field_expression, STATE(147), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2156] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(218), 1, sym_mutable_specifier, STATE(82), 1, sym_field_expression, STATE(105), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2259] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(220), 1, anon_sym_RPAREN, STATE(82), 1, sym_field_expression, STATE(146), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2362] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, ACTIONS(222), 1, anon_sym_RPAREN, STATE(82), 1, sym_field_expression, STATE(146), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2465] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(104), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2565] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(120), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2665] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(146), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2765] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(148), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2865] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(117), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [2965] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(113), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3065] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(108), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3165] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(150), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3265] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(115), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3365] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(136), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3465] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(135), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3565] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(106), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3665] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(134), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3765] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(133), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3865] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, sym_identifier, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(19), 1, anon_sym_LPAREN, ACTIONS(27), 1, anon_sym_return, ACTIONS(29), 1, anon_sym_if, ACTIONS(31), 1, anon_sym_while, ACTIONS(33), 1, anon_sym_loop, ACTIONS(35), 1, anon_sym_const, ACTIONS(37), 1, anon_sym_break, ACTIONS(39), 1, anon_sym_continue, ACTIONS(41), 1, sym_integer_literal, ACTIONS(43), 1, sym_float_literal, ACTIONS(120), 1, anon_sym_LT, ACTIONS(124), 1, anon_sym_AMP, ACTIONS(126), 1, anon_sym_BANG, STATE(82), 1, sym_field_expression, STATE(132), 1, sym__expression, STATE(340), 1, sym_scoped_identifier, ACTIONS(45), 2, anon_sym_true, anon_sym_false, STATE(329), 2, sym_bracketed_type, sym__path, ACTIONS(21), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(83), 22, sym_generic_function, sym__expression_except_range, sym__expression_ending_with_block, sym_unary_expression, sym_reference_expression, sym_binary_expression, sym_assignment_expression, sym_type_cast_expression, sym_return_expression, sym_call_expression, sym_parenthesized_expression, sym_tuple_expression, sym_unit_expression, sym_if_expression, sym_while_expression, sym_loop_expression, sym_const_block, sym_break_expression, sym_continue_expression, sym_block, sym__literal, sym_boolean_literal, [3965] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(228), 1, anon_sym_else, STATE(47), 1, sym_else_clause, ACTIONS(226), 19, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, sym_float_literal, ACTIONS(224), 28, anon_sym_EQ, anon_sym_fun, anon_sym_public, anon_sym_LT, anon_sym_GT, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_as, anon_sym_AMP, anon_sym_BANG, anon_sym_PIPE, anon_sym_SLASH, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOT, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [4026] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(232), 21, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, sym_float_literal, ACTIONS(230), 28, anon_sym_EQ, anon_sym_fun, anon_sym_public, anon_sym_LT, anon_sym_GT, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_as, anon_sym_AMP, anon_sym_BANG, anon_sym_PIPE, anon_sym_SLASH, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOT, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [4083] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(236), 19, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, sym_float_literal, ACTIONS(234), 29, anon_sym_EQ, anon_sym_fun, anon_sym_public, anon_sym_LT, anon_sym_GT, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_as, anon_sym_AMP, anon_sym_BANG, anon_sym_PIPE, anon_sym_SLASH, anon_sym_return, anon_sym_if, anon_sym_else, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOT, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [4139] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(240), 19, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, sym_float_literal, ACTIONS(238), 29, anon_sym_EQ, anon_sym_fun, anon_sym_public, anon_sym_LT, anon_sym_GT, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_as, anon_sym_AMP, anon_sym_BANG, anon_sym_PIPE, anon_sym_SLASH, anon_sym_return, anon_sym_if, anon_sym_else, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOT, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [4195] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(244), 5, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, sym_float_literal, ACTIONS(248), 6, anon_sym_EQ, anon_sym_GT, anon_sym_as, anon_sym_PIPE, anon_sym_SLASH, anon_sym_DOT, ACTIONS(246), 14, anon_sym_SEMI, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(242), 22, anon_sym_fun, anon_sym_public, anon_sym_LT, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_AMP, anon_sym_BANG, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [4254] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(252), 19, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, sym_float_literal, ACTIONS(250), 28, anon_sym_EQ, anon_sym_fun, anon_sym_public, anon_sym_LT, anon_sym_GT, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_as, anon_sym_AMP, anon_sym_BANG, anon_sym_PIPE, anon_sym_SLASH, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOT, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [4309] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(256), 19, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, sym_float_literal, ACTIONS(254), 28, anon_sym_EQ, anon_sym_fun, anon_sym_public, anon_sym_LT, anon_sym_GT, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_as, anon_sym_AMP, anon_sym_BANG, anon_sym_PIPE, anon_sym_SLASH, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOT, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [4364] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(260), 19, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, sym_float_literal, ACTIONS(258), 28, anon_sym_EQ, anon_sym_fun, anon_sym_public, anon_sym_LT, anon_sym_GT, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_as, anon_sym_AMP, anon_sym_BANG, anon_sym_PIPE, anon_sym_SLASH, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOT, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [4419] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(264), 19, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, sym_float_literal, ACTIONS(262), 28, anon_sym_EQ, anon_sym_fun, anon_sym_public, anon_sym_LT, anon_sym_GT, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_as, anon_sym_AMP, anon_sym_BANG, anon_sym_PIPE, anon_sym_SLASH, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOT, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [4474] = 9, ACTIONS(266), 1, anon_sym_LBRACE, ACTIONS(271), 1, anon_sym_LBRACK, ACTIONS(274), 1, anon_sym_LPAREN, ACTIONS(286), 1, sym_comment, ACTIONS(283), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(269), 3, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_RPAREN, ACTIONS(280), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(49), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(277), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [4540] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(290), 1, anon_sym_RBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(300), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(49), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(296), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [4604] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(302), 1, anon_sym_RBRACE, ACTIONS(306), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(56), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(304), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [4668] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(290), 1, anon_sym_RBRACK, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(300), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(49), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(296), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [4732] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(290), 1, anon_sym_RPAREN, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(300), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(49), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(296), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [4796] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(308), 1, anon_sym_RBRACK, ACTIONS(300), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(49), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(296), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [4860] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(310), 1, anon_sym_RBRACE, ACTIONS(314), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(50), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(312), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [4924] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(308), 1, anon_sym_RBRACE, ACTIONS(300), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(49), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(296), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [4988] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(310), 1, anon_sym_RBRACK, ACTIONS(318), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(52), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(316), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [5052] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(310), 1, anon_sym_RPAREN, ACTIONS(322), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(53), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(320), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [5116] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(308), 1, anon_sym_RPAREN, ACTIONS(300), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(49), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(296), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [5180] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(302), 1, anon_sym_RPAREN, ACTIONS(326), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(59), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(324), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [5244] = 9, ACTIONS(286), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(292), 1, anon_sym_LBRACK, ACTIONS(294), 1, anon_sym_LPAREN, ACTIONS(302), 1, anon_sym_RBRACK, ACTIONS(330), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(298), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(54), 5, sym_delim_token_tree, sym__delim_tokens, sym__non_delim_token, sym__non_special_token, aux_sym_delim_token_tree_repeat1, ACTIONS(328), 28, anon_sym_use, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [5308] = 3, ACTIONS(286), 1, sym_comment, ACTIONS(334), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(332), 39, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [5357] = 3, ACTIONS(286), 1, sym_comment, ACTIONS(338), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(336), 39, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [5406] = 3, ACTIONS(286), 1, sym_comment, ACTIONS(342), 2, anon_sym_as, aux_sym__non_special_token_token1, ACTIONS(340), 39, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_let, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, anon_sym_DOLLAR, anon_sym_SQUOTE, anon_sym_async, anon_sym_await, anon_sym_default, anon_sym_enum, anon_sym_fn, anon_sym_for, anon_sym_impl, anon_sym_match, anon_sym_mod, anon_sym_pub, anon_sym_static, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_union, anon_sym_unsafe, anon_sym_where, [5455] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(348), 1, anon_sym_COMMA, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(354), 1, anon_sym_RPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(366), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(352), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(221), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [5533] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(370), 1, anon_sym_RPAREN, ACTIONS(372), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(368), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(254), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [5608] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(372), 1, sym_float_literal, ACTIONS(374), 1, anon_sym_RPAREN, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(368), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(254), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [5683] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(378), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(376), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(226), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [5755] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(382), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(380), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(271), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [5827] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(386), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(384), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(204), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [5899] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(390), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(388), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(247), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [5971] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(372), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(368), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(254), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [6043] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(394), 1, sym_mutable_specifier, ACTIONS(396), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(392), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(202), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [6115] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(400), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(398), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(198), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [6187] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(120), 1, anon_sym_LT, ACTIONS(344), 1, sym_identifier, ACTIONS(346), 1, anon_sym_COLON_COLON, ACTIONS(350), 1, anon_sym_LPAREN, ACTIONS(358), 1, anon_sym_AMP, ACTIONS(360), 1, sym_mutable_specifier, ACTIONS(362), 1, anon_sym_DASH, ACTIONS(364), 1, anon_sym_const, ACTIONS(404), 1, sym_float_literal, STATE(190), 1, sym_scoped_identifier, STATE(335), 1, sym_generic_type, ACTIONS(45), 2, anon_sym_true, anon_sym_false, ACTIONS(402), 2, anon_sym__, sym_integer_literal, STATE(246), 2, sym_scoped_type_identifier, sym__type_identifier, STATE(318), 2, sym_bracketed_type, sym__path, ACTIONS(356), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(206), 10, sym_const_block, sym__pattern, sym_tuple_pattern, sym_struct_pattern, sym_mut_pattern, sym_reference_pattern, sym_or_pattern, sym__literal_pattern, sym_negative_literal, sym_boolean_literal, [6259] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(238), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(240), 25, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_fun, anon_sym_public, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_use, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_else, anon_sym_DOT, [6298] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(234), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(236), 25, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_fun, anon_sym_public, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_use, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_else, anon_sym_DOT, [6337] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(240), 10, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_COMMA, anon_sym_GT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(238), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [6374] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(236), 10, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_COMMA, anon_sym_GT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(234), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [6411] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(406), 1, anon_sym_else, STATE(125), 1, sym_else_clause, ACTIONS(224), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(226), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [6451] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(410), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(408), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [6486] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(412), 1, anon_sym_COLON_COLON, ACTIONS(248), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(246), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [6523] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(418), 1, anon_sym_LPAREN, STATE(114), 1, sym_arguments, ACTIONS(416), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(414), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [6562] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(422), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(420), 21, anon_sym_RBRACE, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [6597] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(412), 1, anon_sym_COLON_COLON, ACTIONS(248), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(246), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [6634] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(426), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(424), 21, anon_sym_COLON_COLON, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [6669] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(430), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(428), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [6704] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(434), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(432), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [6739] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(438), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(436), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [6774] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(440), 1, anon_sym_COLON_COLON, ACTIONS(248), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(246), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [6811] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(444), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(442), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [6846] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(448), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(446), 21, anon_sym_COLON_COLON, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [6881] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(452), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(450), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [6916] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(456), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(454), 21, anon_sym_COLON_COLON, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [6951] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(460), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(458), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [6986] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(464), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(462), 21, anon_sym_COLON_COLON, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7021] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(468), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(466), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [7056] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(472), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(470), 21, anon_sym_COLON_COLON, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7091] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(476), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(474), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [7126] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(480), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(478), 19, anon_sym_fun, anon_sym_public, anon_sym_use, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [7161] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(484), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(482), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7195] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(488), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(486), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7229] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(492), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(490), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7263] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(496), 1, anon_sym_EQ, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(494), 7, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, [7319] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(522), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(520), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, [7355] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(526), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(524), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, [7391] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(530), 1, anon_sym_EQ, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(528), 5, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, [7451] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(496), 5, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, ACTIONS(494), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [7497] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(538), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(536), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7531] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(542), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(540), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7565] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(546), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(544), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7599] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(550), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(548), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7633] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(496), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, ACTIONS(494), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [7685] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(554), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(552), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7719] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(496), 1, anon_sym_EQ, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(494), 6, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_PIPE_PIPE, [7777] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(254), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(256), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7811] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(558), 1, anon_sym_EQ, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(556), 5, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, [7871] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(562), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(560), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7905] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(566), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(564), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [7939] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(570), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(568), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, [7975] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(574), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(572), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8009] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(578), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(576), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8043] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(582), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(580), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8077] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(586), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(584), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8111] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(258), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(260), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8145] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(262), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(264), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8179] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(230), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(232), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8213] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(590), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(588), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8247] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(594), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(592), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8281] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(250), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(252), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8315] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(598), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(596), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8349] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(496), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(494), 18, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, [8387] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(496), 5, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, ACTIONS(494), 16, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, [8429] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(496), 5, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, ACTIONS(494), 14, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [8473] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(496), 4, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_PIPE, ACTIONS(494), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [8521] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(496), 4, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_PIPE, ACTIONS(494), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [8571] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(602), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(600), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8605] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(606), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_SLASH, ACTIONS(604), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_as, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_DOT, [8639] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(612), 1, anon_sym_POUND, STATE(139), 2, sym_attribute_item, aux_sym_tuple_expression_repeat1, ACTIONS(610), 7, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(608), 16, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [8677] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(617), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_POUND, anon_sym_LT, anon_sym_LPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(615), 16, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [8709] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(621), 1, anon_sym_COMMA, ACTIONS(623), 1, anon_sym_RPAREN, STATE(236), 1, aux_sym_arguments_repeat1, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [8771] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(173), 8, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_AMP, anon_sym_BANG, sym_float_literal, ACTIONS(625), 16, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, anon_sym_return, anon_sym_if, anon_sym_while, anon_sym_loop, anon_sym_const, anon_sym_break, anon_sym_continue, sym_integer_literal, anon_sym_true, anon_sym_false, sym_identifier, [8803] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(156), 1, anon_sym_RPAREN, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(627), 1, anon_sym_COMMA, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [8862] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(629), 1, anon_sym_COMMA, ACTIONS(631), 1, anon_sym_RPAREN, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [8921] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(627), 1, anon_sym_COMMA, ACTIONS(633), 1, anon_sym_RPAREN, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [8980] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(635), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [9037] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(152), 1, anon_sym_RPAREN, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(627), 1, anon_sym_COMMA, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [9096] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(637), 1, anon_sym_RPAREN, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [9152] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(639), 1, anon_sym_COMMA, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [9208] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(641), 1, anon_sym_RBRACK, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [9264] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(643), 1, anon_sym_RPAREN, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [9320] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(627), 1, anon_sym_COMMA, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [9376] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(500), 1, anon_sym_as, ACTIONS(502), 1, anon_sym_AMP, ACTIONS(504), 1, anon_sym_PIPE, ACTIONS(506), 1, anon_sym_CARET, ACTIONS(516), 1, anon_sym_SLASH, ACTIONS(518), 1, anon_sym_DOT, ACTIONS(532), 1, anon_sym_AMP_AMP, ACTIONS(534), 1, anon_sym_PIPE_PIPE, ACTIONS(619), 1, anon_sym_EQ, ACTIONS(645), 1, anon_sym_SEMI, ACTIONS(498), 2, anon_sym_LT, anon_sym_GT, ACTIONS(510), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(512), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(514), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(508), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, [9432] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(649), 1, anon_sym_LBRACE, ACTIONS(651), 1, anon_sym_GT, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, ACTIONS(659), 1, sym_integer_literal, ACTIONS(661), 1, sym_float_literal, ACTIONS(663), 2, anon_sym_true, anon_sym_false, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(263), 7, sym__type, sym_unit_type, sym_reference_type, sym_block, sym__literal, sym_boolean_literal, sym__type_identifier, [9477] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(649), 1, anon_sym_LBRACE, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, ACTIONS(659), 1, sym_integer_literal, ACTIONS(661), 1, sym_float_literal, ACTIONS(665), 1, anon_sym_GT, ACTIONS(663), 2, anon_sym_true, anon_sym_false, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(263), 7, sym__type, sym_unit_type, sym_reference_type, sym_block, sym__literal, sym_boolean_literal, sym__type_identifier, [9522] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(649), 1, anon_sym_LBRACE, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, ACTIONS(667), 1, sym_integer_literal, ACTIONS(669), 1, sym_float_literal, ACTIONS(663), 2, anon_sym_true, anon_sym_false, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(228), 7, sym__type, sym_unit_type, sym_reference_type, sym_block, sym__literal, sym_boolean_literal, sym__type_identifier, [9564] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(649), 1, anon_sym_LBRACE, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, ACTIONS(659), 1, sym_integer_literal, ACTIONS(661), 1, sym_float_literal, ACTIONS(663), 2, anon_sym_true, anon_sym_false, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(263), 7, sym__type, sym_unit_type, sym_reference_type, sym_block, sym__literal, sym_boolean_literal, sym__type_identifier, [9606] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, ACTIONS(671), 1, sym_identifier, ACTIONS(673), 1, anon_sym_COMMA, ACTIONS(675), 1, anon_sym__, ACTIONS(677), 1, anon_sym_RPAREN, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(238), 5, sym_parameter, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, [9642] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, ACTIONS(671), 1, sym_identifier, ACTIONS(679), 1, anon_sym__, ACTIONS(681), 1, anon_sym_RPAREN, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(270), 5, sym_parameter, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, [9675] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, ACTIONS(671), 1, sym_identifier, ACTIONS(679), 1, anon_sym__, ACTIONS(683), 1, anon_sym_RPAREN, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(270), 5, sym_parameter, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, [9708] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, ACTIONS(671), 1, sym_identifier, ACTIONS(679), 1, anon_sym__, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, STATE(270), 5, sym_parameter, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, [9738] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(331), 1, sym_qualified_type, STATE(262), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [9767] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(305), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [9793] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(120), 1, anon_sym_LT, STATE(329), 1, sym_bracketed_type, STATE(330), 1, sym__use_clause, STATE(294), 2, sym_scoped_identifier, sym__path, ACTIONS(685), 6, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, sym_identifier, [9821] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(120), 1, anon_sym_LT, STATE(309), 1, sym_attribute, STATE(329), 1, sym_bracketed_type, STATE(185), 2, sym_scoped_identifier, sym__path, ACTIONS(687), 6, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, sym_identifier, [9849] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(341), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [9875] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(286), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [9901] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(287), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [9927] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(689), 1, sym_identifier, ACTIONS(691), 1, anon_sym_LPAREN, ACTIONS(695), 1, anon_sym_AMP, STATE(101), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(693), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [9953] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(689), 1, sym_identifier, ACTIONS(691), 1, anon_sym_LPAREN, ACTIONS(695), 1, anon_sym_AMP, STATE(110), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(693), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [9979] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(266), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [10005] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(284), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [10031] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(275), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [10057] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(290), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [10083] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(291), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [10109] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(268), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [10135] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, sym_identifier, ACTIONS(653), 1, anon_sym_LPAREN, ACTIONS(657), 1, anon_sym_AMP, STATE(208), 4, sym__type, sym_unit_type, sym_reference_type, sym__type_identifier, ACTIONS(655), 5, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, [10161] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(9), 1, anon_sym_COLON_COLON, ACTIONS(120), 1, anon_sym_LT, STATE(313), 1, sym__use_clause, STATE(329), 1, sym_bracketed_type, STATE(294), 2, sym_scoped_identifier, sym__path, ACTIONS(685), 6, anon_sym_u8, anon_sym_u64, anon_sym_u128, anon_sym_bool, anon_sym_address, sym_identifier, [10189] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(697), 1, anon_sym_RBRACE, ACTIONS(699), 1, anon_sym_fun, ACTIONS(701), 1, anon_sym_public, ACTIONS(703), 1, anon_sym_use, STATE(333), 1, sym_visibility_modifier, STATE(181), 4, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_module_body_repeat1, [10214] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(699), 1, anon_sym_fun, ACTIONS(701), 1, anon_sym_public, ACTIONS(703), 1, anon_sym_use, ACTIONS(705), 1, anon_sym_RBRACE, STATE(333), 1, sym_visibility_modifier, STATE(179), 4, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_module_body_repeat1, [10239] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(707), 1, anon_sym_RBRACE, ACTIONS(709), 1, anon_sym_fun, ACTIONS(712), 1, anon_sym_public, ACTIONS(715), 1, anon_sym_use, STATE(333), 1, sym_visibility_modifier, STATE(181), 4, sym__declaration_statement, sym_function_item, sym_use_declaration, aux_sym_module_body_repeat1, [10264] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(440), 1, anon_sym_COLON_COLON, ACTIONS(600), 2, anon_sym_LBRACE, anon_sym_LT2, ACTIONS(718), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10282] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(600), 2, anon_sym_LBRACE, anon_sym_LT2, ACTIONS(720), 6, anon_sym_COLON_COLON, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10298] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(600), 2, anon_sym_LBRACE, anon_sym_LT2, ACTIONS(722), 6, anon_sym_COLON_COLON, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10314] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(724), 1, anon_sym_COLON_COLON, ACTIONS(726), 1, anon_sym_LBRACE, ACTIONS(728), 1, anon_sym_LBRACK, ACTIONS(730), 1, anon_sym_RBRACK, ACTIONS(732), 1, anon_sym_EQ, ACTIONS(734), 1, anon_sym_LPAREN, STATE(314), 1, sym_delim_token_tree, [10339] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(720), 7, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_EQ, anon_sym_LPAREN, [10352] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(722), 7, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_EQ, anon_sym_LPAREN, [10365] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(736), 1, sym_identifier, ACTIONS(738), 1, anon_sym_RBRACE, ACTIONS(740), 1, anon_sym_COMMA, ACTIONS(742), 1, sym_mutable_specifier, STATE(249), 1, sym_field_pattern, STATE(328), 1, sym__field_identifier, [10387] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(600), 6, anon_sym_LBRACE, anon_sym_COMMA, anon_sym_GT, anon_sym_RPAREN, anon_sym_as, anon_sym_LT2, [10399] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(440), 1, anon_sym_COLON_COLON, ACTIONS(718), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10413] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(744), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10424] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(746), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10435] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(748), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10446] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(736), 1, sym_identifier, ACTIONS(742), 1, sym_mutable_specifier, ACTIONS(750), 1, anon_sym_RBRACE, STATE(279), 1, sym_field_pattern, STATE(328), 1, sym__field_identifier, [10465] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(752), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10476] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(754), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10487] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(756), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10498] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(758), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10509] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(736), 1, sym_identifier, ACTIONS(742), 1, sym_mutable_specifier, ACTIONS(760), 1, anon_sym_RBRACE, STATE(279), 1, sym_field_pattern, STATE(328), 1, sym__field_identifier, [10528] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(762), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10539] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(764), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10550] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(766), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10561] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(588), 5, anon_sym_LBRACE, anon_sym_COMMA, anon_sym_GT, anon_sym_RPAREN, anon_sym_as, [10572] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(768), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10583] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(592), 5, anon_sym_LBRACE, anon_sym_COMMA, anon_sym_GT, anon_sym_RPAREN, anon_sym_as, [10594] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(770), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10605] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(772), 5, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [10616] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(540), 5, anon_sym_LBRACE, anon_sym_COMMA, anon_sym_GT, anon_sym_RPAREN, anon_sym_as, [10627] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(468), 4, anon_sym_RBRACE, anon_sym_fun, anon_sym_public, anon_sym_use, [10637] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(476), 4, anon_sym_RBRACE, anon_sym_fun, anon_sym_public, anon_sym_use, [10647] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(774), 1, anon_sym_LT, ACTIONS(776), 1, anon_sym_LPAREN, STATE(232), 1, sym_parameters, STATE(265), 1, sym_type_parameters, [10663] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(774), 1, anon_sym_LT, ACTIONS(776), 1, anon_sym_LPAREN, STATE(234), 1, sym_parameters, STATE(273), 1, sym_type_parameters, [10679] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(778), 1, anon_sym_if, STATE(116), 2, sym_if_expression, sym_block, [10693] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(774), 1, anon_sym_LT, ACTIONS(776), 1, anon_sym_LPAREN, STATE(235), 1, sym_parameters, STATE(304), 1, sym_type_parameters, [10709] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(444), 4, anon_sym_RBRACE, anon_sym_fun, anon_sym_public, anon_sym_use, [10719] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(774), 1, anon_sym_LT, ACTIONS(776), 1, anon_sym_LPAREN, STATE(242), 1, sym_parameters, STATE(293), 1, sym_type_parameters, [10735] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(438), 4, anon_sym_RBRACE, anon_sym_fun, anon_sym_public, anon_sym_use, [10745] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(410), 4, anon_sym_RBRACE, anon_sym_fun, anon_sym_public, anon_sym_use, [10755] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(460), 4, anon_sym_RBRACE, anon_sym_fun, anon_sym_public, anon_sym_use, [10765] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(736), 1, sym_identifier, ACTIONS(742), 1, sym_mutable_specifier, STATE(279), 1, sym_field_pattern, STATE(328), 1, sym__field_identifier, [10781] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(780), 1, anon_sym_COMMA, ACTIONS(782), 1, anon_sym_RPAREN, ACTIONS(784), 1, anon_sym_PIPE, STATE(241), 1, aux_sym_tuple_pattern_repeat1, [10797] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(430), 4, anon_sym_RBRACE, anon_sym_fun, anon_sym_public, anon_sym_use, [10807] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(112), 1, anon_sym_LBRACE, ACTIONS(786), 1, anon_sym_if, STATE(46), 2, sym_if_expression, sym_block, [10821] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(452), 4, anon_sym_RBRACE, anon_sym_fun, anon_sym_public, anon_sym_use, [10831] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(480), 4, anon_sym_RBRACE, anon_sym_fun, anon_sym_public, anon_sym_use, [10841] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(784), 1, anon_sym_PIPE, ACTIONS(788), 2, anon_sym_RBRACE, anon_sym_COMMA, [10852] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(790), 1, anon_sym_COMMA, ACTIONS(793), 1, anon_sym_RPAREN, STATE(227), 1, aux_sym_parameters_repeat1, [10865] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(795), 1, anon_sym_COMMA, ACTIONS(797), 1, anon_sym_GT, STATE(230), 1, aux_sym_type_arguments_repeat1, [10878] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(649), 1, anon_sym_LBRACE, ACTIONS(799), 1, anon_sym_COLON, STATE(100), 1, sym_block, [10891] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(665), 1, anon_sym_GT, ACTIONS(801), 1, anon_sym_COMMA, STATE(256), 1, aux_sym_type_arguments_repeat1, [10904] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(635), 1, anon_sym_RPAREN, ACTIONS(803), 1, anon_sym_COMMA, STATE(231), 1, aux_sym_arguments_repeat1, [10917] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(649), 1, anon_sym_LBRACE, ACTIONS(806), 1, anon_sym_COLON, STATE(97), 1, sym_block, [10930] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(649), 1, anon_sym_LBRACE, ACTIONS(808), 1, anon_sym_COLON, STATE(95), 1, sym_block, [10943] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(649), 1, anon_sym_LBRACE, ACTIONS(810), 1, anon_sym_COLON, STATE(81), 1, sym_block, [10956] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(812), 1, anon_sym_COLON, STATE(218), 1, sym_block, [10969] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(220), 1, anon_sym_RPAREN, ACTIONS(814), 1, anon_sym_COMMA, STATE(231), 1, aux_sym_arguments_repeat1, [10982] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(816), 1, anon_sym_COMMA, ACTIONS(818), 1, anon_sym_GT, STATE(243), 1, aux_sym_type_parameters_repeat1, [10995] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(820), 1, anon_sym_COMMA, ACTIONS(822), 1, anon_sym_RPAREN, STATE(244), 1, aux_sym_parameters_repeat1, [11008] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(824), 1, anon_sym_COLON, ACTIONS(600), 2, anon_sym_COMMA, anon_sym_RPAREN, [11019] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(826), 1, anon_sym_COLON, STATE(219), 1, sym_block, [11032] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(370), 1, anon_sym_RPAREN, ACTIONS(828), 1, anon_sym_COMMA, STATE(257), 1, aux_sym_tuple_pattern_repeat1, [11045] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(830), 1, anon_sym_COLON, STATE(209), 1, sym_block, [11058] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(832), 1, anon_sym_COMMA, ACTIONS(834), 1, anon_sym_GT, STATE(258), 1, aux_sym_type_parameters_repeat1, [11071] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(681), 1, anon_sym_RPAREN, ACTIONS(836), 1, anon_sym_COMMA, STATE(227), 1, aux_sym_parameters_repeat1, [11084] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(834), 1, anon_sym_GT, ACTIONS(838), 1, sym_identifier, STATE(272), 1, sym__type_identifier, [11097] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(840), 1, anon_sym_LBRACE, ACTIONS(842), 1, anon_sym_LT2, STATE(332), 1, sym_type_arguments, [11110] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(784), 1, anon_sym_PIPE, ACTIONS(844), 2, anon_sym_RBRACE, anon_sym_COMMA, [11121] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(462), 1, anon_sym_COLON, ACTIONS(846), 2, anon_sym_RBRACE, anon_sym_COMMA, [11132] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(848), 1, anon_sym_RBRACE, ACTIONS(850), 1, anon_sym_COMMA, STATE(255), 1, aux_sym_struct_pattern_repeat1, [11145] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(852), 1, anon_sym_RBRACE, ACTIONS(854), 1, anon_sym_COMMA, STATE(250), 1, aux_sym_struct_pattern_repeat1, [11158] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(838), 1, sym_identifier, ACTIONS(857), 1, anon_sym_GT, STATE(272), 1, sym__type_identifier, [11171] = 3, ACTIONS(3), 1, sym_comment, STATE(347), 1, sym_hex_address, ACTIONS(859), 2, anon_sym_0x, anon_sym_0X, [11182] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(861), 1, sym_identifier, ACTIONS(863), 1, sym_integer_literal, STATE(94), 1, sym__field_identifier, [11195] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(784), 1, anon_sym_PIPE, ACTIONS(865), 2, anon_sym_COMMA, anon_sym_RPAREN, [11206] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(760), 1, anon_sym_RBRACE, ACTIONS(867), 1, anon_sym_COMMA, STATE(250), 1, aux_sym_struct_pattern_repeat1, [11219] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(869), 1, anon_sym_COMMA, ACTIONS(872), 1, anon_sym_GT, STATE(256), 1, aux_sym_type_arguments_repeat1, [11232] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(865), 1, anon_sym_RPAREN, ACTIONS(874), 1, anon_sym_COMMA, STATE(257), 1, aux_sym_tuple_pattern_repeat1, [11245] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(877), 1, anon_sym_COMMA, ACTIONS(880), 1, anon_sym_GT, STATE(258), 1, aux_sym_type_parameters_repeat1, [11258] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(462), 1, anon_sym_COLON, ACTIONS(882), 2, anon_sym_RBRACE, anon_sym_COMMA, [11269] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, ACTIONS(884), 1, anon_sym_COLON, STATE(225), 1, sym_block, [11282] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(886), 1, sym_identifier, STATE(289), 1, sym__type_identifier, [11292] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(888), 1, anon_sym_GT, ACTIONS(890), 1, anon_sym_as, [11302] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(872), 2, anon_sym_COMMA, anon_sym_GT, [11310] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(842), 1, anon_sym_LT2, STATE(124), 1, sym_type_arguments, [11320] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(776), 1, anon_sym_LPAREN, STATE(229), 1, sym_parameters, [11330] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, STATE(222), 1, sym_block, [11340] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(892), 1, anon_sym_LBRACE, STATE(339), 1, sym_module_body, [11350] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(894), 2, anon_sym_COMMA, anon_sym_RPAREN, [11358] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(896), 2, anon_sym_LBRACE, anon_sym_COLON, [11366] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(793), 2, anon_sym_COMMA, anon_sym_RPAREN, [11374] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(784), 1, anon_sym_PIPE, ACTIONS(898), 1, anon_sym_EQ, [11384] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(880), 2, anon_sym_COMMA, anon_sym_GT, [11392] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(776), 1, anon_sym_LPAREN, STATE(233), 1, sym_parameters, [11402] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(112), 1, anon_sym_LBRACE, STATE(40), 1, sym_block, [11412] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, STATE(210), 1, sym_block, [11422] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, STATE(41), 1, sym_block, [11432] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(112), 1, anon_sym_LBRACE, STATE(41), 1, sym_block, [11442] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(112), 1, anon_sym_LBRACE, STATE(45), 1, sym_block, [11452] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(852), 2, anon_sym_RBRACE, anon_sym_COMMA, [11460] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(112), 1, anon_sym_LBRACE, STATE(48), 1, sym_block, [11470] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(838), 1, sym_identifier, STATE(289), 1, sym__type_identifier, [11480] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, STATE(126), 1, sym_block, [11490] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, STATE(80), 1, sym_block, [11500] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(649), 1, anon_sym_LBRACE, STATE(89), 1, sym_block, [11510] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(900), 1, sym_identifier, STATE(343), 1, sym__field_identifier, [11520] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(649), 1, anon_sym_LBRACE, STATE(93), 1, sym_block, [11530] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(649), 1, anon_sym_LBRACE, STATE(87), 1, sym_block, [11540] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(902), 2, anon_sym_LBRACE, anon_sym_COLON, [11548] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(904), 2, anon_sym_LBRACE, anon_sym_LT2, [11556] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, STATE(224), 1, sym_block, [11566] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(649), 1, anon_sym_LBRACE, STATE(99), 1, sym_block, [11576] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(838), 1, sym_identifier, STATE(272), 1, sym__type_identifier, [11586] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(776), 1, anon_sym_LPAREN, STATE(260), 1, sym_parameters, [11596] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(724), 1, anon_sym_COLON_COLON, ACTIONS(906), 1, anon_sym_SEMI, [11606] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(420), 2, anon_sym_COMMA, anon_sym_GT, [11614] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(908), 2, anon_sym_LBRACE, anon_sym_LT2, [11622] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(910), 2, anon_sym_LBRACE, anon_sym_COLON, [11630] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, STATE(127), 1, sym_block, [11640] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(912), 2, anon_sym_LBRACE, anon_sym_COLON, [11648] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, STATE(130), 1, sym_block, [11658] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(914), 1, sym_integer_literal, ACTIONS(916), 1, sym_float_literal, [11668] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(918), 1, sym_identifier, STATE(296), 1, sym__type_identifier, [11678] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(838), 1, sym_identifier, STATE(237), 1, sym__type_identifier, [11688] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(776), 1, anon_sym_LPAREN, STATE(240), 1, sym_parameters, [11698] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LBRACE, STATE(217), 1, sym_block, [11708] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(920), 1, anon_sym_RPAREN, [11715] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(922), 1, sym_identifier, [11722] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(924), 1, anon_sym_LPAREN, [11729] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(926), 1, anon_sym_RBRACK, [11736] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(928), 1, anon_sym_LBRACK, [11743] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(930), 1, sym_identifier, [11750] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(932), 1, ts_builtin_sym_end, [11757] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(934), 1, anon_sym_SEMI, [11764] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(936), 1, anon_sym_RBRACK, [11771] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(938), 1, anon_sym_RPAREN, [11778] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(623), 1, anon_sym_RPAREN, [11785] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(940), 1, sym_identifier, [11792] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(942), 1, anon_sym_COLON_COLON, [11799] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(822), 1, anon_sym_RPAREN, [11806] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(944), 1, anon_sym_RPAREN, [11813] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(946), 1, anon_sym_RPAREN, [11820] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(948), 1, anon_sym_COLON_COLON, [11827] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(340), 1, anon_sym_RBRACK, [11834] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(950), 1, anon_sym_LPAREN, [11841] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(848), 1, anon_sym_RBRACE, [11848] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(782), 1, anon_sym_RPAREN, [11855] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(952), 1, anon_sym_LPAREN, [11862] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(954), 1, anon_sym_COLON, [11869] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(724), 1, anon_sym_COLON_COLON, [11876] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(956), 1, anon_sym_SEMI, [11883] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(888), 1, anon_sym_GT, [11890] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(958), 1, anon_sym_COLON_COLON, [11897] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(960), 1, anon_sym_fun, [11904] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(962), 1, anon_sym_fun, [11911] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(964), 1, anon_sym_COLON_COLON, [11918] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(966), 1, sym_identifier, [11925] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(968), 1, anon_sym_LPAREN, [11932] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(970), 1, ts_builtin_sym_end, [11939] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(972), 1, ts_builtin_sym_end, [11946] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(412), 1, anon_sym_COLON_COLON, [11953] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(974), 1, anon_sym_GT, [11960] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(976), 1, anon_sym_LPAREN, [11967] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(978), 1, anon_sym_COLON, [11974] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(336), 1, anon_sym_RBRACK, [11981] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(980), 1, sym_identifier, [11988] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(982), 1, anon_sym_COLON_COLON, [11995] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(984), 1, anon_sym_COLON_COLON, [12002] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(986), 1, anon_sym_RPAREN, [12009] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(988), 1, anon_sym_RPAREN, [12016] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(990), 1, sym_identifier, [12023] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(992), 1, sym_identifier, [12030] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(994), 1, aux_sym_hex_address_token1, [12037] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(996), 1, ts_builtin_sym_end, [12044] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(998), 1, anon_sym_fun, [12051] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1000), 1, anon_sym_LPAREN, [12058] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1002), 1, anon_sym_LPAREN, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(3)] = 0, [SMALL_STATE(4)] = 125, [SMALL_STATE(5)] = 250, [SMALL_STATE(6)] = 375, [SMALL_STATE(7)] = 500, [SMALL_STATE(8)] = 625, [SMALL_STATE(9)] = 750, [SMALL_STATE(10)] = 875, [SMALL_STATE(11)] = 985, [SMALL_STATE(12)] = 1092, [SMALL_STATE(13)] = 1199, [SMALL_STATE(14)] = 1306, [SMALL_STATE(15)] = 1413, [SMALL_STATE(16)] = 1520, [SMALL_STATE(17)] = 1626, [SMALL_STATE(18)] = 1732, [SMALL_STATE(19)] = 1838, [SMALL_STATE(20)] = 1944, [SMALL_STATE(21)] = 2050, [SMALL_STATE(22)] = 2156, [SMALL_STATE(23)] = 2259, [SMALL_STATE(24)] = 2362, [SMALL_STATE(25)] = 2465, [SMALL_STATE(26)] = 2565, [SMALL_STATE(27)] = 2665, [SMALL_STATE(28)] = 2765, [SMALL_STATE(29)] = 2865, [SMALL_STATE(30)] = 2965, [SMALL_STATE(31)] = 3065, [SMALL_STATE(32)] = 3165, [SMALL_STATE(33)] = 3265, [SMALL_STATE(34)] = 3365, [SMALL_STATE(35)] = 3465, [SMALL_STATE(36)] = 3565, [SMALL_STATE(37)] = 3665, [SMALL_STATE(38)] = 3765, [SMALL_STATE(39)] = 3865, [SMALL_STATE(40)] = 3965, [SMALL_STATE(41)] = 4026, [SMALL_STATE(42)] = 4083, [SMALL_STATE(43)] = 4139, [SMALL_STATE(44)] = 4195, [SMALL_STATE(45)] = 4254, [SMALL_STATE(46)] = 4309, [SMALL_STATE(47)] = 4364, [SMALL_STATE(48)] = 4419, [SMALL_STATE(49)] = 4474, [SMALL_STATE(50)] = 4540, [SMALL_STATE(51)] = 4604, [SMALL_STATE(52)] = 4668, [SMALL_STATE(53)] = 4732, [SMALL_STATE(54)] = 4796, [SMALL_STATE(55)] = 4860, [SMALL_STATE(56)] = 4924, [SMALL_STATE(57)] = 4988, [SMALL_STATE(58)] = 5052, [SMALL_STATE(59)] = 5116, [SMALL_STATE(60)] = 5180, [SMALL_STATE(61)] = 5244, [SMALL_STATE(62)] = 5308, [SMALL_STATE(63)] = 5357, [SMALL_STATE(64)] = 5406, [SMALL_STATE(65)] = 5455, [SMALL_STATE(66)] = 5533, [SMALL_STATE(67)] = 5608, [SMALL_STATE(68)] = 5683, [SMALL_STATE(69)] = 5755, [SMALL_STATE(70)] = 5827, [SMALL_STATE(71)] = 5899, [SMALL_STATE(72)] = 5971, [SMALL_STATE(73)] = 6043, [SMALL_STATE(74)] = 6115, [SMALL_STATE(75)] = 6187, [SMALL_STATE(76)] = 6259, [SMALL_STATE(77)] = 6298, [SMALL_STATE(78)] = 6337, [SMALL_STATE(79)] = 6374, [SMALL_STATE(80)] = 6411, [SMALL_STATE(81)] = 6451, [SMALL_STATE(82)] = 6486, [SMALL_STATE(83)] = 6523, [SMALL_STATE(84)] = 6562, [SMALL_STATE(85)] = 6597, [SMALL_STATE(86)] = 6634, [SMALL_STATE(87)] = 6669, [SMALL_STATE(88)] = 6704, [SMALL_STATE(89)] = 6739, [SMALL_STATE(90)] = 6774, [SMALL_STATE(91)] = 6811, [SMALL_STATE(92)] = 6846, [SMALL_STATE(93)] = 6881, [SMALL_STATE(94)] = 6916, [SMALL_STATE(95)] = 6951, [SMALL_STATE(96)] = 6986, [SMALL_STATE(97)] = 7021, [SMALL_STATE(98)] = 7056, [SMALL_STATE(99)] = 7091, [SMALL_STATE(100)] = 7126, [SMALL_STATE(101)] = 7161, [SMALL_STATE(102)] = 7195, [SMALL_STATE(103)] = 7229, [SMALL_STATE(104)] = 7263, [SMALL_STATE(105)] = 7319, [SMALL_STATE(106)] = 7355, [SMALL_STATE(107)] = 7391, [SMALL_STATE(108)] = 7451, [SMALL_STATE(109)] = 7497, [SMALL_STATE(110)] = 7531, [SMALL_STATE(111)] = 7565, [SMALL_STATE(112)] = 7599, [SMALL_STATE(113)] = 7633, [SMALL_STATE(114)] = 7685, [SMALL_STATE(115)] = 7719, [SMALL_STATE(116)] = 7777, [SMALL_STATE(117)] = 7811, [SMALL_STATE(118)] = 7871, [SMALL_STATE(119)] = 7905, [SMALL_STATE(120)] = 7939, [SMALL_STATE(121)] = 7975, [SMALL_STATE(122)] = 8009, [SMALL_STATE(123)] = 8043, [SMALL_STATE(124)] = 8077, [SMALL_STATE(125)] = 8111, [SMALL_STATE(126)] = 8145, [SMALL_STATE(127)] = 8179, [SMALL_STATE(128)] = 8213, [SMALL_STATE(129)] = 8247, [SMALL_STATE(130)] = 8281, [SMALL_STATE(131)] = 8315, [SMALL_STATE(132)] = 8349, [SMALL_STATE(133)] = 8387, [SMALL_STATE(134)] = 8429, [SMALL_STATE(135)] = 8473, [SMALL_STATE(136)] = 8521, [SMALL_STATE(137)] = 8571, [SMALL_STATE(138)] = 8605, [SMALL_STATE(139)] = 8639, [SMALL_STATE(140)] = 8677, [SMALL_STATE(141)] = 8709, [SMALL_STATE(142)] = 8771, [SMALL_STATE(143)] = 8803, [SMALL_STATE(144)] = 8862, [SMALL_STATE(145)] = 8921, [SMALL_STATE(146)] = 8980, [SMALL_STATE(147)] = 9037, [SMALL_STATE(148)] = 9096, [SMALL_STATE(149)] = 9152, [SMALL_STATE(150)] = 9208, [SMALL_STATE(151)] = 9264, [SMALL_STATE(152)] = 9320, [SMALL_STATE(153)] = 9376, [SMALL_STATE(154)] = 9432, [SMALL_STATE(155)] = 9477, [SMALL_STATE(156)] = 9522, [SMALL_STATE(157)] = 9564, [SMALL_STATE(158)] = 9606, [SMALL_STATE(159)] = 9642, [SMALL_STATE(160)] = 9675, [SMALL_STATE(161)] = 9708, [SMALL_STATE(162)] = 9738, [SMALL_STATE(163)] = 9767, [SMALL_STATE(164)] = 9793, [SMALL_STATE(165)] = 9821, [SMALL_STATE(166)] = 9849, [SMALL_STATE(167)] = 9875, [SMALL_STATE(168)] = 9901, [SMALL_STATE(169)] = 9927, [SMALL_STATE(170)] = 9953, [SMALL_STATE(171)] = 9979, [SMALL_STATE(172)] = 10005, [SMALL_STATE(173)] = 10031, [SMALL_STATE(174)] = 10057, [SMALL_STATE(175)] = 10083, [SMALL_STATE(176)] = 10109, [SMALL_STATE(177)] = 10135, [SMALL_STATE(178)] = 10161, [SMALL_STATE(179)] = 10189, [SMALL_STATE(180)] = 10214, [SMALL_STATE(181)] = 10239, [SMALL_STATE(182)] = 10264, [SMALL_STATE(183)] = 10282, [SMALL_STATE(184)] = 10298, [SMALL_STATE(185)] = 10314, [SMALL_STATE(186)] = 10339, [SMALL_STATE(187)] = 10352, [SMALL_STATE(188)] = 10365, [SMALL_STATE(189)] = 10387, [SMALL_STATE(190)] = 10399, [SMALL_STATE(191)] = 10413, [SMALL_STATE(192)] = 10424, [SMALL_STATE(193)] = 10435, [SMALL_STATE(194)] = 10446, [SMALL_STATE(195)] = 10465, [SMALL_STATE(196)] = 10476, [SMALL_STATE(197)] = 10487, [SMALL_STATE(198)] = 10498, [SMALL_STATE(199)] = 10509, [SMALL_STATE(200)] = 10528, [SMALL_STATE(201)] = 10539, [SMALL_STATE(202)] = 10550, [SMALL_STATE(203)] = 10561, [SMALL_STATE(204)] = 10572, [SMALL_STATE(205)] = 10583, [SMALL_STATE(206)] = 10594, [SMALL_STATE(207)] = 10605, [SMALL_STATE(208)] = 10616, [SMALL_STATE(209)] = 10627, [SMALL_STATE(210)] = 10637, [SMALL_STATE(211)] = 10647, [SMALL_STATE(212)] = 10663, [SMALL_STATE(213)] = 10679, [SMALL_STATE(214)] = 10693, [SMALL_STATE(215)] = 10709, [SMALL_STATE(216)] = 10719, [SMALL_STATE(217)] = 10735, [SMALL_STATE(218)] = 10745, [SMALL_STATE(219)] = 10755, [SMALL_STATE(220)] = 10765, [SMALL_STATE(221)] = 10781, [SMALL_STATE(222)] = 10797, [SMALL_STATE(223)] = 10807, [SMALL_STATE(224)] = 10821, [SMALL_STATE(225)] = 10831, [SMALL_STATE(226)] = 10841, [SMALL_STATE(227)] = 10852, [SMALL_STATE(228)] = 10865, [SMALL_STATE(229)] = 10878, [SMALL_STATE(230)] = 10891, [SMALL_STATE(231)] = 10904, [SMALL_STATE(232)] = 10917, [SMALL_STATE(233)] = 10930, [SMALL_STATE(234)] = 10943, [SMALL_STATE(235)] = 10956, [SMALL_STATE(236)] = 10969, [SMALL_STATE(237)] = 10982, [SMALL_STATE(238)] = 10995, [SMALL_STATE(239)] = 11008, [SMALL_STATE(240)] = 11019, [SMALL_STATE(241)] = 11032, [SMALL_STATE(242)] = 11045, [SMALL_STATE(243)] = 11058, [SMALL_STATE(244)] = 11071, [SMALL_STATE(245)] = 11084, [SMALL_STATE(246)] = 11097, [SMALL_STATE(247)] = 11110, [SMALL_STATE(248)] = 11121, [SMALL_STATE(249)] = 11132, [SMALL_STATE(250)] = 11145, [SMALL_STATE(251)] = 11158, [SMALL_STATE(252)] = 11171, [SMALL_STATE(253)] = 11182, [SMALL_STATE(254)] = 11195, [SMALL_STATE(255)] = 11206, [SMALL_STATE(256)] = 11219, [SMALL_STATE(257)] = 11232, [SMALL_STATE(258)] = 11245, [SMALL_STATE(259)] = 11258, [SMALL_STATE(260)] = 11269, [SMALL_STATE(261)] = 11282, [SMALL_STATE(262)] = 11292, [SMALL_STATE(263)] = 11302, [SMALL_STATE(264)] = 11310, [SMALL_STATE(265)] = 11320, [SMALL_STATE(266)] = 11330, [SMALL_STATE(267)] = 11340, [SMALL_STATE(268)] = 11350, [SMALL_STATE(269)] = 11358, [SMALL_STATE(270)] = 11366, [SMALL_STATE(271)] = 11374, [SMALL_STATE(272)] = 11384, [SMALL_STATE(273)] = 11392, [SMALL_STATE(274)] = 11402, [SMALL_STATE(275)] = 11412, [SMALL_STATE(276)] = 11422, [SMALL_STATE(277)] = 11432, [SMALL_STATE(278)] = 11442, [SMALL_STATE(279)] = 11452, [SMALL_STATE(280)] = 11460, [SMALL_STATE(281)] = 11470, [SMALL_STATE(282)] = 11480, [SMALL_STATE(283)] = 11490, [SMALL_STATE(284)] = 11500, [SMALL_STATE(285)] = 11510, [SMALL_STATE(286)] = 11520, [SMALL_STATE(287)] = 11530, [SMALL_STATE(288)] = 11540, [SMALL_STATE(289)] = 11548, [SMALL_STATE(290)] = 11556, [SMALL_STATE(291)] = 11566, [SMALL_STATE(292)] = 11576, [SMALL_STATE(293)] = 11586, [SMALL_STATE(294)] = 11596, [SMALL_STATE(295)] = 11606, [SMALL_STATE(296)] = 11614, [SMALL_STATE(297)] = 11622, [SMALL_STATE(298)] = 11630, [SMALL_STATE(299)] = 11640, [SMALL_STATE(300)] = 11648, [SMALL_STATE(301)] = 11658, [SMALL_STATE(302)] = 11668, [SMALL_STATE(303)] = 11678, [SMALL_STATE(304)] = 11688, [SMALL_STATE(305)] = 11698, [SMALL_STATE(306)] = 11708, [SMALL_STATE(307)] = 11715, [SMALL_STATE(308)] = 11722, [SMALL_STATE(309)] = 11729, [SMALL_STATE(310)] = 11736, [SMALL_STATE(311)] = 11743, [SMALL_STATE(312)] = 11750, [SMALL_STATE(313)] = 11757, [SMALL_STATE(314)] = 11764, [SMALL_STATE(315)] = 11771, [SMALL_STATE(316)] = 11778, [SMALL_STATE(317)] = 11785, [SMALL_STATE(318)] = 11792, [SMALL_STATE(319)] = 11799, [SMALL_STATE(320)] = 11806, [SMALL_STATE(321)] = 11813, [SMALL_STATE(322)] = 11820, [SMALL_STATE(323)] = 11827, [SMALL_STATE(324)] = 11834, [SMALL_STATE(325)] = 11841, [SMALL_STATE(326)] = 11848, [SMALL_STATE(327)] = 11855, [SMALL_STATE(328)] = 11862, [SMALL_STATE(329)] = 11869, [SMALL_STATE(330)] = 11876, [SMALL_STATE(331)] = 11883, [SMALL_STATE(332)] = 11890, [SMALL_STATE(333)] = 11897, [SMALL_STATE(334)] = 11904, [SMALL_STATE(335)] = 11911, [SMALL_STATE(336)] = 11918, [SMALL_STATE(337)] = 11925, [SMALL_STATE(338)] = 11932, [SMALL_STATE(339)] = 11939, [SMALL_STATE(340)] = 11946, [SMALL_STATE(341)] = 11953, [SMALL_STATE(342)] = 11960, [SMALL_STATE(343)] = 11967, [SMALL_STATE(344)] = 11974, [SMALL_STATE(345)] = 11981, [SMALL_STATE(346)] = 11988, [SMALL_STATE(347)] = 11995, [SMALL_STATE(348)] = 12002, [SMALL_STATE(349)] = 12009, [SMALL_STATE(350)] = 12016, [SMALL_STATE(351)] = 12023, [SMALL_STATE(352)] = 12030, [SMALL_STATE(353)] = 12037, [SMALL_STATE(354)] = 12044, [SMALL_STATE(355)] = 12051, [SMALL_STATE(356)] = 12058, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85), [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), [13] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression, 1), [15] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_expression, 1), [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(162), [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(90), [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(22), [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(36), [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2), [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(355), [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(356), [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(300), [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(298), [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(122), [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(121), [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(83), [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(84), [47] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(85), [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(307), [53] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(5), [56] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), [58] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(350), [61] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(334), [64] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(162), [67] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(10), [70] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(178), [73] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(90), [76] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(22), [79] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(36), [82] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(2), [85] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(327), [88] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(337), [91] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(278), [94] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(277), [97] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(122), [100] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(121), [103] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(83), [106] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(83), [109] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(84), [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), [114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), [116] = {.entry = {.count = 1, .reusable = false}}, SHIFT(350), [118] = {.entry = {.count = 1, .reusable = false}}, SHIFT(334), [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), [122] = {.entry = {.count = 1, .reusable = false}}, SHIFT(178), [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), [126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), [128] = {.entry = {.count = 1, .reusable = false}}, SHIFT(327), [130] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), [132] = {.entry = {.count = 1, .reusable = false}}, SHIFT(278), [134] = {.entry = {.count = 1, .reusable = false}}, SHIFT(277), [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), [140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), [144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), [146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), [150] = {.entry = {.count = 1, .reusable = false}}, SHIFT(69), [152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), [156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), [158] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(85), [161] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(307), [164] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(4), [167] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(162), [170] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(10), [173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), [175] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(90), [178] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(22), [181] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(36), [184] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(2), [187] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(355), [190] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(356), [193] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(300), [196] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(298), [199] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(122), [202] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(121), [205] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(83), [208] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(83), [211] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), SHIFT_REPEAT(84), [214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), [216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), [218] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), [220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), [222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), [224] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 5, .production_id = 29), [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 5, .production_id = 29), [228] = {.entry = {.count = 1, .reusable = false}}, SHIFT(223), [230] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_block, 2, .production_id = 13), [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_block, 2, .production_id = 13), [234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2), [236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2), [238] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3), [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3), [242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 1), [244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1), [246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_except_range, 1), [248] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_except_range, 1), [250] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_expression, 2, .production_id = 13), [252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_expression, 2, .production_id = 13), [254] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 2), [256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 2), [258] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 6, .production_id = 34), [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 6, .production_id = 34), [262] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_expression, 5, .production_id = 30), [264] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_expression, 5, .production_id = 30), [266] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2), SHIFT_REPEAT(51), [269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2), [271] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2), SHIFT_REPEAT(61), [274] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2), SHIFT_REPEAT(60), [277] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2), SHIFT_REPEAT(49), [280] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2), SHIFT_REPEAT(62), [283] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2), SHIFT_REPEAT(49), [286] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), [294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), [298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49), [302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), [304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), [306] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56), [308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), [312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), [314] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), [318] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), [320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), [322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(53), [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), [326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(59), [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), [330] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__non_special_token, 1, .production_id = 2), [334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__non_special_token, 1, .production_id = 2), [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delim_token_tree, 3), [338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delim_token_tree, 3), [340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delim_token_tree, 2), [342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delim_token_tree, 2), [344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(182), [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), [352] = {.entry = {.count = 1, .reusable = false}}, SHIFT(221), [354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), [356] = {.entry = {.count = 1, .reusable = false}}, SHIFT(190), [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), [360] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74), [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), [364] = {.entry = {.count = 1, .reusable = false}}, SHIFT(276), [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), [368] = {.entry = {.count = 1, .reusable = false}}, SHIFT(254), [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), [372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), [376] = {.entry = {.count = 1, .reusable = false}}, SHIFT(226), [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), [380] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271), [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), [384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(204), [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), [388] = {.entry = {.count = 1, .reusable = false}}, SHIFT(247), [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), [392] = {.entry = {.count = 1, .reusable = false}}, SHIFT(202), [394] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75), [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), [398] = {.entry = {.count = 1, .reusable = false}}, SHIFT(198), [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), [402] = {.entry = {.count = 1, .reusable = false}}, SHIFT(206), [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), [408] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 4, .production_id = 5), [410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 4, .production_id = 5), [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), [414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), [416] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1), [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), [420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1), [422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_literal, 1), [424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 5), [426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 5), [428] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 7, .production_id = 17), [430] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 7, .production_id = 17), [432] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 2), [434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2), [436] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 8, .production_id = 26), [438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 8, .production_id = 26), [440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__path, 1), [442] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_use_declaration, 3, .production_id = 4), [444] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 3, .production_id = 4), [446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 4), [448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 4), [450] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 7, .production_id = 25), [452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 7, .production_id = 25), [454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_expression, 3, .production_id = 23), [456] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_expression, 3, .production_id = 23), [458] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 5, .production_id = 8), [460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 5, .production_id = 8), [462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__field_identifier, 1, .production_id = 24), [464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__field_identifier, 1, .production_id = 24), [466] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 5, .production_id = 10), [468] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 5, .production_id = 10), [470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 3), [472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 3), [474] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 6, .production_id = 15), [476] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 6, .production_id = 15), [478] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 6, .production_id = 16), [480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 6, .production_id = 16), [482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_cast_expression, 3, .production_id = 22), [484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_cast_expression, 3, .production_id = 22), [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 6), [488] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 6), [490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unit_expression, 2), [492] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unit_expression, 2), [494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 21), [496] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 21), [498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(30), [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), [502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(31), [504] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), [514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), [516] = {.entry = {.count = 1, .reusable = false}}, SHIFT(39), [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), [520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_expression, 2, .production_id = 12), [522] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reference_expression, 2, .production_id = 12), [524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2), [526] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2), [528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression, 2), [530] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_expression, 2), [532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), [534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), [536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 5), [538] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 5), [540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_type, 2, .production_id = 6), [542] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reference_type, 2, .production_id = 6), [544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 7), [546] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 7), [548] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 5), [550] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 5), [552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 2, .production_id = 14), [554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 2, .production_id = 14), [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, .production_id = 20), [558] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, .production_id = 20), [560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 4), [562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 4), [564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 2), [566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 2), [568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_expression, 3, .production_id = 18), [570] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reference_expression, 3, .production_id = 18), [572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_expression, 1), [574] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continue_expression, 1), [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_expression, 1), [578] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_break_expression, 1), [580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 3), [582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 3), [584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_function, 3, .production_id = 19), [586] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_function, 3, .production_id = 19), [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 1, .production_id = 2), [590] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type, 1, .production_id = 2), [592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unit_type, 2), [594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unit_type, 2), [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 4), [598] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 4), [600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_identifier, 1, .production_id = 3), [602] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type_identifier, 1, .production_id = 3), [604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3), [606] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3), [608] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2), [610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2), [612] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2), SHIFT_REPEAT(310), [615] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_item, 4), [617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_item, 4), [619] = {.entry = {.count = 1, .reusable = false}}, SHIFT(29), [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), [623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), [625] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat2, 2), [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), [629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), [631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), [633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), [635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2), [637] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_condition, 4, .production_id = 33), [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), [641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, .production_id = 18), [643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__condition, 1), [645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), [647] = {.entry = {.count = 1, .reusable = false}}, SHIFT(189), [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), [651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), [655] = {.entry = {.count = 1, .reusable = false}}, SHIFT(203), [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), [659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(263), [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), [663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(295), [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), [667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(228), [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), [671] = {.entry = {.count = 1, .reusable = false}}, SHIFT(239), [673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), [675] = {.entry = {.count = 1, .reusable = false}}, SHIFT(238), [677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), [679] = {.entry = {.count = 1, .reusable = false}}, SHIFT(270), [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), [685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(294), [687] = {.entry = {.count = 1, .reusable = false}}, SHIFT(185), [689] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), [691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), [693] = {.entry = {.count = 1, .reusable = false}}, SHIFT(128), [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), [707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_body_repeat1, 2), [709] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_body_repeat1, 2), SHIFT_REPEAT(336), [712] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_body_repeat1, 2), SHIFT_REPEAT(334), [715] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_body_repeat1, 2), SHIFT_REPEAT(164), [718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__pattern, 1), [720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_identifier, 2, .production_id = 1), [722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_identifier, 3, .production_id = 7), [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), [726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), [728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), [730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1), [732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), [734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), [736] = {.entry = {.count = 1, .reusable = false}}, SHIFT(248), [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), [742] = {.entry = {.count = 1, .reusable = false}}, SHIFT(285), [744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 3, .production_id = 31), [746] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 6, .production_id = 31), [748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_negative_literal, 2), [750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), [752] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 5, .production_id = 31), [754] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 5), [756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3), [758] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mut_pattern, 2), [760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), [762] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 4, .production_id = 31), [764] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 4), [766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_pattern, 2), [768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_or_pattern, 3), [770] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_pattern, 3), [772] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2), [774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), [778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), [780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), [782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), [788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 3, .production_id = 36), [790] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), SHIFT_REPEAT(161), [793] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), [803] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2), SHIFT_REPEAT(27), [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), [808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), [814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), [816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), [830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), [832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), [836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), [838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), [842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), [844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 4, .production_id = 37), [846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 1, .production_id = 32), [848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), [850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), [852] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_pattern_repeat1, 2), [854] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_pattern_repeat1, 2), SHIFT_REPEAT(220), [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), [865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2), [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), [869] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_arguments_repeat1, 2), SHIFT_REPEAT(157), [872] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_arguments_repeat1, 2), [874] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2), SHIFT_REPEAT(72), [877] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2), SHIFT_REPEAT(292), [880] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2), [882] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 2, .production_id = 35), [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), [894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3, .production_id = 11), [896] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 4), [898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), [900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), [902] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3), [904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier, 3, .production_id = 7), [906] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__use_clause, 1), [908] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier, 2, .production_id = 1), [910] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 5), [912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), [914] = {.entry = {.count = 1, .reusable = false}}, SHIFT(193), [916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), [920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), [922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), [924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3), [926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), [928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), [930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), [932] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_body, 3), [934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), [936] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2, .production_id = 27), [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), [940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), [942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), [944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), [946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), [948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bracketed_type, 3), [950] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 5), [952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), [954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), [956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), [958] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 2, .production_id = 28), [960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), [962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility_modifier, 1), [964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), [966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), [968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), [970] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_body, 2), [972] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 5), [974] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualified_type, 3, .production_id = 9), [976] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4), [978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), [980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), [982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hex_address, 2), [984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), [986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), [988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), [994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), [996] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), [998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), [1002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), }; #ifdef __cplusplus extern "C" { #endif #ifdef _WIN32 #define extern __declspec(dllexport) #endif extern const TSLanguage *tree_sitter_move(void) { static const TSLanguage language = { .version = LANGUAGE_VERSION, .symbol_count = SYMBOL_COUNT, .alias_count = ALIAS_COUNT, .token_count = TOKEN_COUNT, .external_token_count = EXTERNAL_TOKEN_COUNT, .state_count = STATE_COUNT, .large_state_count = LARGE_STATE_COUNT, .production_id_count = PRODUCTION_ID_COUNT, .field_count = FIELD_COUNT, .max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH, .parse_table = &ts_parse_table[0][0], .small_parse_table = ts_small_parse_table, .small_parse_table_map = ts_small_parse_table_map, .parse_actions = ts_parse_actions, .symbol_names = ts_symbol_names, .field_names = ts_field_names, .field_map_slices = ts_field_map_slices, .field_map_entries = ts_field_map_entries, .symbol_metadata = ts_symbol_metadata, .public_symbol_map = ts_symbol_map, .alias_map = ts_non_terminal_alias_map, .alias_sequences = &ts_alias_sequences[0][0], .lex_modes = ts_lex_modes, .lex_fn = ts_lex, .keyword_lex_fn = ts_lex_keywords, .keyword_capture_token = sym_identifier, .primary_state_ids = ts_primary_state_ids, }; return &language; } #ifdef __cplusplus } #endif