#include "tree_sitter/parser.h" #if defined(__GNUC__) || defined(__clang__) #pragma GCC diagnostic ignored "-Wmissing-field-initializers" #endif #define LANGUAGE_VERSION 14 #define STATE_COUNT 2202 #define LARGE_STATE_COUNT 490 #define SYMBOL_COUNT 301 #define ALIAS_COUNT 5 #define TOKEN_COUNT 127 #define EXTERNAL_TOKEN_COUNT 4 #define FIELD_COUNT 28 #define MAX_ALIAS_SEQUENCE_LENGTH 10 #define PRODUCTION_ID_COUNT 205 enum ts_symbol_identifiers { sym_identifier = 1, anon_sym_SEMI = 2, anon_sym_u8 = 3, anon_sym_i8 = 4, anon_sym_u16 = 5, anon_sym_i16 = 6, anon_sym_u32 = 7, anon_sym_i32 = 8, anon_sym_u64 = 9, anon_sym_i64 = 10, anon_sym_u128 = 11, anon_sym_i128 = 12, anon_sym_u256 = 13, anon_sym_i256 = 14, anon_sym_b256 = 15, anon_sym_isize = 16, anon_sym_usize = 17, anon_sym_f32 = 18, anon_sym_f64 = 19, anon_sym_bool = 20, anon_sym_char = 21, anon_sym_str = 22, anon_sym_LBRACK = 23, anon_sym_RBRACK = 24, anon_sym_contract = 25, anon_sym_script = 26, anon_sym_predicate = 27, anon_sym_library = 28, anon_sym_SPACE = 29, aux_sym__non_special_token_token1 = 30, anon_sym_SQUOTE = 31, anon_sym_abi = 32, anon_sym_as = 33, anon_sym_break = 34, anon_sym_configurable = 35, anon_sym_const = 36, anon_sym_continue = 37, anon_sym_default = 38, anon_sym_mod = 39, anon_sym_enum = 40, anon_sym_fn = 41, anon_sym_for = 42, anon_sym_if = 43, anon_sym_impl = 44, anon_sym_let = 45, anon_sym_match = 46, anon_sym_pub = 47, anon_sym_return = 48, anon_sym_storage = 49, anon_sym_struct = 50, anon_sym_trait = 51, anon_sym_type = 52, anon_sym_use = 53, anon_sym_where = 54, anon_sym_while = 55, anon_sym_POUND = 56, anon_sym_COMMA = 57, anon_sym_BANG = 58, anon_sym_EQ = 59, anon_sym_LBRACE = 60, anon_sym_RBRACE = 61, anon_sym_COLON = 62, anon_sym_LPAREN = 63, anon_sym_RPAREN = 64, anon_sym_asm = 65, anon_sym_DASH_GT = 66, anon_sym_PLUS = 67, anon_sym_QMARK = 68, anon_sym_LT = 69, anon_sym_GT = 70, anon_sym_else = 71, anon_sym_COLON_COLON = 72, anon_sym_STAR = 73, anon_sym__ = 74, anon_sym_AMP = 75, anon_sym_ref = 76, anon_sym_DOT_DOT_DOT = 77, anon_sym_in = 78, anon_sym_LT2 = 79, sym_mutable_specifier = 80, anon_sym_DOLLAR = 81, anon_sym_DOT_DOT = 82, anon_sym_DOT_DOT_EQ = 83, anon_sym_DASH = 84, anon_sym_AMP_AMP = 85, anon_sym_PIPE_PIPE = 86, anon_sym_PIPE = 87, anon_sym_CARET = 88, anon_sym_EQ_EQ = 89, anon_sym_BANG_EQ = 90, anon_sym_LT_EQ = 91, anon_sym_GT_EQ = 92, anon_sym_LT_LT = 93, anon_sym_GT_GT = 94, anon_sym_SLASH = 95, anon_sym_PERCENT = 96, anon_sym_PLUS_EQ = 97, anon_sym_DASH_EQ = 98, anon_sym_STAR_EQ = 99, anon_sym_SLASH_EQ = 100, anon_sym_PERCENT_EQ = 101, anon_sym_AMP_EQ = 102, anon_sym_PIPE_EQ = 103, anon_sym_CARET_EQ = 104, anon_sym_LT_LT_EQ = 105, anon_sym_GT_GT_EQ = 106, anon_sym_yield = 107, anon_sym_EQ_GT = 108, anon_sym_move = 109, anon_sym_DOT = 110, anon_sym_deref = 111, anon_sym_AT = 112, sym_integer_literal = 113, aux_sym_string_literal_token1 = 114, anon_sym_DQUOTE = 115, sym_char_literal = 116, sym_escape_sequence = 117, anon_sym_true = 118, anon_sym_false = 119, sym_line_comment = 120, sym_self = 121, sym_metavariable = 122, sym__string_content = 123, sym_raw_string_literal = 124, sym_float_literal = 125, sym_block_comment = 126, sym_source_file = 127, sym__statement = 128, sym_empty_statement = 129, sym_primitive_type = 130, sym_program_type = 131, sym_expression_statement = 132, sym_attribute_item = 133, sym_inner_attribute_item = 134, sym_attribute = 135, sym_mod_item = 136, sym_declaration_list = 137, sym_struct_item = 138, sym_enum_item = 139, sym_enum_variant_list = 140, sym_enum_variant = 141, sym_configurable_item = 142, sym_storage_item = 143, sym_storage_content_list = 144, sym_storage_content = 145, sym_field_declaration_list = 146, sym_field_declaration = 147, sym_ordered_field_declaration_list = 148, sym_const_item = 149, sym_asm_item = 150, sym_type_item = 151, sym_function_item = 152, sym_function_signature_item = 153, sym_function_modifiers = 154, sym_where_clause = 155, sym_where_predicate = 156, sym_impl_item = 157, sym_abi_item = 158, sym_trait_item = 159, sym_trait_bounds = 160, sym_higher_ranked_trait_bound = 161, sym_removed_trait_bound = 162, sym_type_parameters = 163, sym_const_parameter = 164, sym_constrained_type_parameter = 165, sym_optional_type_parameter = 166, sym_let_declaration = 167, sym_use_declaration = 168, sym__use_clause = 169, sym_scoped_use_list = 170, sym_use_list = 171, sym_use_as_clause = 172, sym_use_wildcard = 173, sym_parameters = 174, sym_self_parameter = 175, sym_variadic_parameter = 176, sym_parameter = 177, sym_asm_parameters = 178, sym_asm_parameter = 179, sym_visibility_modifier = 180, sym__type = 181, sym_bracketed_type = 182, sym_qualified_type = 183, sym_array_type = 184, sym_function_type = 185, sym_tuple_type = 186, sym_unit_type = 187, sym_generic_function = 188, sym_generic_type = 189, sym_generic_type_with_turbofish = 190, sym_bounded_type = 191, sym_type_arguments = 192, sym_type_binding = 193, sym_reference_type = 194, sym_pointer_type = 195, sym_empty_type = 196, sym_abstract_type = 197, sym__expression_except_range = 198, sym__expression = 199, sym_delim_token_tree = 200, sym__delim_tokens = 201, sym__non_delim_token = 202, sym_scoped_identifier = 203, sym_scoped_type_identifier_in_expression_position = 204, sym_scoped_type_identifier = 205, sym_range_expression = 206, sym_unary_expression = 207, sym_try_expression = 208, sym_reference_expression = 209, sym_binary_expression = 210, sym_assignment_expression = 211, sym_compound_assignment_expr = 212, sym_type_cast_expression = 213, sym_return_expression = 214, sym_yield_expression = 215, sym_call_expression = 216, sym_abi_call_expression = 217, sym_abi_instance_expression = 218, sym_arguments = 219, sym_array_expression = 220, sym_parenthesized_expression = 221, sym_tuple_expression = 222, sym_unit_expression = 223, sym_struct_expression = 224, sym_field_initializer_list = 225, sym_shorthand_field_initializer = 226, sym_field_initializer = 227, sym_base_field_initializer = 228, sym_if_expression = 229, sym_let_condition = 230, sym__let_chain = 231, sym__condition = 232, sym_else_clause = 233, sym_match_expression = 234, sym_match_block = 235, sym_match_arm = 236, sym_last_match_arm = 237, sym_match_pattern = 238, sym_while_expression = 239, sym_for_expression = 240, sym_const_block = 241, sym_closure_expression = 242, sym_closure_parameters = 243, sym_loop_label = 244, sym_break_expression = 245, sym_continue_expression = 246, sym_index_expression = 247, sym_field_expression = 248, sym_block = 249, sym_asm_block = 250, sym_asm_content = 251, sym__pattern = 252, sym_tuple_pattern = 253, sym_slice_pattern = 254, sym_tuple_struct_pattern = 255, sym_struct_pattern = 256, sym_field_pattern = 257, sym_remaining_field_pattern = 258, sym_mut_pattern = 259, sym_range_pattern = 260, sym_ref_pattern = 261, sym_deref_pattern = 262, sym_captured_pattern = 263, sym_reference_pattern = 264, sym_or_pattern = 265, sym__literal = 266, sym__literal_pattern = 267, sym_negative_literal = 268, sym_string_literal = 269, sym_boolean_literal = 270, sym_storage = 271, aux_sym_source_file_repeat1 = 272, aux_sym_attribute_item_repeat1 = 273, aux_sym_declaration_list_repeat1 = 274, aux_sym_enum_variant_list_repeat1 = 275, aux_sym_enum_variant_list_repeat2 = 276, aux_sym_storage_content_list_repeat1 = 277, aux_sym_field_declaration_list_repeat1 = 278, aux_sym_ordered_field_declaration_list_repeat1 = 279, aux_sym_function_modifiers_repeat1 = 280, aux_sym_where_clause_repeat1 = 281, aux_sym_trait_bounds_repeat1 = 282, aux_sym_type_parameters_repeat1 = 283, aux_sym_use_list_repeat1 = 284, aux_sym_parameters_repeat1 = 285, aux_sym_asm_parameters_repeat1 = 286, aux_sym_tuple_type_repeat1 = 287, aux_sym_type_arguments_repeat1 = 288, aux_sym_delim_token_tree_repeat1 = 289, aux_sym_arguments_repeat1 = 290, aux_sym_array_expression_repeat1 = 291, aux_sym_tuple_expression_repeat1 = 292, aux_sym_field_initializer_list_repeat1 = 293, aux_sym_match_block_repeat1 = 294, aux_sym_closure_parameters_repeat1 = 295, aux_sym_asm_block_repeat1 = 296, aux_sym_asm_content_repeat1 = 297, aux_sym_tuple_pattern_repeat1 = 298, aux_sym_struct_pattern_repeat1 = 299, aux_sym_string_literal_repeat1 = 300, alias_sym_asm_expression = 301, alias_sym_field_identifier = 302, alias_sym_let_chain = 303, alias_sym_shorthand_field_identifier = 304, alias_sym_type_identifier = 305, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [sym_identifier] = "identifier", [anon_sym_SEMI] = ";", [anon_sym_u8] = "u8", [anon_sym_i8] = "i8", [anon_sym_u16] = "u16", [anon_sym_i16] = "i16", [anon_sym_u32] = "u32", [anon_sym_i32] = "i32", [anon_sym_u64] = "u64", [anon_sym_i64] = "i64", [anon_sym_u128] = "u128", [anon_sym_i128] = "i128", [anon_sym_u256] = "u256", [anon_sym_i256] = "i256", [anon_sym_b256] = "b256", [anon_sym_isize] = "isize", [anon_sym_usize] = "usize", [anon_sym_f32] = "f32", [anon_sym_f64] = "f64", [anon_sym_bool] = "bool", [anon_sym_char] = "char", [anon_sym_str] = "str", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", [anon_sym_contract] = "contract", [anon_sym_script] = "script", [anon_sym_predicate] = "predicate", [anon_sym_library] = "library", [anon_sym_SPACE] = " ", [aux_sym__non_special_token_token1] = "_non_special_token_token1", [anon_sym_SQUOTE] = "'", [anon_sym_abi] = "abi", [anon_sym_as] = "as", [anon_sym_break] = "break", [anon_sym_configurable] = "configurable", [anon_sym_const] = "const", [anon_sym_continue] = "continue", [anon_sym_default] = "default", [anon_sym_mod] = "mod", [anon_sym_enum] = "enum", [anon_sym_fn] = "fn", [anon_sym_for] = "for", [anon_sym_if] = "if", [anon_sym_impl] = "impl", [anon_sym_let] = "let", [anon_sym_match] = "match", [anon_sym_pub] = "pub", [anon_sym_return] = "return", [anon_sym_storage] = "storage", [anon_sym_struct] = "struct", [anon_sym_trait] = "trait", [anon_sym_type] = "type", [anon_sym_use] = "use", [anon_sym_where] = "where", [anon_sym_while] = "while", [anon_sym_POUND] = "#", [anon_sym_COMMA] = ",", [anon_sym_BANG] = "!", [anon_sym_EQ] = "=", [anon_sym_LBRACE] = "{", [anon_sym_RBRACE] = "}", [anon_sym_COLON] = ":", [anon_sym_LPAREN] = "(", [anon_sym_RPAREN] = ")", [anon_sym_asm] = "asm", [anon_sym_DASH_GT] = "->", [anon_sym_PLUS] = "+", [anon_sym_QMARK] = "\?", [anon_sym_LT] = "<", [anon_sym_GT] = ">", [anon_sym_else] = "else", [anon_sym_COLON_COLON] = "::", [anon_sym_STAR] = "*", [anon_sym__] = "_", [anon_sym_AMP] = "&", [anon_sym_ref] = "ref", [anon_sym_DOT_DOT_DOT] = "...", [anon_sym_in] = "in", [anon_sym_LT2] = "<", [sym_mutable_specifier] = "mutable_specifier", [anon_sym_DOLLAR] = "$", [anon_sym_DOT_DOT] = "..", [anon_sym_DOT_DOT_EQ] = "..=", [anon_sym_DASH] = "-", [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_SLASH] = "/", [anon_sym_PERCENT] = "%", [anon_sym_PLUS_EQ] = "+=", [anon_sym_DASH_EQ] = "-=", [anon_sym_STAR_EQ] = "*=", [anon_sym_SLASH_EQ] = "/=", [anon_sym_PERCENT_EQ] = "%=", [anon_sym_AMP_EQ] = "&=", [anon_sym_PIPE_EQ] = "|=", [anon_sym_CARET_EQ] = "^=", [anon_sym_LT_LT_EQ] = "<<=", [anon_sym_GT_GT_EQ] = ">>=", [anon_sym_yield] = "yield", [anon_sym_EQ_GT] = "=>", [anon_sym_move] = "move", [anon_sym_DOT] = ".", [anon_sym_deref] = "deref", [anon_sym_AT] = "@", [sym_integer_literal] = "integer_literal", [aux_sym_string_literal_token1] = "\"", [anon_sym_DQUOTE] = "\"", [sym_char_literal] = "char_literal", [sym_escape_sequence] = "escape_sequence", [anon_sym_true] = "true", [anon_sym_false] = "false", [sym_line_comment] = "line_comment", [sym_self] = "self", [sym_metavariable] = "metavariable", [sym__string_content] = "_string_content", [sym_raw_string_literal] = "raw_string_literal", [sym_float_literal] = "float_literal", [sym_block_comment] = "block_comment", [sym_source_file] = "source_file", [sym__statement] = "_statement", [sym_empty_statement] = "empty_statement", [sym_primitive_type] = "primitive_type", [sym_program_type] = "program_type", [sym_expression_statement] = "expression_statement", [sym_attribute_item] = "attribute_item", [sym_inner_attribute_item] = "inner_attribute_item", [sym_attribute] = "attribute", [sym_mod_item] = "mod_item", [sym_declaration_list] = "declaration_list", [sym_struct_item] = "struct_item", [sym_enum_item] = "enum_item", [sym_enum_variant_list] = "enum_variant_list", [sym_enum_variant] = "enum_variant", [sym_configurable_item] = "configurable_item", [sym_storage_item] = "storage_item", [sym_storage_content_list] = "storage_content_list", [sym_storage_content] = "storage_content", [sym_field_declaration_list] = "field_declaration_list", [sym_field_declaration] = "field_declaration", [sym_ordered_field_declaration_list] = "ordered_field_declaration_list", [sym_const_item] = "const_item", [sym_asm_item] = "asm_item", [sym_type_item] = "type_item", [sym_function_item] = "function_item", [sym_function_signature_item] = "function_signature_item", [sym_function_modifiers] = "function_modifiers", [sym_where_clause] = "where_clause", [sym_where_predicate] = "where_predicate", [sym_impl_item] = "impl_item", [sym_abi_item] = "abi_item", [sym_trait_item] = "trait_item", [sym_trait_bounds] = "trait_bounds", [sym_higher_ranked_trait_bound] = "higher_ranked_trait_bound", [sym_removed_trait_bound] = "removed_trait_bound", [sym_type_parameters] = "type_parameters", [sym_const_parameter] = "const_parameter", [sym_constrained_type_parameter] = "constrained_type_parameter", [sym_optional_type_parameter] = "optional_type_parameter", [sym_let_declaration] = "let_declaration", [sym_use_declaration] = "use_declaration", [sym__use_clause] = "_use_clause", [sym_scoped_use_list] = "scoped_use_list", [sym_use_list] = "use_list", [sym_use_as_clause] = "use_as_clause", [sym_use_wildcard] = "use_wildcard", [sym_parameters] = "parameters", [sym_self_parameter] = "self_parameter", [sym_variadic_parameter] = "variadic_parameter", [sym_parameter] = "parameter", [sym_asm_parameters] = "asm_parameters", [sym_asm_parameter] = "asm_parameter", [sym_visibility_modifier] = "visibility_modifier", [sym__type] = "_type", [sym_bracketed_type] = "bracketed_type", [sym_qualified_type] = "qualified_type", [sym_array_type] = "array_type", [sym_function_type] = "function_type", [sym_tuple_type] = "tuple_type", [sym_unit_type] = "unit_type", [sym_generic_function] = "generic_function", [sym_generic_type] = "generic_type", [sym_generic_type_with_turbofish] = "generic_type_with_turbofish", [sym_bounded_type] = "bounded_type", [sym_type_arguments] = "type_arguments", [sym_type_binding] = "type_binding", [sym_reference_type] = "reference_type", [sym_pointer_type] = "pointer_type", [sym_empty_type] = "empty_type", [sym_abstract_type] = "abstract_type", [sym__expression_except_range] = "_expression_except_range", [sym__expression] = "_expression", [sym_delim_token_tree] = "token_tree", [sym__delim_tokens] = "_delim_tokens", [sym__non_delim_token] = "_non_delim_token", [sym_scoped_identifier] = "scoped_identifier", [sym_scoped_type_identifier_in_expression_position] = "scoped_type_identifier", [sym_scoped_type_identifier] = "scoped_type_identifier", [sym_range_expression] = "range_expression", [sym_unary_expression] = "unary_expression", [sym_try_expression] = "try_expression", [sym_reference_expression] = "reference_expression", [sym_binary_expression] = "binary_expression", [sym_assignment_expression] = "assignment_expression", [sym_compound_assignment_expr] = "compound_assignment_expr", [sym_type_cast_expression] = "type_cast_expression", [sym_return_expression] = "return_expression", [sym_yield_expression] = "yield_expression", [sym_call_expression] = "call_expression", [sym_abi_call_expression] = "abi_call_expression", [sym_abi_instance_expression] = "abi_instance_expression", [sym_arguments] = "arguments", [sym_array_expression] = "array_expression", [sym_parenthesized_expression] = "parenthesized_expression", [sym_tuple_expression] = "tuple_expression", [sym_unit_expression] = "unit_expression", [sym_struct_expression] = "struct_expression", [sym_field_initializer_list] = "field_initializer_list", [sym_shorthand_field_initializer] = "shorthand_field_initializer", [sym_field_initializer] = "field_initializer", [sym_base_field_initializer] = "base_field_initializer", [sym_if_expression] = "if_expression", [sym_let_condition] = "let_condition", [sym__let_chain] = "_let_chain", [sym__condition] = "_condition", [sym_else_clause] = "else_clause", [sym_match_expression] = "match_expression", [sym_match_block] = "match_block", [sym_match_arm] = "match_arm", [sym_last_match_arm] = "match_arm", [sym_match_pattern] = "match_pattern", [sym_while_expression] = "while_expression", [sym_for_expression] = "for_expression", [sym_const_block] = "const_block", [sym_closure_expression] = "closure_expression", [sym_closure_parameters] = "closure_parameters", [sym_loop_label] = "loop_label", [sym_break_expression] = "break_expression", [sym_continue_expression] = "continue_expression", [sym_index_expression] = "index_expression", [sym_field_expression] = "field_expression", [sym_block] = "block", [sym_asm_block] = "asm_block", [sym_asm_content] = "asm_content", [sym__pattern] = "_pattern", [sym_tuple_pattern] = "tuple_pattern", [sym_slice_pattern] = "slice_pattern", [sym_tuple_struct_pattern] = "tuple_struct_pattern", [sym_struct_pattern] = "struct_pattern", [sym_field_pattern] = "field_pattern", [sym_remaining_field_pattern] = "remaining_field_pattern", [sym_mut_pattern] = "mut_pattern", [sym_range_pattern] = "range_pattern", [sym_ref_pattern] = "ref_pattern", [sym_deref_pattern] = "deref_pattern", [sym_captured_pattern] = "captured_pattern", [sym_reference_pattern] = "reference_pattern", [sym_or_pattern] = "or_pattern", [sym__literal] = "_literal", [sym__literal_pattern] = "_literal_pattern", [sym_negative_literal] = "negative_literal", [sym_string_literal] = "string_literal", [sym_boolean_literal] = "boolean_literal", [sym_storage] = "storage", [aux_sym_source_file_repeat1] = "source_file_repeat1", [aux_sym_attribute_item_repeat1] = "attribute_item_repeat1", [aux_sym_declaration_list_repeat1] = "declaration_list_repeat1", [aux_sym_enum_variant_list_repeat1] = "enum_variant_list_repeat1", [aux_sym_enum_variant_list_repeat2] = "enum_variant_list_repeat2", [aux_sym_storage_content_list_repeat1] = "storage_content_list_repeat1", [aux_sym_field_declaration_list_repeat1] = "field_declaration_list_repeat1", [aux_sym_ordered_field_declaration_list_repeat1] = "ordered_field_declaration_list_repeat1", [aux_sym_function_modifiers_repeat1] = "function_modifiers_repeat1", [aux_sym_where_clause_repeat1] = "where_clause_repeat1", [aux_sym_trait_bounds_repeat1] = "trait_bounds_repeat1", [aux_sym_type_parameters_repeat1] = "type_parameters_repeat1", [aux_sym_use_list_repeat1] = "use_list_repeat1", [aux_sym_parameters_repeat1] = "parameters_repeat1", [aux_sym_asm_parameters_repeat1] = "asm_parameters_repeat1", [aux_sym_tuple_type_repeat1] = "tuple_type_repeat1", [aux_sym_type_arguments_repeat1] = "type_arguments_repeat1", [aux_sym_delim_token_tree_repeat1] = "delim_token_tree_repeat1", [aux_sym_arguments_repeat1] = "arguments_repeat1", [aux_sym_array_expression_repeat1] = "array_expression_repeat1", [aux_sym_tuple_expression_repeat1] = "tuple_expression_repeat1", [aux_sym_field_initializer_list_repeat1] = "field_initializer_list_repeat1", [aux_sym_match_block_repeat1] = "match_block_repeat1", [aux_sym_closure_parameters_repeat1] = "closure_parameters_repeat1", [aux_sym_asm_block_repeat1] = "asm_block_repeat1", [aux_sym_asm_content_repeat1] = "asm_content_repeat1", [aux_sym_tuple_pattern_repeat1] = "tuple_pattern_repeat1", [aux_sym_struct_pattern_repeat1] = "struct_pattern_repeat1", [aux_sym_string_literal_repeat1] = "string_literal_repeat1", [alias_sym_asm_expression] = "asm_expression", [alias_sym_field_identifier] = "field_identifier", [alias_sym_let_chain] = "let_chain", [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_SEMI] = anon_sym_SEMI, [anon_sym_u8] = anon_sym_u8, [anon_sym_i8] = anon_sym_i8, [anon_sym_u16] = anon_sym_u16, [anon_sym_i16] = anon_sym_i16, [anon_sym_u32] = anon_sym_u32, [anon_sym_i32] = anon_sym_i32, [anon_sym_u64] = anon_sym_u64, [anon_sym_i64] = anon_sym_i64, [anon_sym_u128] = anon_sym_u128, [anon_sym_i128] = anon_sym_i128, [anon_sym_u256] = anon_sym_u256, [anon_sym_i256] = anon_sym_i256, [anon_sym_b256] = anon_sym_b256, [anon_sym_isize] = anon_sym_isize, [anon_sym_usize] = anon_sym_usize, [anon_sym_f32] = anon_sym_f32, [anon_sym_f64] = anon_sym_f64, [anon_sym_bool] = anon_sym_bool, [anon_sym_char] = anon_sym_char, [anon_sym_str] = anon_sym_str, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, [anon_sym_contract] = anon_sym_contract, [anon_sym_script] = anon_sym_script, [anon_sym_predicate] = anon_sym_predicate, [anon_sym_library] = anon_sym_library, [anon_sym_SPACE] = anon_sym_SPACE, [aux_sym__non_special_token_token1] = aux_sym__non_special_token_token1, [anon_sym_SQUOTE] = anon_sym_SQUOTE, [anon_sym_abi] = anon_sym_abi, [anon_sym_as] = anon_sym_as, [anon_sym_break] = anon_sym_break, [anon_sym_configurable] = anon_sym_configurable, [anon_sym_const] = anon_sym_const, [anon_sym_continue] = anon_sym_continue, [anon_sym_default] = anon_sym_default, [anon_sym_mod] = anon_sym_mod, [anon_sym_enum] = anon_sym_enum, [anon_sym_fn] = anon_sym_fn, [anon_sym_for] = anon_sym_for, [anon_sym_if] = anon_sym_if, [anon_sym_impl] = anon_sym_impl, [anon_sym_let] = anon_sym_let, [anon_sym_match] = anon_sym_match, [anon_sym_pub] = anon_sym_pub, [anon_sym_return] = anon_sym_return, [anon_sym_storage] = anon_sym_storage, [anon_sym_struct] = anon_sym_struct, [anon_sym_trait] = anon_sym_trait, [anon_sym_type] = anon_sym_type, [anon_sym_use] = anon_sym_use, [anon_sym_where] = anon_sym_where, [anon_sym_while] = anon_sym_while, [anon_sym_POUND] = anon_sym_POUND, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_BANG] = anon_sym_BANG, [anon_sym_EQ] = anon_sym_EQ, [anon_sym_LBRACE] = anon_sym_LBRACE, [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym_RPAREN] = anon_sym_RPAREN, [anon_sym_asm] = anon_sym_asm, [anon_sym_DASH_GT] = anon_sym_DASH_GT, [anon_sym_PLUS] = anon_sym_PLUS, [anon_sym_QMARK] = anon_sym_QMARK, [anon_sym_LT] = anon_sym_LT, [anon_sym_GT] = anon_sym_GT, [anon_sym_else] = anon_sym_else, [anon_sym_COLON_COLON] = anon_sym_COLON_COLON, [anon_sym_STAR] = anon_sym_STAR, [anon_sym__] = anon_sym__, [anon_sym_AMP] = anon_sym_AMP, [anon_sym_ref] = anon_sym_ref, [anon_sym_DOT_DOT_DOT] = anon_sym_DOT_DOT_DOT, [anon_sym_in] = anon_sym_in, [anon_sym_LT2] = anon_sym_LT, [sym_mutable_specifier] = sym_mutable_specifier, [anon_sym_DOLLAR] = anon_sym_DOLLAR, [anon_sym_DOT_DOT] = anon_sym_DOT_DOT, [anon_sym_DOT_DOT_EQ] = anon_sym_DOT_DOT_EQ, [anon_sym_DASH] = anon_sym_DASH, [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_SLASH] = anon_sym_SLASH, [anon_sym_PERCENT] = anon_sym_PERCENT, [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, [anon_sym_STAR_EQ] = anon_sym_STAR_EQ, [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, [anon_sym_PERCENT_EQ] = anon_sym_PERCENT_EQ, [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, [anon_sym_CARET_EQ] = anon_sym_CARET_EQ, [anon_sym_LT_LT_EQ] = anon_sym_LT_LT_EQ, [anon_sym_GT_GT_EQ] = anon_sym_GT_GT_EQ, [anon_sym_yield] = anon_sym_yield, [anon_sym_EQ_GT] = anon_sym_EQ_GT, [anon_sym_move] = anon_sym_move, [anon_sym_DOT] = anon_sym_DOT, [anon_sym_deref] = anon_sym_deref, [anon_sym_AT] = anon_sym_AT, [sym_integer_literal] = sym_integer_literal, [aux_sym_string_literal_token1] = anon_sym_DQUOTE, [anon_sym_DQUOTE] = anon_sym_DQUOTE, [sym_char_literal] = sym_char_literal, [sym_escape_sequence] = sym_escape_sequence, [anon_sym_true] = anon_sym_true, [anon_sym_false] = anon_sym_false, [sym_line_comment] = sym_line_comment, [sym_self] = sym_self, [sym_metavariable] = sym_metavariable, [sym__string_content] = sym__string_content, [sym_raw_string_literal] = sym_raw_string_literal, [sym_float_literal] = sym_float_literal, [sym_block_comment] = sym_block_comment, [sym_source_file] = sym_source_file, [sym__statement] = sym__statement, [sym_empty_statement] = sym_empty_statement, [sym_primitive_type] = sym_primitive_type, [sym_program_type] = sym_program_type, [sym_expression_statement] = sym_expression_statement, [sym_attribute_item] = sym_attribute_item, [sym_inner_attribute_item] = sym_inner_attribute_item, [sym_attribute] = sym_attribute, [sym_mod_item] = sym_mod_item, [sym_declaration_list] = sym_declaration_list, [sym_struct_item] = sym_struct_item, [sym_enum_item] = sym_enum_item, [sym_enum_variant_list] = sym_enum_variant_list, [sym_enum_variant] = sym_enum_variant, [sym_configurable_item] = sym_configurable_item, [sym_storage_item] = sym_storage_item, [sym_storage_content_list] = sym_storage_content_list, [sym_storage_content] = sym_storage_content, [sym_field_declaration_list] = sym_field_declaration_list, [sym_field_declaration] = sym_field_declaration, [sym_ordered_field_declaration_list] = sym_ordered_field_declaration_list, [sym_const_item] = sym_const_item, [sym_asm_item] = sym_asm_item, [sym_type_item] = sym_type_item, [sym_function_item] = sym_function_item, [sym_function_signature_item] = sym_function_signature_item, [sym_function_modifiers] = sym_function_modifiers, [sym_where_clause] = sym_where_clause, [sym_where_predicate] = sym_where_predicate, [sym_impl_item] = sym_impl_item, [sym_abi_item] = sym_abi_item, [sym_trait_item] = sym_trait_item, [sym_trait_bounds] = sym_trait_bounds, [sym_higher_ranked_trait_bound] = sym_higher_ranked_trait_bound, [sym_removed_trait_bound] = sym_removed_trait_bound, [sym_type_parameters] = sym_type_parameters, [sym_const_parameter] = sym_const_parameter, [sym_constrained_type_parameter] = sym_constrained_type_parameter, [sym_optional_type_parameter] = sym_optional_type_parameter, [sym_let_declaration] = sym_let_declaration, [sym_use_declaration] = sym_use_declaration, [sym__use_clause] = sym__use_clause, [sym_scoped_use_list] = sym_scoped_use_list, [sym_use_list] = sym_use_list, [sym_use_as_clause] = sym_use_as_clause, [sym_use_wildcard] = sym_use_wildcard, [sym_parameters] = sym_parameters, [sym_self_parameter] = sym_self_parameter, [sym_variadic_parameter] = sym_variadic_parameter, [sym_parameter] = sym_parameter, [sym_asm_parameters] = sym_asm_parameters, [sym_asm_parameter] = sym_asm_parameter, [sym_visibility_modifier] = sym_visibility_modifier, [sym__type] = sym__type, [sym_bracketed_type] = sym_bracketed_type, [sym_qualified_type] = sym_qualified_type, [sym_array_type] = sym_array_type, [sym_function_type] = sym_function_type, [sym_tuple_type] = sym_tuple_type, [sym_unit_type] = sym_unit_type, [sym_generic_function] = sym_generic_function, [sym_generic_type] = sym_generic_type, [sym_generic_type_with_turbofish] = sym_generic_type_with_turbofish, [sym_bounded_type] = sym_bounded_type, [sym_type_arguments] = sym_type_arguments, [sym_type_binding] = sym_type_binding, [sym_reference_type] = sym_reference_type, [sym_pointer_type] = sym_pointer_type, [sym_empty_type] = sym_empty_type, [sym_abstract_type] = sym_abstract_type, [sym__expression_except_range] = sym__expression_except_range, [sym__expression] = sym__expression, [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_scoped_type_identifier_in_expression_position] = sym_scoped_type_identifier, [sym_scoped_type_identifier] = sym_scoped_type_identifier, [sym_range_expression] = sym_range_expression, [sym_unary_expression] = sym_unary_expression, [sym_try_expression] = sym_try_expression, [sym_reference_expression] = sym_reference_expression, [sym_binary_expression] = sym_binary_expression, [sym_assignment_expression] = sym_assignment_expression, [sym_compound_assignment_expr] = sym_compound_assignment_expr, [sym_type_cast_expression] = sym_type_cast_expression, [sym_return_expression] = sym_return_expression, [sym_yield_expression] = sym_yield_expression, [sym_call_expression] = sym_call_expression, [sym_abi_call_expression] = sym_abi_call_expression, [sym_abi_instance_expression] = sym_abi_instance_expression, [sym_arguments] = sym_arguments, [sym_array_expression] = sym_array_expression, [sym_parenthesized_expression] = sym_parenthesized_expression, [sym_tuple_expression] = sym_tuple_expression, [sym_unit_expression] = sym_unit_expression, [sym_struct_expression] = sym_struct_expression, [sym_field_initializer_list] = sym_field_initializer_list, [sym_shorthand_field_initializer] = sym_shorthand_field_initializer, [sym_field_initializer] = sym_field_initializer, [sym_base_field_initializer] = sym_base_field_initializer, [sym_if_expression] = sym_if_expression, [sym_let_condition] = sym_let_condition, [sym__let_chain] = sym__let_chain, [sym__condition] = sym__condition, [sym_else_clause] = sym_else_clause, [sym_match_expression] = sym_match_expression, [sym_match_block] = sym_match_block, [sym_match_arm] = sym_match_arm, [sym_last_match_arm] = sym_match_arm, [sym_match_pattern] = sym_match_pattern, [sym_while_expression] = sym_while_expression, [sym_for_expression] = sym_for_expression, [sym_const_block] = sym_const_block, [sym_closure_expression] = sym_closure_expression, [sym_closure_parameters] = sym_closure_parameters, [sym_loop_label] = sym_loop_label, [sym_break_expression] = sym_break_expression, [sym_continue_expression] = sym_continue_expression, [sym_index_expression] = sym_index_expression, [sym_field_expression] = sym_field_expression, [sym_block] = sym_block, [sym_asm_block] = sym_asm_block, [sym_asm_content] = sym_asm_content, [sym__pattern] = sym__pattern, [sym_tuple_pattern] = sym_tuple_pattern, [sym_slice_pattern] = sym_slice_pattern, [sym_tuple_struct_pattern] = sym_tuple_struct_pattern, [sym_struct_pattern] = sym_struct_pattern, [sym_field_pattern] = sym_field_pattern, [sym_remaining_field_pattern] = sym_remaining_field_pattern, [sym_mut_pattern] = sym_mut_pattern, [sym_range_pattern] = sym_range_pattern, [sym_ref_pattern] = sym_ref_pattern, [sym_deref_pattern] = sym_deref_pattern, [sym_captured_pattern] = sym_captured_pattern, [sym_reference_pattern] = sym_reference_pattern, [sym_or_pattern] = sym_or_pattern, [sym__literal] = sym__literal, [sym__literal_pattern] = sym__literal_pattern, [sym_negative_literal] = sym_negative_literal, [sym_string_literal] = sym_string_literal, [sym_boolean_literal] = sym_boolean_literal, [sym_storage] = sym_storage, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, [aux_sym_attribute_item_repeat1] = aux_sym_attribute_item_repeat1, [aux_sym_declaration_list_repeat1] = aux_sym_declaration_list_repeat1, [aux_sym_enum_variant_list_repeat1] = aux_sym_enum_variant_list_repeat1, [aux_sym_enum_variant_list_repeat2] = aux_sym_enum_variant_list_repeat2, [aux_sym_storage_content_list_repeat1] = aux_sym_storage_content_list_repeat1, [aux_sym_field_declaration_list_repeat1] = aux_sym_field_declaration_list_repeat1, [aux_sym_ordered_field_declaration_list_repeat1] = aux_sym_ordered_field_declaration_list_repeat1, [aux_sym_function_modifiers_repeat1] = aux_sym_function_modifiers_repeat1, [aux_sym_where_clause_repeat1] = aux_sym_where_clause_repeat1, [aux_sym_trait_bounds_repeat1] = aux_sym_trait_bounds_repeat1, [aux_sym_type_parameters_repeat1] = aux_sym_type_parameters_repeat1, [aux_sym_use_list_repeat1] = aux_sym_use_list_repeat1, [aux_sym_parameters_repeat1] = aux_sym_parameters_repeat1, [aux_sym_asm_parameters_repeat1] = aux_sym_asm_parameters_repeat1, [aux_sym_tuple_type_repeat1] = aux_sym_tuple_type_repeat1, [aux_sym_type_arguments_repeat1] = aux_sym_type_arguments_repeat1, [aux_sym_delim_token_tree_repeat1] = aux_sym_delim_token_tree_repeat1, [aux_sym_arguments_repeat1] = aux_sym_arguments_repeat1, [aux_sym_array_expression_repeat1] = aux_sym_array_expression_repeat1, [aux_sym_tuple_expression_repeat1] = aux_sym_tuple_expression_repeat1, [aux_sym_field_initializer_list_repeat1] = aux_sym_field_initializer_list_repeat1, [aux_sym_match_block_repeat1] = aux_sym_match_block_repeat1, [aux_sym_closure_parameters_repeat1] = aux_sym_closure_parameters_repeat1, [aux_sym_asm_block_repeat1] = aux_sym_asm_block_repeat1, [aux_sym_asm_content_repeat1] = aux_sym_asm_content_repeat1, [aux_sym_tuple_pattern_repeat1] = aux_sym_tuple_pattern_repeat1, [aux_sym_struct_pattern_repeat1] = aux_sym_struct_pattern_repeat1, [aux_sym_string_literal_repeat1] = aux_sym_string_literal_repeat1, [alias_sym_asm_expression] = alias_sym_asm_expression, [alias_sym_field_identifier] = alias_sym_field_identifier, [alias_sym_let_chain] = alias_sym_let_chain, [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_SEMI] = { .visible = true, .named = false, }, [anon_sym_u8] = { .visible = true, .named = false, }, [anon_sym_i8] = { .visible = true, .named = false, }, [anon_sym_u16] = { .visible = true, .named = false, }, [anon_sym_i16] = { .visible = true, .named = false, }, [anon_sym_u32] = { .visible = true, .named = false, }, [anon_sym_i32] = { .visible = true, .named = false, }, [anon_sym_u64] = { .visible = true, .named = false, }, [anon_sym_i64] = { .visible = true, .named = false, }, [anon_sym_u128] = { .visible = true, .named = false, }, [anon_sym_i128] = { .visible = true, .named = false, }, [anon_sym_u256] = { .visible = true, .named = false, }, [anon_sym_i256] = { .visible = true, .named = false, }, [anon_sym_b256] = { .visible = true, .named = false, }, [anon_sym_isize] = { .visible = true, .named = false, }, [anon_sym_usize] = { .visible = true, .named = false, }, [anon_sym_f32] = { .visible = true, .named = false, }, [anon_sym_f64] = { .visible = true, .named = false, }, [anon_sym_bool] = { .visible = true, .named = false, }, [anon_sym_char] = { .visible = true, .named = false, }, [anon_sym_str] = { .visible = true, .named = false, }, [anon_sym_LBRACK] = { .visible = true, .named = false, }, [anon_sym_RBRACK] = { .visible = true, .named = false, }, [anon_sym_contract] = { .visible = true, .named = false, }, [anon_sym_script] = { .visible = true, .named = false, }, [anon_sym_predicate] = { .visible = true, .named = false, }, [anon_sym_library] = { .visible = true, .named = false, }, [anon_sym_SPACE] = { .visible = true, .named = false, }, [aux_sym__non_special_token_token1] = { .visible = false, .named = false, }, [anon_sym_SQUOTE] = { .visible = true, .named = false, }, [anon_sym_abi] = { .visible = true, .named = false, }, [anon_sym_as] = { .visible = true, .named = false, }, [anon_sym_break] = { .visible = true, .named = false, }, [anon_sym_configurable] = { .visible = true, .named = false, }, [anon_sym_const] = { .visible = true, .named = false, }, [anon_sym_continue] = { .visible = true, .named = false, }, [anon_sym_default] = { .visible = true, .named = false, }, [anon_sym_mod] = { .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_if] = { .visible = true, .named = false, }, [anon_sym_impl] = { .visible = true, .named = false, }, [anon_sym_let] = { .visible = true, .named = false, }, [anon_sym_match] = { .visible = true, .named = false, }, [anon_sym_pub] = { .visible = true, .named = false, }, [anon_sym_return] = { .visible = true, .named = false, }, [anon_sym_storage] = { .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_use] = { .visible = true, .named = false, }, [anon_sym_where] = { .visible = true, .named = false, }, [anon_sym_while] = { .visible = true, .named = false, }, [anon_sym_POUND] = { .visible = true, .named = false, }, [anon_sym_COMMA] = { .visible = true, .named = false, }, [anon_sym_BANG] = { .visible = true, .named = false, }, [anon_sym_EQ] = { .visible = true, .named = false, }, [anon_sym_LBRACE] = { .visible = true, .named = false, }, [anon_sym_RBRACE] = { .visible = true, .named = false, }, [anon_sym_COLON] = { .visible = true, .named = false, }, [anon_sym_LPAREN] = { .visible = true, .named = false, }, [anon_sym_RPAREN] = { .visible = true, .named = false, }, [anon_sym_asm] = { .visible = true, .named = false, }, [anon_sym_DASH_GT] = { .visible = true, .named = false, }, [anon_sym_PLUS] = { .visible = true, .named = false, }, [anon_sym_QMARK] = { .visible = true, .named = false, }, [anon_sym_LT] = { .visible = true, .named = false, }, [anon_sym_GT] = { .visible = true, .named = false, }, [anon_sym_else] = { .visible = true, .named = false, }, [anon_sym_COLON_COLON] = { .visible = true, .named = false, }, [anon_sym_STAR] = { .visible = true, .named = false, }, [anon_sym__] = { .visible = true, .named = false, }, [anon_sym_AMP] = { .visible = true, .named = false, }, [anon_sym_ref] = { .visible = true, .named = false, }, [anon_sym_DOT_DOT_DOT] = { .visible = true, .named = false, }, [anon_sym_in] = { .visible = true, .named = false, }, [anon_sym_LT2] = { .visible = true, .named = false, }, [sym_mutable_specifier] = { .visible = true, .named = true, }, [anon_sym_DOLLAR] = { .visible = true, .named = false, }, [anon_sym_DOT_DOT] = { .visible = true, .named = false, }, [anon_sym_DOT_DOT_EQ] = { .visible = true, .named = false, }, [anon_sym_DASH] = { .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_SLASH] = { .visible = true, .named = false, }, [anon_sym_PERCENT] = { .visible = true, .named = false, }, [anon_sym_PLUS_EQ] = { .visible = true, .named = false, }, [anon_sym_DASH_EQ] = { .visible = true, .named = false, }, [anon_sym_STAR_EQ] = { .visible = true, .named = false, }, [anon_sym_SLASH_EQ] = { .visible = true, .named = false, }, [anon_sym_PERCENT_EQ] = { .visible = true, .named = false, }, [anon_sym_AMP_EQ] = { .visible = true, .named = false, }, [anon_sym_PIPE_EQ] = { .visible = true, .named = false, }, [anon_sym_CARET_EQ] = { .visible = true, .named = false, }, [anon_sym_LT_LT_EQ] = { .visible = true, .named = false, }, [anon_sym_GT_GT_EQ] = { .visible = true, .named = false, }, [anon_sym_yield] = { .visible = true, .named = false, }, [anon_sym_EQ_GT] = { .visible = true, .named = false, }, [anon_sym_move] = { .visible = true, .named = false, }, [anon_sym_DOT] = { .visible = true, .named = false, }, [anon_sym_deref] = { .visible = true, .named = false, }, [anon_sym_AT] = { .visible = true, .named = false, }, [sym_integer_literal] = { .visible = true, .named = true, }, [aux_sym_string_literal_token1] = { .visible = true, .named = false, }, [anon_sym_DQUOTE] = { .visible = true, .named = false, }, [sym_char_literal] = { .visible = true, .named = true, }, [sym_escape_sequence] = { .visible = true, .named = true, }, [anon_sym_true] = { .visible = true, .named = false, }, [anon_sym_false] = { .visible = true, .named = false, }, [sym_line_comment] = { .visible = true, .named = true, }, [sym_self] = { .visible = true, .named = true, }, [sym_metavariable] = { .visible = true, .named = true, }, [sym__string_content] = { .visible = false, .named = true, }, [sym_raw_string_literal] = { .visible = true, .named = true, }, [sym_float_literal] = { .visible = true, .named = true, }, [sym_block_comment] = { .visible = true, .named = true, }, [sym_source_file] = { .visible = true, .named = true, }, [sym__statement] = { .visible = false, .named = true, }, [sym_empty_statement] = { .visible = true, .named = true, }, [sym_primitive_type] = { .visible = true, .named = true, }, [sym_program_type] = { .visible = true, .named = true, }, [sym_expression_statement] = { .visible = true, .named = true, }, [sym_attribute_item] = { .visible = true, .named = true, }, [sym_inner_attribute_item] = { .visible = true, .named = true, }, [sym_attribute] = { .visible = true, .named = true, }, [sym_mod_item] = { .visible = true, .named = true, }, [sym_declaration_list] = { .visible = true, .named = true, }, [sym_struct_item] = { .visible = true, .named = true, }, [sym_enum_item] = { .visible = true, .named = true, }, [sym_enum_variant_list] = { .visible = true, .named = true, }, [sym_enum_variant] = { .visible = true, .named = true, }, [sym_configurable_item] = { .visible = true, .named = true, }, [sym_storage_item] = { .visible = true, .named = true, }, [sym_storage_content_list] = { .visible = true, .named = true, }, [sym_storage_content] = { .visible = true, .named = true, }, [sym_field_declaration_list] = { .visible = true, .named = true, }, [sym_field_declaration] = { .visible = true, .named = true, }, [sym_ordered_field_declaration_list] = { .visible = true, .named = true, }, [sym_const_item] = { .visible = true, .named = true, }, [sym_asm_item] = { .visible = true, .named = true, }, [sym_type_item] = { .visible = true, .named = true, }, [sym_function_item] = { .visible = true, .named = true, }, [sym_function_signature_item] = { .visible = true, .named = true, }, [sym_function_modifiers] = { .visible = true, .named = true, }, [sym_where_clause] = { .visible = true, .named = true, }, [sym_where_predicate] = { .visible = true, .named = true, }, [sym_impl_item] = { .visible = true, .named = true, }, [sym_abi_item] = { .visible = true, .named = true, }, [sym_trait_item] = { .visible = true, .named = true, }, [sym_trait_bounds] = { .visible = true, .named = true, }, [sym_higher_ranked_trait_bound] = { .visible = true, .named = true, }, [sym_removed_trait_bound] = { .visible = true, .named = true, }, [sym_type_parameters] = { .visible = true, .named = true, }, [sym_const_parameter] = { .visible = true, .named = true, }, [sym_constrained_type_parameter] = { .visible = true, .named = true, }, [sym_optional_type_parameter] = { .visible = true, .named = true, }, [sym_let_declaration] = { .visible = true, .named = true, }, [sym_use_declaration] = { .visible = true, .named = true, }, [sym__use_clause] = { .visible = false, .named = true, }, [sym_scoped_use_list] = { .visible = true, .named = true, }, [sym_use_list] = { .visible = true, .named = true, }, [sym_use_as_clause] = { .visible = true, .named = true, }, [sym_use_wildcard] = { .visible = true, .named = true, }, [sym_parameters] = { .visible = true, .named = true, }, [sym_self_parameter] = { .visible = true, .named = true, }, [sym_variadic_parameter] = { .visible = true, .named = true, }, [sym_parameter] = { .visible = true, .named = true, }, [sym_asm_parameters] = { .visible = true, .named = true, }, [sym_asm_parameter] = { .visible = true, .named = true, }, [sym_visibility_modifier] = { .visible = true, .named = true, }, [sym__type] = { .visible = false, .named = true, .supertype = true, }, [sym_bracketed_type] = { .visible = true, .named = true, }, [sym_qualified_type] = { .visible = true, .named = true, }, [sym_array_type] = { .visible = true, .named = true, }, [sym_function_type] = { .visible = true, .named = true, }, [sym_tuple_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_generic_type_with_turbofish] = { .visible = true, .named = true, }, [sym_bounded_type] = { .visible = true, .named = true, }, [sym_type_arguments] = { .visible = true, .named = true, }, [sym_type_binding] = { .visible = true, .named = true, }, [sym_reference_type] = { .visible = true, .named = true, }, [sym_pointer_type] = { .visible = true, .named = true, }, [sym_empty_type] = { .visible = true, .named = true, }, [sym_abstract_type] = { .visible = true, .named = true, }, [sym__expression_except_range] = { .visible = false, .named = true, }, [sym__expression] = { .visible = false, .named = true, .supertype = 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_scoped_type_identifier_in_expression_position] = { .visible = true, .named = true, }, [sym_scoped_type_identifier] = { .visible = true, .named = true, }, [sym_range_expression] = { .visible = true, .named = true, }, [sym_unary_expression] = { .visible = true, .named = true, }, [sym_try_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_compound_assignment_expr] = { .visible = true, .named = true, }, [sym_type_cast_expression] = { .visible = true, .named = true, }, [sym_return_expression] = { .visible = true, .named = true, }, [sym_yield_expression] = { .visible = true, .named = true, }, [sym_call_expression] = { .visible = true, .named = true, }, [sym_abi_call_expression] = { .visible = true, .named = true, }, [sym_abi_instance_expression] = { .visible = true, .named = true, }, [sym_arguments] = { .visible = true, .named = true, }, [sym_array_expression] = { .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_struct_expression] = { .visible = true, .named = true, }, [sym_field_initializer_list] = { .visible = true, .named = true, }, [sym_shorthand_field_initializer] = { .visible = true, .named = true, }, [sym_field_initializer] = { .visible = true, .named = true, }, [sym_base_field_initializer] = { .visible = true, .named = true, }, [sym_if_expression] = { .visible = true, .named = true, }, [sym_let_condition] = { .visible = true, .named = true, }, [sym__let_chain] = { .visible = false, .named = true, }, [sym__condition] = { .visible = false, .named = true, }, [sym_else_clause] = { .visible = true, .named = true, }, [sym_match_expression] = { .visible = true, .named = true, }, [sym_match_block] = { .visible = true, .named = true, }, [sym_match_arm] = { .visible = true, .named = true, }, [sym_last_match_arm] = { .visible = true, .named = true, }, [sym_match_pattern] = { .visible = true, .named = true, }, [sym_while_expression] = { .visible = true, .named = true, }, [sym_for_expression] = { .visible = true, .named = true, }, [sym_const_block] = { .visible = true, .named = true, }, [sym_closure_expression] = { .visible = true, .named = true, }, [sym_closure_parameters] = { .visible = true, .named = true, }, [sym_loop_label] = { .visible = true, .named = true, }, [sym_break_expression] = { .visible = true, .named = true, }, [sym_continue_expression] = { .visible = true, .named = true, }, [sym_index_expression] = { .visible = true, .named = true, }, [sym_field_expression] = { .visible = true, .named = true, }, [sym_block] = { .visible = true, .named = true, }, [sym_asm_block] = { .visible = true, .named = true, }, [sym_asm_content] = { .visible = true, .named = true, }, [sym__pattern] = { .visible = false, .named = true, .supertype = true, }, [sym_tuple_pattern] = { .visible = true, .named = true, }, [sym_slice_pattern] = { .visible = true, .named = true, }, [sym_tuple_struct_pattern] = { .visible = true, .named = true, }, [sym_struct_pattern] = { .visible = true, .named = true, }, [sym_field_pattern] = { .visible = true, .named = true, }, [sym_remaining_field_pattern] = { .visible = true, .named = true, }, [sym_mut_pattern] = { .visible = true, .named = true, }, [sym_range_pattern] = { .visible = true, .named = true, }, [sym_ref_pattern] = { .visible = true, .named = true, }, [sym_deref_pattern] = { .visible = true, .named = true, }, [sym_captured_pattern] = { .visible = true, .named = true, }, [sym_reference_pattern] = { .visible = true, .named = true, }, [sym_or_pattern] = { .visible = true, .named = true, }, [sym__literal] = { .visible = false, .named = true, .supertype = true, }, [sym__literal_pattern] = { .visible = false, .named = true, .supertype = true, }, [sym_negative_literal] = { .visible = true, .named = true, }, [sym_string_literal] = { .visible = true, .named = true, }, [sym_boolean_literal] = { .visible = true, .named = true, }, [sym_storage] = { .visible = true, .named = true, }, [aux_sym_source_file_repeat1] = { .visible = false, .named = false, }, [aux_sym_attribute_item_repeat1] = { .visible = false, .named = false, }, [aux_sym_declaration_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_enum_variant_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_enum_variant_list_repeat2] = { .visible = false, .named = false, }, [aux_sym_storage_content_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_field_declaration_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_ordered_field_declaration_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_function_modifiers_repeat1] = { .visible = false, .named = false, }, [aux_sym_where_clause_repeat1] = { .visible = false, .named = false, }, [aux_sym_trait_bounds_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_parameters_repeat1] = { .visible = false, .named = false, }, [aux_sym_use_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_parameters_repeat1] = { .visible = false, .named = false, }, [aux_sym_asm_parameters_repeat1] = { .visible = false, .named = false, }, [aux_sym_tuple_type_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_arguments_repeat1] = { .visible = false, .named = false, }, [aux_sym_delim_token_tree_repeat1] = { .visible = false, .named = false, }, [aux_sym_arguments_repeat1] = { .visible = false, .named = false, }, [aux_sym_array_expression_repeat1] = { .visible = false, .named = false, }, [aux_sym_tuple_expression_repeat1] = { .visible = false, .named = false, }, [aux_sym_field_initializer_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_match_block_repeat1] = { .visible = false, .named = false, }, [aux_sym_closure_parameters_repeat1] = { .visible = false, .named = false, }, [aux_sym_asm_block_repeat1] = { .visible = false, .named = false, }, [aux_sym_asm_content_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_string_literal_repeat1] = { .visible = false, .named = false, }, [alias_sym_asm_expression] = { .visible = true, .named = true, }, [alias_sym_field_identifier] = { .visible = true, .named = true, }, [alias_sym_let_chain] = { .visible = true, .named = true, }, [alias_sym_shorthand_field_identifier] = { .visible = true, .named = true, }, [alias_sym_type_identifier] = { .visible = true, .named = true, }, }; enum ts_field_identifiers { field_alias = 1, field_alternative = 2, field_argument = 3, field_arguments = 4, field_body = 5, field_bounds = 6, field_condition = 7, field_consequence = 8, field_default_type = 9, field_element = 10, field_field = 11, field_function = 12, field_initalizer = 13, field_left = 14, field_length = 15, field_list = 16, field_name = 17, field_operator = 18, field_parameters = 19, field_path = 20, field_pattern = 21, field_return_type = 22, field_right = 23, field_trait = 24, field_type = 25, field_type_arguments = 26, field_type_parameters = 27, field_value = 28, }; 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_bounds] = "bounds", [field_condition] = "condition", [field_consequence] = "consequence", [field_default_type] = "default_type", [field_element] = "element", [field_field] = "field", [field_function] = "function", [field_initalizer] = "initalizer", [field_left] = "left", [field_length] = "length", [field_list] = "list", [field_name] = "name", [field_operator] = "operator", [field_parameters] = "parameters", [field_path] = "path", [field_pattern] = "pattern", [field_return_type] = "return_type", [field_right] = "right", [field_trait] = "trait", [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] = { [3] = {.index = 0, .length = 1}, [4] = {.index = 1, .length = 1}, [7] = {.index = 2, .length = 1}, [8] = {.index = 2, .length = 1}, [9] = {.index = 3, .length = 1}, [10] = {.index = 4, .length = 2}, [11] = {.index = 4, .length = 2}, [12] = {.index = 6, .length = 2}, [13] = {.index = 8, .length = 2}, [14] = {.index = 10, .length = 2}, [15] = {.index = 12, .length = 2}, [16] = {.index = 12, .length = 2}, [17] = {.index = 14, .length = 2}, [18] = {.index = 14, .length = 2}, [19] = {.index = 14, .length = 2}, [20] = {.index = 16, .length = 2}, [21] = {.index = 18, .length = 1}, [22] = {.index = 19, .length = 1}, [23] = {.index = 19, .length = 1}, [24] = {.index = 20, .length = 1}, [25] = {.index = 21, .length = 2}, [26] = {.index = 23, .length = 2}, [27] = {.index = 21, .length = 2}, [28] = {.index = 25, .length = 1}, [29] = {.index = 26, .length = 2}, [30] = {.index = 28, .length = 1}, [31] = {.index = 29, .length = 1}, [32] = {.index = 30, .length = 2}, [33] = {.index = 32, .length = 1}, [34] = {.index = 33, .length = 2}, [35] = {.index = 35, .length = 1}, [36] = {.index = 12, .length = 2}, [37] = {.index = 12, .length = 2}, [38] = {.index = 36, .length = 2}, [39] = {.index = 38, .length = 2}, [40] = {.index = 12, .length = 2}, [41] = {.index = 12, .length = 2}, [42] = {.index = 40, .length = 2}, [43] = {.index = 42, .length = 2}, [44] = {.index = 44, .length = 3}, [45] = {.index = 47, .length = 2}, [46] = {.index = 47, .length = 2}, [47] = {.index = 38, .length = 2}, [48] = {.index = 49, .length = 3}, [49] = {.index = 52, .length = 1}, [50] = {.index = 53, .length = 3}, [51] = {.index = 56, .length = 1}, [52] = {.index = 57, .length = 2}, [53] = {.index = 59, .length = 3}, [54] = {.index = 62, .length = 2}, [55] = {.index = 64, .length = 3}, [57] = {.index = 67, .length = 1}, [58] = {.index = 56, .length = 1}, [59] = {.index = 67, .length = 1}, [61] = {.index = 68, .length = 3}, [62] = {.index = 71, .length = 1}, [64] = {.index = 72, .length = 2}, [65] = {.index = 74, .length = 1}, [66] = {.index = 75, .length = 1}, [67] = {.index = 76, .length = 2}, [68] = {.index = 78, .length = 3}, [69] = {.index = 81, .length = 2}, [70] = {.index = 83, .length = 1}, [71] = {.index = 84, .length = 2}, [72] = {.index = 86, .length = 2}, [73] = {.index = 88, .length = 2}, [74] = {.index = 86, .length = 2}, [75] = {.index = 88, .length = 2}, [76] = {.index = 0, .length = 1}, [77] = {.index = 90, .length = 1}, [78] = {.index = 91, .length = 2}, [79] = {.index = 93, .length = 2}, [80] = {.index = 95, .length = 2}, [81] = {.index = 52, .length = 1}, [82] = {.index = 97, .length = 1}, [83] = {.index = 98, .length = 3}, [84] = {.index = 101, .length = 1}, [85] = {.index = 102, .length = 2}, [86] = {.index = 104, .length = 2}, [87] = {.index = 106, .length = 2}, [88] = {.index = 72, .length = 2}, [89] = {.index = 108, .length = 3}, [90] = {.index = 111, .length = 3}, [91] = {.index = 114, .length = 4}, [92] = {.index = 118, .length = 3}, [93] = {.index = 2, .length = 1}, [94] = {.index = 121, .length = 3}, [95] = {.index = 124, .length = 2}, [96] = {.index = 126, .length = 2}, [97] = {.index = 128, .length = 2}, [98] = {.index = 128, .length = 2}, [99] = {.index = 130, .length = 2}, [100] = {.index = 132, .length = 3}, [101] = {.index = 135, .length = 3}, [102] = {.index = 138, .length = 3}, [103] = {.index = 130, .length = 2}, [104] = {.index = 132, .length = 3}, [105] = {.index = 135, .length = 3}, [106] = {.index = 141, .length = 2}, [107] = {.index = 143, .length = 2}, [109] = {.index = 145, .length = 3}, [110] = {.index = 148, .length = 4}, [111] = {.index = 106, .length = 2}, [112] = {.index = 35, .length = 1}, [113] = {.index = 152, .length = 1}, [114] = {.index = 153, .length = 2}, [115] = {.index = 155, .length = 3}, [116] = {.index = 158, .length = 2}, [117] = {.index = 160, .length = 2}, [118] = {.index = 162, .length = 3}, [119] = {.index = 165, .length = 2}, [120] = {.index = 167, .length = 3}, [121] = {.index = 170, .length = 2}, [122] = {.index = 172, .length = 3}, [123] = {.index = 175, .length = 2}, [124] = {.index = 177, .length = 1}, [125] = {.index = 106, .length = 2}, [126] = {.index = 178, .length = 1}, [127] = {.index = 158, .length = 2}, [128] = {.index = 179, .length = 4}, [129] = {.index = 183, .length = 3}, [130] = {.index = 186, .length = 4}, [131] = {.index = 102, .length = 2}, [132] = {.index = 52, .length = 1}, [133] = {.index = 190, .length = 2}, [134] = {.index = 192, .length = 2}, [135] = {.index = 194, .length = 3}, [136] = {.index = 197, .length = 2}, [137] = {.index = 199, .length = 3}, [138] = {.index = 202, .length = 4}, [139] = {.index = 199, .length = 3}, [140] = {.index = 202, .length = 4}, [141] = {.index = 194, .length = 3}, [142] = {.index = 206, .length = 2}, [143] = {.index = 208, .length = 2}, [144] = {.index = 210, .length = 2}, [145] = {.index = 212, .length = 2}, [146] = {.index = 214, .length = 1}, [147] = {.index = 215, .length = 2}, [148] = {.index = 217, .length = 2}, [149] = {.index = 219, .length = 4}, [150] = {.index = 223, .length = 3}, [151] = {.index = 104, .length = 2}, [152] = {.index = 226, .length = 3}, [153] = {.index = 229, .length = 4}, [154] = {.index = 233, .length = 3}, [155] = {.index = 236, .length = 2}, [156] = {.index = 238, .length = 2}, [157] = {.index = 240, .length = 3}, [158] = {.index = 243, .length = 3}, [159] = {.index = 246, .length = 4}, [160] = {.index = 238, .length = 2}, [161] = {.index = 250, .length = 2}, [162] = {.index = 252, .length = 3}, [163] = {.index = 255, .length = 3}, [164] = {.index = 258, .length = 4}, [165] = {.index = 262, .length = 5}, [166] = {.index = 267, .length = 4}, [167] = {.index = 271, .length = 3}, [168] = {.index = 274, .length = 2}, [169] = {.index = 276, .length = 4}, [170] = {.index = 276, .length = 4}, [171] = {.index = 280, .length = 3}, [172] = {.index = 283, .length = 3}, [173] = {.index = 286, .length = 3}, [174] = {.index = 289, .length = 2}, [175] = {.index = 291, .length = 1}, [176] = {.index = 292, .length = 4}, [177] = {.index = 296, .length = 3}, [178] = {.index = 299, .length = 4}, [179] = {.index = 303, .length = 4}, [180] = {.index = 307, .length = 3}, [181] = {.index = 310, .length = 3}, [182] = {.index = 313, .length = 4}, [183] = {.index = 317, .length = 3}, [184] = {.index = 320, .length = 3}, [185] = {.index = 323, .length = 5}, [186] = {.index = 328, .length = 2}, [187] = {.index = 330, .length = 3}, [188] = {.index = 333, .length = 3}, [189] = {.index = 336, .length = 3}, [190] = {.index = 339, .length = 2}, [191] = {.index = 341, .length = 4}, [192] = {.index = 345, .length = 5}, [193] = {.index = 350, .length = 4}, [194] = {.index = 354, .length = 3}, [195] = {.index = 357, .length = 4}, [196] = {.index = 361, .length = 3}, [197] = {.index = 364, .length = 4}, [198] = {.index = 368, .length = 4}, [199] = {.index = 372, .length = 5}, [200] = {.index = 377, .length = 4}, [201] = {.index = 381, .length = 5}, [202] = {.index = 386, .length = 4}, [203] = {.index = 390, .length = 4}, [204] = {.index = 394, .length = 5}, }; static const TSFieldMapEntry ts_field_map_entries[] = { [0] = {field_arguments, 1}, [1] = {field_body, 1}, [2] = {field_name, 1}, [3] = {field_value, 1}, [4] = {field_body, 1}, {field_name, 0}, [6] = {field_arguments, 1}, {field_function, 0}, [8] = {field_body, 1}, {field_parameters, 0}, [10] = {field_body, 2}, {field_name, 1}, [12] = {field_name, 2}, {field_path, 0}, [14] = {field_type, 0}, {field_type_arguments, 1}, [16] = {field_condition, 1}, {field_consequence, 2}, [18] = {field_parameters, 1}, [19] = {field_trait, 1}, [20] = {field_type, 1}, [21] = {field_parameters, 1}, {field_trait, 0}, [23] = {field_body, 2}, {field_type, 1}, [25] = {field_pattern, 1}, [26] = {field_body, 2}, {field_value, 1}, [28] = {field_list, 1}, [29] = {field_argument, 1}, [30] = {field_body, 2}, {field_condition, 1}, [32] = {field_pattern, 0}, [33] = {field_body, 2}, {field_parameters, 1}, [35] = {field_value, 2}, [36] = {field_function, 0}, {field_type_arguments, 2}, [38] = {field_type, 0}, {field_type_arguments, 2}, [40] = {field_type, 2}, {field_value, 0}, [42] = {field_left, 0}, {field_right, 2}, [44] = {field_left, 0}, {field_operator, 1}, {field_right, 2}, [47] = {field_field, 2}, {field_value, 0}, [49] = {field_arguments, 2}, {field_function, 0}, {field_initalizer, 1}, [52] = {field_name, 2}, [53] = {field_body, 3}, {field_bounds, 2}, {field_name, 1}, [56] = {field_name, 0}, [57] = {field_body, 3}, {field_name, 1}, [59] = {field_body, 3}, {field_name, 1}, {field_type_parameters, 2}, [62] = {field_name, 1}, {field_parameters, 2}, [64] = {field_body, 3}, {field_name, 1}, {field_parameters, 2}, [67] = {field_type, 0}, [68] = {field_alternative, 3}, {field_condition, 1}, {field_consequence, 2}, [71] = {field_element, 1}, [72] = {field_bounds, 1}, {field_left, 0}, [74] = {field_type, 2}, [75] = {field_parameters, 2}, [76] = {field_type, 2}, {field_type_parameters, 1}, [78] = {field_body, 3}, {field_type, 2}, {field_type_parameters, 1}, [81] = {field_body, 3}, {field_type, 1}, [83] = {field_pattern, 2}, [84] = {field_name, 1}, {field_type_parameters, 2}, [86] = {field_alias, 2}, {field_path, 0}, [88] = {field_list, 2}, {field_path, 0}, [90] = {field_value, 0}, [91] = {field_alias, 2}, {field_type, 0}, [93] = {field_pattern, 0}, {field_type, 2}, [95] = {field_body, 3}, {field_name, 2}, [97] = {field_argument, 2}, [98] = {field_body, 3}, {field_parameters, 0}, {field_return_type, 2}, [101] = {field_length, 3}, [102] = {field_name, 0}, {field_type, 2}, [104] = {field_name, 1}, {field_value, 3}, [106] = {field_name, 1}, {field_type, 3}, [108] = {field_body, 4}, {field_name, 1}, {field_type_parameters, 2}, [111] = {field_name, 1}, {field_parameters, 3}, {field_type_parameters, 2}, [114] = {field_body, 4}, {field_name, 1}, {field_parameters, 3}, {field_type_parameters, 2}, [118] = {field_body, 4}, {field_name, 1}, {field_parameters, 2}, [121] = {field_body, 4}, {field_pattern, 1}, {field_value, 3}, [124] = {field_pattern, 1}, {field_value, 3}, [126] = {field_parameters, 1}, {field_return_type, 3}, [128] = {field_default_type, 2}, {field_name, 0}, [130] = {field_trait, 1}, {field_type, 3}, [132] = {field_body, 4}, {field_trait, 1}, {field_type, 3}, [135] = {field_parameters, 1}, {field_return_type, 3}, {field_trait, 0}, [138] = {field_body, 4}, {field_type, 2}, {field_type_parameters, 1}, [141] = {field_pattern, 1}, {field_type, 3}, [143] = {field_alternative, 3}, {field_pattern, 1}, [145] = {field_body, 4}, {field_bounds, 2}, {field_name, 1}, [148] = {field_body, 4}, {field_bounds, 3}, {field_name, 1}, {field_type_parameters, 2}, [152] = {field_value, 1, .inherited = true}, [153] = {field_value, 0, .inherited = true}, {field_value, 1, .inherited = true}, [155] = {field_body, 4}, {field_parameters, 1}, {field_return_type, 3}, [158] = {field_name, 0}, {field_value, 2}, [160] = {field_name, 2}, {field_parameters, 3}, [162] = {field_body, 4}, {field_name, 2}, {field_parameters, 3}, [165] = {field_body, 4}, {field_name, 2}, [167] = {field_body, 4}, {field_name, 2}, {field_type_parameters, 3}, [170] = {field_name, 2}, {field_type_parameters, 3}, [172] = {field_body, 4}, {field_bounds, 3}, {field_name, 2}, [175] = {field_body, 4}, {field_condition, 3}, [177] = {field_length, 4}, [178] = {field_value, 3}, [179] = {field_body, 5}, {field_name, 1}, {field_parameters, 3}, {field_type_parameters, 2}, [183] = {field_name, 1}, {field_parameters, 2}, {field_return_type, 4}, [186] = {field_body, 5}, {field_name, 1}, {field_parameters, 2}, {field_return_type, 4}, [190] = {field_name, 0}, {field_pattern, 2}, [192] = {field_element, 1}, {field_length, 3}, [194] = {field_body, 5}, {field_trait, 1}, {field_type, 3}, [197] = {field_parameters, 2}, {field_return_type, 4}, [199] = {field_trait, 2}, {field_type, 4}, {field_type_parameters, 1}, [202] = {field_body, 5}, {field_trait, 2}, {field_type, 4}, {field_type_parameters, 1}, [206] = {field_pattern, 2}, {field_value, 4}, [208] = {field_pattern, 2}, {field_type, 4}, [210] = {field_alternative, 4}, {field_pattern, 2}, [212] = {field_pattern, 0}, {field_value, 2}, [214] = {field_condition, 2}, [215] = {field_type, 1}, {field_type, 2, .inherited = true}, [217] = {field_type, 0, .inherited = true}, {field_type, 1, .inherited = true}, [219] = {field_body, 5}, {field_bounds, 3}, {field_name, 1}, {field_type_parameters, 2}, [223] = {field_name, 1}, {field_type, 4}, {field_type_parameters, 2}, [226] = {field_name, 2}, {field_parameters, 4}, {field_type_parameters, 3}, [229] = {field_body, 5}, {field_name, 2}, {field_parameters, 4}, {field_type_parameters, 3}, [233] = {field_body, 5}, {field_name, 2}, {field_parameters, 3}, [236] = {field_name, 2}, {field_value, 4}, [238] = {field_name, 2}, {field_type, 4}, [240] = {field_body, 5}, {field_name, 2}, {field_type_parameters, 3}, [243] = {field_body, 5}, {field_bounds, 3}, {field_name, 2}, [246] = {field_body, 5}, {field_bounds, 4}, {field_name, 2}, {field_type_parameters, 3}, [250] = {field_name, 3}, {field_parameters, 4}, [252] = {field_body, 5}, {field_name, 3}, {field_parameters, 4}, [255] = {field_name, 1}, {field_type, 3}, {field_value, 5}, [258] = {field_name, 1}, {field_parameters, 3}, {field_return_type, 5}, {field_type_parameters, 2}, [262] = {field_body, 6}, {field_name, 1}, {field_parameters, 3}, {field_return_type, 5}, {field_type_parameters, 2}, [267] = {field_body, 6}, {field_name, 1}, {field_parameters, 2}, {field_return_type, 4}, [271] = {field_name, 0}, {field_type, 3}, {field_type_arguments, 1}, [274] = {field_name, 1}, {field_pattern, 3}, [276] = {field_body, 6}, {field_trait, 2}, {field_type, 4}, {field_type_parameters, 1}, [280] = {field_alternative, 5}, {field_pattern, 1}, {field_value, 3}, [283] = {field_pattern, 1}, {field_type, 3}, {field_value, 5}, [286] = {field_alternative, 5}, {field_pattern, 1}, {field_type, 3}, [289] = {field_type, 2}, {field_type, 3, .inherited = true}, [291] = {field_type, 3}, [292] = {field_body, 6}, {field_name, 2}, {field_parameters, 4}, {field_type_parameters, 3}, [296] = {field_name, 2}, {field_parameters, 3}, {field_return_type, 5}, [299] = {field_body, 6}, {field_name, 2}, {field_parameters, 3}, {field_return_type, 5}, [303] = {field_body, 6}, {field_bounds, 4}, {field_name, 2}, {field_type_parameters, 3}, [307] = {field_name, 2}, {field_type, 5}, {field_type_parameters, 3}, [310] = {field_name, 3}, {field_parameters, 5}, {field_type_parameters, 4}, [313] = {field_body, 6}, {field_name, 3}, {field_parameters, 5}, {field_type_parameters, 4}, [317] = {field_body, 6}, {field_name, 3}, {field_parameters, 4}, [320] = {field_body, 6}, {field_pattern, 3}, {field_value, 5}, [323] = {field_body, 7}, {field_name, 1}, {field_parameters, 3}, {field_return_type, 5}, {field_type_parameters, 2}, [328] = {field_name, 2}, {field_pattern, 4}, [330] = {field_alternative, 6}, {field_pattern, 2}, {field_value, 4}, [333] = {field_pattern, 2}, {field_type, 4}, {field_value, 6}, [336] = {field_alternative, 6}, {field_pattern, 2}, {field_type, 4}, [339] = {field_type, 3}, {field_type, 4, .inherited = true}, [341] = {field_name, 2}, {field_parameters, 4}, {field_return_type, 6}, {field_type_parameters, 3}, [345] = {field_body, 7}, {field_name, 2}, {field_parameters, 4}, {field_return_type, 6}, {field_type_parameters, 3}, [350] = {field_body, 7}, {field_name, 2}, {field_parameters, 3}, {field_return_type, 5}, [354] = {field_name, 2}, {field_type, 4}, {field_value, 6}, [357] = {field_body, 7}, {field_name, 3}, {field_parameters, 5}, {field_type_parameters, 4}, [361] = {field_name, 3}, {field_parameters, 4}, {field_return_type, 6}, [364] = {field_body, 7}, {field_name, 3}, {field_parameters, 4}, {field_return_type, 6}, [368] = {field_alternative, 7}, {field_pattern, 1}, {field_type, 3}, {field_value, 5}, [372] = {field_body, 8}, {field_name, 2}, {field_parameters, 4}, {field_return_type, 6}, {field_type_parameters, 3}, [377] = {field_name, 3}, {field_parameters, 5}, {field_return_type, 7}, {field_type_parameters, 4}, [381] = {field_body, 8}, {field_name, 3}, {field_parameters, 5}, {field_return_type, 7}, {field_type_parameters, 4}, [386] = {field_body, 8}, {field_name, 3}, {field_parameters, 4}, {field_return_type, 6}, [390] = {field_alternative, 8}, {field_pattern, 2}, {field_type, 4}, {field_value, 6}, [394] = {field_body, 9}, {field_name, 3}, {field_parameters, 5}, {field_return_type, 7}, {field_type_parameters, 4}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = {0}, [1] = { [0] = sym_identifier, }, [2] = { [0] = alias_sym_asm_expression, }, [5] = { [0] = alias_sym_let_chain, }, [6] = { [0] = alias_sym_type_identifier, }, [8] = { [1] = alias_sym_type_identifier, }, [10] = { [0] = alias_sym_type_identifier, }, [14] = { [1] = alias_sym_type_identifier, }, [15] = { [0] = sym_identifier, }, [16] = { [0] = sym_identifier, [2] = alias_sym_type_identifier, }, [17] = { [0] = sym_identifier, }, [18] = { [0] = alias_sym_type_identifier, }, [22] = { [1] = alias_sym_type_identifier, }, [25] = { [0] = alias_sym_type_identifier, }, [37] = { [2] = alias_sym_type_identifier, }, [39] = { [0] = alias_sym_type_identifier, }, [40] = { [0] = sym_generic_type, }, [41] = { [0] = sym_generic_type, [2] = alias_sym_type_identifier, }, [46] = { [2] = alias_sym_field_identifier, }, [50] = { [1] = alias_sym_type_identifier, }, [52] = { [1] = alias_sym_type_identifier, }, [53] = { [1] = alias_sym_type_identifier, }, [56] = { [0] = sym_identifier, [2] = sym_identifier, }, [57] = { [0] = alias_sym_type_identifier, }, [58] = { [0] = alias_sym_shorthand_field_identifier, }, [60] = { [2] = sym_identifier, }, [63] = { [1] = alias_sym_type_identifier, }, [64] = { [0] = alias_sym_type_identifier, }, [71] = { [1] = alias_sym_type_identifier, }, [72] = { [0] = sym_identifier, }, [73] = { [0] = sym_identifier, }, [76] = { [0] = sym_identifier, }, [80] = { [2] = alias_sym_type_identifier, }, [81] = { [2] = alias_sym_type_identifier, }, [85] = { [0] = alias_sym_field_identifier, }, [89] = { [1] = alias_sym_type_identifier, }, [93] = { [1] = alias_sym_shorthand_field_identifier, }, [97] = { [0] = alias_sym_type_identifier, }, [99] = { [1] = alias_sym_type_identifier, }, [100] = { [1] = alias_sym_type_identifier, }, [101] = { [0] = alias_sym_type_identifier, }, [108] = { [3] = sym_identifier, }, [109] = { [1] = alias_sym_type_identifier, }, [110] = { [1] = alias_sym_type_identifier, }, [111] = { [1] = alias_sym_type_identifier, }, [112] = { [0] = sym_identifier, }, [116] = { [0] = alias_sym_field_identifier, }, [119] = { [2] = alias_sym_type_identifier, }, [120] = { [2] = alias_sym_type_identifier, }, [121] = { [2] = alias_sym_type_identifier, }, [122] = { [2] = alias_sym_type_identifier, }, [125] = { [1] = alias_sym_field_identifier, }, [131] = { [0] = alias_sym_type_identifier, }, [132] = { [2] = alias_sym_shorthand_field_identifier, }, [133] = { [0] = alias_sym_field_identifier, }, [135] = { [1] = alias_sym_type_identifier, }, [137] = { [2] = alias_sym_type_identifier, }, [138] = { [2] = alias_sym_type_identifier, }, [149] = { [1] = alias_sym_type_identifier, }, [150] = { [1] = alias_sym_type_identifier, }, [151] = { [1] = alias_sym_field_identifier, }, [157] = { [2] = alias_sym_type_identifier, }, [158] = { [2] = alias_sym_type_identifier, }, [159] = { [2] = alias_sym_type_identifier, }, [160] = { [2] = alias_sym_type_identifier, }, [167] = { [0] = alias_sym_type_identifier, }, [168] = { [1] = alias_sym_field_identifier, }, [169] = { [2] = alias_sym_type_identifier, }, [179] = { [2] = alias_sym_type_identifier, }, [180] = { [2] = alias_sym_type_identifier, }, [186] = { [2] = alias_sym_field_identifier, }, }; static const uint16_t ts_non_terminal_alias_map[] = { sym_primitive_type, 2, sym_primitive_type, sym_identifier, sym_asm_item, 2, sym_asm_item, alias_sym_asm_expression, sym_generic_type_with_turbofish, 2, sym_generic_type_with_turbofish, sym_generic_type, sym__let_chain, 2, sym__let_chain, alias_sym_let_chain, 0, }; static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [0] = 0, [1] = 1, [2] = 2, [3] = 2, [4] = 4, [5] = 5, [6] = 6, [7] = 6, [8] = 4, [9] = 2, [10] = 6, [11] = 6, [12] = 2, [13] = 6, [14] = 2, [15] = 15, [16] = 16, [17] = 17, [18] = 18, [19] = 19, [20] = 16, [21] = 21, [22] = 19, [23] = 15, [24] = 18, [25] = 21, [26] = 17, [27] = 16, [28] = 16, [29] = 19, [30] = 19, [31] = 31, [32] = 32, [33] = 32, [34] = 32, [35] = 35, [36] = 35, [37] = 35, [38] = 38, [39] = 38, [40] = 38, [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] = 54, [55] = 55, [56] = 56, [57] = 57, [58] = 58, [59] = 59, [60] = 60, [61] = 61, [62] = 62, [63] = 63, [64] = 64, [65] = 65, [66] = 66, [67] = 67, [68] = 68, [69] = 69, [70] = 70, [71] = 71, [72] = 72, [73] = 60, [74] = 59, [75] = 72, [76] = 60, [77] = 59, [78] = 72, [79] = 79, [80] = 80, [81] = 81, [82] = 82, [83] = 63, [84] = 84, [85] = 85, [86] = 86, [87] = 87, [88] = 87, [89] = 89, [90] = 90, [91] = 85, [92] = 92, [93] = 93, [94] = 94, [95] = 95, [96] = 96, [97] = 97, [98] = 94, [99] = 99, [100] = 96, [101] = 101, [102] = 99, [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] = 116, [117] = 117, [118] = 118, [119] = 119, [120] = 120, [121] = 121, [122] = 119, [123] = 123, [124] = 124, [125] = 125, [126] = 126, [127] = 127, [128] = 128, [129] = 129, [130] = 130, [131] = 131, [132] = 132, [133] = 133, [134] = 134, [135] = 107, [136] = 116, [137] = 137, [138] = 138, [139] = 114, [140] = 140, [141] = 129, [142] = 142, [143] = 143, [144] = 124, [145] = 129, [146] = 146, [147] = 125, [148] = 148, [149] = 149, [150] = 126, [151] = 127, [152] = 152, [153] = 104, [154] = 154, [155] = 128, [156] = 129, [157] = 130, [158] = 115, [159] = 138, [160] = 146, [161] = 131, [162] = 132, [163] = 117, [164] = 118, [165] = 142, [166] = 149, [167] = 152, [168] = 105, [169] = 109, [170] = 111, [171] = 130, [172] = 172, [173] = 146, [174] = 133, [175] = 105, [176] = 134, [177] = 177, [178] = 178, [179] = 179, [180] = 179, [181] = 181, [182] = 181, [183] = 181, [184] = 184, [185] = 185, [186] = 186, [187] = 184, [188] = 185, [189] = 186, [190] = 190, [191] = 191, [192] = 192, [193] = 192, [194] = 194, [195] = 195, [196] = 194, [197] = 194, [198] = 198, [199] = 199, [200] = 200, [201] = 200, [202] = 200, [203] = 199, [204] = 204, [205] = 204, [206] = 206, [207] = 206, [208] = 204, [209] = 42, [210] = 46, [211] = 44, [212] = 49, [213] = 54, [214] = 67, [215] = 215, [216] = 56, [217] = 217, [218] = 58, [219] = 69, [220] = 79, [221] = 50, [222] = 68, [223] = 52, [224] = 64, [225] = 66, [226] = 226, [227] = 227, [228] = 228, [229] = 229, [230] = 230, [231] = 231, [232] = 232, [233] = 233, [234] = 234, [235] = 235, [236] = 236, [237] = 237, [238] = 238, [239] = 239, [240] = 240, [241] = 241, [242] = 242, [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] = 260, [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] = 277, [278] = 278, [279] = 279, [280] = 280, [281] = 281, [282] = 282, [283] = 283, [284] = 284, [285] = 285, [286] = 286, [287] = 287, [288] = 288, [289] = 289, [290] = 290, [291] = 291, [292] = 292, [293] = 293, [294] = 294, [295] = 295, [296] = 296, [297] = 297, [298] = 298, [299] = 299, [300] = 300, [301] = 301, [302] = 302, [303] = 303, [304] = 304, [305] = 305, [306] = 306, [307] = 307, [308] = 308, [309] = 309, [310] = 310, [311] = 311, [312] = 312, [313] = 313, [314] = 314, [315] = 315, [316] = 316, [317] = 317, [318] = 318, [319] = 319, [320] = 320, [321] = 321, [322] = 322, [323] = 323, [324] = 324, [325] = 325, [326] = 326, [327] = 327, [328] = 328, [329] = 329, [330] = 330, [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] = 344, [345] = 345, [346] = 346, [347] = 347, [348] = 348, [349] = 349, [350] = 350, [351] = 351, [352] = 352, [353] = 353, [354] = 354, [355] = 355, [356] = 356, [357] = 357, [358] = 358, [359] = 359, [360] = 360, [361] = 361, [362] = 362, [363] = 363, [364] = 364, [365] = 365, [366] = 366, [367] = 367, [368] = 368, [369] = 369, [370] = 44, [371] = 371, [372] = 372, [373] = 49, [374] = 46, [375] = 375, [376] = 376, [377] = 377, [378] = 378, [379] = 379, [380] = 366, [381] = 381, [382] = 382, [383] = 383, [384] = 384, [385] = 385, [386] = 386, [387] = 366, [388] = 388, [389] = 389, [390] = 390, [391] = 391, [392] = 392, [393] = 393, [394] = 394, [395] = 395, [396] = 396, [397] = 397, [398] = 398, [399] = 399, [400] = 400, [401] = 401, [402] = 402, [403] = 403, [404] = 404, [405] = 405, [406] = 406, [407] = 407, [408] = 408, [409] = 408, [410] = 408, [411] = 411, [412] = 412, [413] = 413, [414] = 414, [415] = 415, [416] = 416, [417] = 417, [418] = 418, [419] = 419, [420] = 420, [421] = 421, [422] = 422, [423] = 418, [424] = 424, [425] = 419, [426] = 417, [427] = 427, [428] = 428, [429] = 429, [430] = 421, [431] = 420, [432] = 416, [433] = 433, [434] = 434, [435] = 435, [436] = 436, [437] = 437, [438] = 438, [439] = 439, [440] = 440, [441] = 441, [442] = 442, [443] = 443, [444] = 444, [445] = 445, [446] = 446, [447] = 447, [448] = 448, [449] = 449, [450] = 450, [451] = 451, [452] = 452, [453] = 453, [454] = 454, [455] = 455, [456] = 453, [457] = 457, [458] = 446, [459] = 449, [460] = 460, [461] = 461, [462] = 462, [463] = 463, [464] = 464, [465] = 464, [466] = 447, [467] = 464, [468] = 447, [469] = 469, [470] = 470, [471] = 471, [472] = 470, [473] = 471, [474] = 474, [475] = 475, [476] = 476, [477] = 476, [478] = 478, [479] = 479, [480] = 385, [481] = 406, [482] = 482, [483] = 483, [484] = 484, [485] = 355, [486] = 486, [487] = 487, [488] = 488, [489] = 489, [490] = 490, [491] = 491, [492] = 492, [493] = 493, [494] = 494, [495] = 495, [496] = 496, [497] = 497, [498] = 498, [499] = 499, [500] = 500, [501] = 501, [502] = 502, [503] = 503, [504] = 504, [505] = 505, [506] = 506, [507] = 506, [508] = 508, [509] = 505, [510] = 508, [511] = 511, [512] = 512, [513] = 513, [514] = 514, [515] = 515, [516] = 516, [517] = 512, [518] = 512, [519] = 516, [520] = 512, [521] = 521, [522] = 514, [523] = 521, [524] = 513, [525] = 525, [526] = 526, [527] = 527, [528] = 528, [529] = 529, [530] = 530, [531] = 531, [532] = 532, [533] = 533, [534] = 534, [535] = 535, [536] = 536, [537] = 537, [538] = 538, [539] = 532, [540] = 528, [541] = 541, [542] = 542, [543] = 543, [544] = 525, [545] = 545, [546] = 546, [547] = 547, [548] = 545, [549] = 534, [550] = 541, [551] = 537, [552] = 552, [553] = 553, [554] = 554, [555] = 555, [556] = 537, [557] = 538, [558] = 542, [559] = 543, [560] = 560, [561] = 561, [562] = 534, [563] = 563, [564] = 564, [565] = 565, [566] = 566, [567] = 567, [568] = 568, [569] = 569, [570] = 570, [571] = 537, [572] = 538, [573] = 546, [574] = 538, [575] = 546, [576] = 576, [577] = 577, [578] = 578, [579] = 542, [580] = 580, [581] = 581, [582] = 582, [583] = 583, [584] = 543, [585] = 585, [586] = 586, [587] = 587, [588] = 588, [589] = 589, [590] = 525, [591] = 563, [592] = 578, [593] = 587, [594] = 594, [595] = 576, [596] = 535, [597] = 547, [598] = 567, [599] = 599, [600] = 585, [601] = 589, [602] = 594, [603] = 560, [604] = 604, [605] = 565, [606] = 568, [607] = 530, [608] = 608, [609] = 564, [610] = 570, [611] = 611, [612] = 566, [613] = 553, [614] = 608, [615] = 599, [616] = 616, [617] = 488, [618] = 618, [619] = 489, [620] = 484, [621] = 385, [622] = 406, [623] = 623, [624] = 355, [625] = 625, [626] = 626, [627] = 627, [628] = 628, [629] = 629, [630] = 630, [631] = 631, [632] = 632, [633] = 633, [634] = 634, [635] = 635, [636] = 636, [637] = 637, [638] = 638, [639] = 639, [640] = 640, [641] = 641, [642] = 642, [643] = 643, [644] = 644, [645] = 645, [646] = 646, [647] = 647, [648] = 648, [649] = 649, [650] = 650, [651] = 651, [652] = 652, [653] = 653, [654] = 654, [655] = 655, [656] = 656, [657] = 42, [658] = 658, [659] = 178, [660] = 660, [661] = 661, [662] = 662, [663] = 663, [664] = 664, [665] = 665, [666] = 666, [667] = 667, [668] = 668, [669] = 669, [670] = 670, [671] = 671, [672] = 672, [673] = 478, [674] = 674, [675] = 50, [676] = 676, [677] = 636, [678] = 678, [679] = 679, [680] = 680, [681] = 681, [682] = 53, [683] = 54, [684] = 684, [685] = 64, [686] = 686, [687] = 44, [688] = 483, [689] = 689, [690] = 66, [691] = 691, [692] = 692, [693] = 693, [694] = 694, [695] = 695, [696] = 696, [697] = 697, [698] = 698, [699] = 699, [700] = 700, [701] = 701, [702] = 702, [703] = 703, [704] = 704, [705] = 56, [706] = 706, [707] = 707, [708] = 708, [709] = 709, [710] = 58, [711] = 711, [712] = 712, [713] = 713, [714] = 714, [715] = 487, [716] = 716, [717] = 717, [718] = 718, [719] = 719, [720] = 720, [721] = 721, [722] = 67, [723] = 68, [724] = 69, [725] = 725, [726] = 49, [727] = 71, [728] = 728, [729] = 729, [730] = 730, [731] = 731, [732] = 732, [733] = 636, [734] = 79, [735] = 735, [736] = 736, [737] = 737, [738] = 738, [739] = 739, [740] = 740, [741] = 741, [742] = 742, [743] = 52, [744] = 744, [745] = 46, [746] = 57, [747] = 747, [748] = 748, [749] = 749, [750] = 750, [751] = 751, [752] = 486, [753] = 633, [754] = 754, [755] = 755, [756] = 756, [757] = 757, [758] = 758, [759] = 759, [760] = 760, [761] = 761, [762] = 762, [763] = 763, [764] = 764, [765] = 765, [766] = 766, [767] = 767, [768] = 768, [769] = 769, [770] = 770, [771] = 771, [772] = 772, [773] = 773, [774] = 774, [775] = 775, [776] = 776, [777] = 777, [778] = 778, [779] = 779, [780] = 633, [781] = 781, [782] = 782, [783] = 783, [784] = 784, [785] = 785, [786] = 784, [787] = 778, [788] = 779, [789] = 783, [790] = 632, [791] = 778, [792] = 783, [793] = 793, [794] = 794, [795] = 779, [796] = 784, [797] = 632, [798] = 632, [799] = 643, [800] = 800, [801] = 652, [802] = 802, [803] = 803, [804] = 804, [805] = 805, [806] = 806, [807] = 807, [808] = 629, [809] = 802, [810] = 804, [811] = 627, [812] = 812, [813] = 804, [814] = 802, [815] = 803, [816] = 816, [817] = 806, [818] = 818, [819] = 819, [820] = 807, [821] = 642, [822] = 664, [823] = 807, [824] = 747, [825] = 643, [826] = 645, [827] = 712, [828] = 725, [829] = 829, [830] = 830, [831] = 749, [832] = 662, [833] = 833, [834] = 652, [835] = 835, [836] = 836, [837] = 837, [838] = 838, [839] = 839, [840] = 840, [841] = 840, [842] = 839, [843] = 843, [844] = 844, [845] = 845, [846] = 846, [847] = 847, [848] = 775, [849] = 849, [850] = 850, [851] = 838, [852] = 843, [853] = 853, [854] = 846, [855] = 855, [856] = 843, [857] = 839, [858] = 846, [859] = 846, [860] = 773, [861] = 861, [862] = 764, [863] = 863, [864] = 847, [865] = 865, [866] = 866, [867] = 867, [868] = 868, [869] = 869, [870] = 866, [871] = 759, [872] = 872, [873] = 838, [874] = 874, [875] = 771, [876] = 837, [877] = 760, [878] = 878, [879] = 763, [880] = 847, [881] = 765, [882] = 766, [883] = 767, [884] = 884, [885] = 768, [886] = 886, [887] = 770, [888] = 846, [889] = 774, [890] = 761, [891] = 843, [892] = 843, [893] = 769, [894] = 872, [895] = 895, [896] = 896, [897] = 776, [898] = 803, [899] = 899, [900] = 772, [901] = 777, [902] = 806, [903] = 474, [904] = 904, [905] = 905, [906] = 906, [907] = 756, [908] = 757, [909] = 909, [910] = 910, [911] = 911, [912] = 912, [913] = 913, [914] = 914, [915] = 914, [916] = 916, [917] = 917, [918] = 918, [919] = 919, [920] = 917, [921] = 921, [922] = 914, [923] = 909, [924] = 910, [925] = 925, [926] = 921, [927] = 916, [928] = 919, [929] = 929, [930] = 911, [931] = 931, [932] = 932, [933] = 913, [934] = 931, [935] = 935, [936] = 936, [937] = 937, [938] = 912, [939] = 939, [940] = 940, [941] = 941, [942] = 385, [943] = 355, [944] = 406, [945] = 945, [946] = 946, [947] = 947, [948] = 947, [949] = 945, [950] = 950, [951] = 951, [952] = 952, [953] = 953, [954] = 954, [955] = 954, [956] = 954, [957] = 954, [958] = 954, [959] = 959, [960] = 960, [961] = 959, [962] = 962, [963] = 962, [964] = 49, [965] = 44, [966] = 46, [967] = 967, [968] = 632, [969] = 631, [970] = 630, [971] = 488, [972] = 628, [973] = 489, [974] = 630, [975] = 484, [976] = 667, [977] = 628, [978] = 632, [979] = 631, [980] = 655, [981] = 640, [982] = 654, [983] = 656, [984] = 635, [985] = 616, [986] = 986, [987] = 385, [988] = 355, [989] = 406, [990] = 638, [991] = 991, [992] = 992, [993] = 993, [994] = 618, [995] = 270, [996] = 372, [997] = 377, [998] = 378, [999] = 379, [1000] = 660, [1001] = 625, [1002] = 239, [1003] = 245, [1004] = 246, [1005] = 247, [1006] = 289, [1007] = 290, [1008] = 665, [1009] = 342, [1010] = 343, [1011] = 344, [1012] = 345, [1013] = 346, [1014] = 347, [1015] = 348, [1016] = 349, [1017] = 350, [1018] = 351, [1019] = 352, [1020] = 353, [1021] = 354, [1022] = 356, [1023] = 358, [1024] = 359, [1025] = 360, [1026] = 361, [1027] = 362, [1028] = 363, [1029] = 367, [1030] = 369, [1031] = 371, [1032] = 375, [1033] = 376, [1034] = 648, [1035] = 381, [1036] = 382, [1037] = 383, [1038] = 384, [1039] = 386, [1040] = 388, [1041] = 389, [1042] = 390, [1043] = 391, [1044] = 392, [1045] = 393, [1046] = 394, [1047] = 396, [1048] = 398, [1049] = 399, [1050] = 400, [1051] = 401, [1052] = 402, [1053] = 403, [1054] = 404, [1055] = 405, [1056] = 227, [1057] = 229, [1058] = 230, [1059] = 231, [1060] = 232, [1061] = 233, [1062] = 234, [1063] = 235, [1064] = 236, [1065] = 237, [1066] = 407, [1067] = 238, [1068] = 244, [1069] = 248, [1070] = 249, [1071] = 250, [1072] = 251, [1073] = 252, [1074] = 253, [1075] = 254, [1076] = 255, [1077] = 256, [1078] = 257, [1079] = 258, [1080] = 259, [1081] = 260, [1082] = 261, [1083] = 263, [1084] = 266, [1085] = 267, [1086] = 268, [1087] = 269, [1088] = 669, [1089] = 271, [1090] = 272, [1091] = 641, [1092] = 274, [1093] = 275, [1094] = 277, [1095] = 278, [1096] = 279, [1097] = 280, [1098] = 281, [1099] = 282, [1100] = 226, [1101] = 284, [1102] = 285, [1103] = 286, [1104] = 287, [1105] = 288, [1106] = 291, [1107] = 292, [1108] = 293, [1109] = 294, [1110] = 295, [1111] = 296, [1112] = 297, [1113] = 298, [1114] = 299, [1115] = 300, [1116] = 301, [1117] = 302, [1118] = 303, [1119] = 304, [1120] = 305, [1121] = 306, [1122] = 307, [1123] = 308, [1124] = 309, [1125] = 310, [1126] = 311, [1127] = 312, [1128] = 313, [1129] = 315, [1130] = 666, [1131] = 316, [1132] = 317, [1133] = 318, [1134] = 319, [1135] = 320, [1136] = 322, [1137] = 323, [1138] = 324, [1139] = 325, [1140] = 326, [1141] = 327, [1142] = 328, [1143] = 329, [1144] = 330, [1145] = 331, [1146] = 332, [1147] = 333, [1148] = 334, [1149] = 335, [1150] = 336, [1151] = 337, [1152] = 338, [1153] = 339, [1154] = 340, [1155] = 341, [1156] = 646, [1157] = 668, [1158] = 634, [1159] = 71, [1160] = 647, [1161] = 57, [1162] = 265, [1163] = 53, [1164] = 637, [1165] = 314, [1166] = 321, [1167] = 283, [1168] = 357, [1169] = 364, [1170] = 623, [1171] = 1171, [1172] = 639, [1173] = 365, [1174] = 273, [1175] = 693, [1176] = 1176, [1177] = 708, [1178] = 676, [1179] = 684, [1180] = 713, [1181] = 478, [1182] = 711, [1183] = 487, [1184] = 735, [1185] = 737, [1186] = 732, [1187] = 486, [1188] = 671, [1189] = 672, [1190] = 692, [1191] = 694, [1192] = 740, [1193] = 716, [1194] = 719, [1195] = 709, [1196] = 1196, [1197] = 1197, [1198] = 1196, [1199] = 1199, [1200] = 1200, [1201] = 1196, [1202] = 1202, [1203] = 1203, [1204] = 1204, [1205] = 1205, [1206] = 1206, [1207] = 1207, [1208] = 663, [1209] = 658, [1210] = 1210, [1211] = 649, [1212] = 661, [1213] = 1213, [1214] = 644, [1215] = 1215, [1216] = 1216, [1217] = 1217, [1218] = 1218, [1219] = 1219, [1220] = 1220, [1221] = 1221, [1222] = 1222, [1223] = 1223, [1224] = 1224, [1225] = 1225, [1226] = 50, [1227] = 1227, [1228] = 1228, [1229] = 1229, [1230] = 1230, [1231] = 1231, [1232] = 1232, [1233] = 1233, [1234] = 1234, [1235] = 1235, [1236] = 1236, [1237] = 1237, [1238] = 1238, [1239] = 1239, [1240] = 1240, [1241] = 1241, [1242] = 1242, [1243] = 1243, [1244] = 1244, [1245] = 1245, [1246] = 1246, [1247] = 1247, [1248] = 1248, [1249] = 618, [1250] = 631, [1251] = 628, [1252] = 630, [1253] = 632, [1254] = 631, [1255] = 628, [1256] = 616, [1257] = 1257, [1258] = 1248, [1259] = 628, [1260] = 630, [1261] = 632, [1262] = 631, [1263] = 951, [1264] = 630, [1265] = 1257, [1266] = 632, [1267] = 1267, [1268] = 1268, [1269] = 1268, [1270] = 950, [1271] = 952, [1272] = 953, [1273] = 1273, [1274] = 1274, [1275] = 625, [1276] = 1276, [1277] = 1248, [1278] = 623, [1279] = 1274, [1280] = 1280, [1281] = 1280, [1282] = 1282, [1283] = 1283, [1284] = 1283, [1285] = 1285, [1286] = 1286, [1287] = 1287, [1288] = 1286, [1289] = 1289, [1290] = 1290, [1291] = 1291, [1292] = 1292, [1293] = 1293, [1294] = 1294, [1295] = 1293, [1296] = 1296, [1297] = 1292, [1298] = 1289, [1299] = 1299, [1300] = 1300, [1301] = 1301, [1302] = 1302, [1303] = 1303, [1304] = 1304, [1305] = 1305, [1306] = 1305, [1307] = 1307, [1308] = 1301, [1309] = 1309, [1310] = 1309, [1311] = 1302, [1312] = 1312, [1313] = 1313, [1314] = 1314, [1315] = 1315, [1316] = 1316, [1317] = 1317, [1318] = 1318, [1319] = 1319, [1320] = 1320, [1321] = 1313, [1322] = 1312, [1323] = 1300, [1324] = 1171, [1325] = 1313, [1326] = 1326, [1327] = 1304, [1328] = 1307, [1329] = 1329, [1330] = 1330, [1331] = 1331, [1332] = 1332, [1333] = 1333, [1334] = 1334, [1335] = 1335, [1336] = 1336, [1337] = 1337, [1338] = 1338, [1339] = 1339, [1340] = 658, [1341] = 1341, [1342] = 661, [1343] = 663, [1344] = 1344, [1345] = 1344, [1346] = 1338, [1347] = 1339, [1348] = 649, [1349] = 1330, [1350] = 1350, [1351] = 1331, [1352] = 1332, [1353] = 1353, [1354] = 1354, [1355] = 1341, [1356] = 1353, [1357] = 1357, [1358] = 1358, [1359] = 1171, [1360] = 1360, [1361] = 1361, [1362] = 1362, [1363] = 1363, [1364] = 1364, [1365] = 1365, [1366] = 1366, [1367] = 1367, [1368] = 1368, [1369] = 1369, [1370] = 1370, [1371] = 1371, [1372] = 1372, [1373] = 1373, [1374] = 1374, [1375] = 1372, [1376] = 1376, [1377] = 1377, [1378] = 1378, [1379] = 1379, [1380] = 1372, [1381] = 1381, [1382] = 1382, [1383] = 1383, [1384] = 1384, [1385] = 1362, [1386] = 1386, [1387] = 1387, [1388] = 1388, [1389] = 1389, [1390] = 1389, [1391] = 1391, [1392] = 1392, [1393] = 1387, [1394] = 1382, [1395] = 1391, [1396] = 1396, [1397] = 1361, [1398] = 1398, [1399] = 1399, [1400] = 1374, [1401] = 1379, [1402] = 1402, [1403] = 1403, [1404] = 1404, [1405] = 1366, [1406] = 1376, [1407] = 1378, [1408] = 1408, [1409] = 1409, [1410] = 1410, [1411] = 1411, [1412] = 1365, [1413] = 1404, [1414] = 1403, [1415] = 1408, [1416] = 1384, [1417] = 1417, [1418] = 1171, [1419] = 1409, [1420] = 1370, [1421] = 1373, [1422] = 1367, [1423] = 1369, [1424] = 1398, [1425] = 1388, [1426] = 1373, [1427] = 1371, [1428] = 1381, [1429] = 1396, [1430] = 1430, [1431] = 1392, [1432] = 1369, [1433] = 1371, [1434] = 1434, [1435] = 1430, [1436] = 1364, [1437] = 1437, [1438] = 1411, [1439] = 1377, [1440] = 1440, [1441] = 1441, [1442] = 1442, [1443] = 1443, [1444] = 1444, [1445] = 1445, [1446] = 1445, [1447] = 1447, [1448] = 1448, [1449] = 1449, [1450] = 1437, [1451] = 1451, [1452] = 1452, [1453] = 1368, [1454] = 1454, [1455] = 1455, [1456] = 1455, [1457] = 1457, [1458] = 1458, [1459] = 1447, [1460] = 1454, [1461] = 1461, [1462] = 1443, [1463] = 1448, [1464] = 1464, [1465] = 1461, [1466] = 1452, [1467] = 1457, [1468] = 1443, [1469] = 474, [1470] = 1445, [1471] = 1461, [1472] = 1455, [1473] = 1434, [1474] = 1448, [1475] = 1363, [1476] = 1464, [1477] = 1477, [1478] = 1452, [1479] = 1479, [1480] = 1480, [1481] = 1481, [1482] = 1482, [1483] = 1483, [1484] = 1484, [1485] = 1485, [1486] = 1486, [1487] = 1485, [1488] = 1488, [1489] = 1489, [1490] = 1490, [1491] = 1491, [1492] = 1492, [1493] = 1493, [1494] = 1494, [1495] = 1495, [1496] = 1496, [1497] = 1494, [1498] = 1498, [1499] = 1499, [1500] = 1500, [1501] = 1501, [1502] = 1493, [1503] = 1503, [1504] = 1491, [1505] = 1505, [1506] = 1506, [1507] = 1507, [1508] = 1508, [1509] = 1489, [1510] = 1510, [1511] = 648, [1512] = 1495, [1513] = 1513, [1514] = 1514, [1515] = 1515, [1516] = 1516, [1517] = 1510, [1518] = 1518, [1519] = 1481, [1520] = 1520, [1521] = 1521, [1522] = 1514, [1523] = 1493, [1524] = 1508, [1525] = 1525, [1526] = 1496, [1527] = 1482, [1528] = 1528, [1529] = 1529, [1530] = 1530, [1531] = 1531, [1532] = 1491, [1533] = 1520, [1534] = 1534, [1535] = 1483, [1536] = 1536, [1537] = 1537, [1538] = 1530, [1539] = 1496, [1540] = 1540, [1541] = 1541, [1542] = 1542, [1543] = 648, [1544] = 1544, [1545] = 1545, [1546] = 1546, [1547] = 1541, [1548] = 1513, [1549] = 648, [1550] = 1550, [1551] = 1551, [1552] = 1531, [1553] = 1480, [1554] = 1554, [1555] = 1555, [1556] = 1556, [1557] = 1506, [1558] = 1558, [1559] = 1559, [1560] = 1560, [1561] = 1561, [1562] = 1562, [1563] = 1563, [1564] = 1564, [1565] = 1565, [1566] = 1566, [1567] = 1567, [1568] = 1568, [1569] = 1569, [1570] = 1570, [1571] = 1571, [1572] = 1572, [1573] = 1573, [1574] = 1574, [1575] = 1575, [1576] = 1576, [1577] = 1577, [1578] = 1578, [1579] = 1579, [1580] = 1580, [1581] = 1581, [1582] = 1582, [1583] = 1583, [1584] = 1584, [1585] = 1585, [1586] = 1586, [1587] = 1587, [1588] = 1588, [1589] = 1589, [1590] = 1590, [1591] = 1591, [1592] = 1566, [1593] = 1593, [1594] = 1594, [1595] = 1561, [1596] = 1596, [1597] = 1597, [1598] = 1598, [1599] = 1599, [1600] = 1600, [1601] = 1601, [1602] = 1602, [1603] = 1603, [1604] = 1604, [1605] = 1605, [1606] = 1606, [1607] = 1607, [1608] = 1608, [1609] = 1609, [1610] = 1601, [1611] = 861, [1612] = 1612, [1613] = 1613, [1614] = 1614, [1615] = 1615, [1616] = 835, [1617] = 1574, [1618] = 1618, [1619] = 1619, [1620] = 1620, [1621] = 1621, [1622] = 1622, [1623] = 1623, [1624] = 1624, [1625] = 1625, [1626] = 1626, [1627] = 1596, [1628] = 1628, [1629] = 1629, [1630] = 1630, [1631] = 1631, [1632] = 1632, [1633] = 1633, [1634] = 1634, [1635] = 1582, [1636] = 1636, [1637] = 1637, [1638] = 1638, [1639] = 1639, [1640] = 1614, [1641] = 1641, [1642] = 1599, [1643] = 1643, [1644] = 1644, [1645] = 1645, [1646] = 853, [1647] = 1594, [1648] = 1567, [1649] = 1600, [1650] = 855, [1651] = 1651, [1652] = 1652, [1653] = 1653, [1654] = 1654, [1655] = 1655, [1656] = 1656, [1657] = 1657, [1658] = 1658, [1659] = 1654, [1660] = 1660, [1661] = 1661, [1662] = 1662, [1663] = 1628, [1664] = 1656, [1665] = 1564, [1666] = 1657, [1667] = 1629, [1668] = 1668, [1669] = 1669, [1670] = 1628, [1671] = 1629, [1672] = 1672, [1673] = 1673, [1674] = 1674, [1675] = 1675, [1676] = 1676, [1677] = 1656, [1678] = 1657, [1679] = 1654, [1680] = 1630, [1681] = 1564, [1682] = 1682, [1683] = 1575, [1684] = 1684, [1685] = 1685, [1686] = 1656, [1687] = 1657, [1688] = 1654, [1689] = 1689, [1690] = 1564, [1691] = 1651, [1692] = 1657, [1693] = 1656, [1694] = 1657, [1695] = 1695, [1696] = 1696, [1697] = 1644, [1698] = 1698, [1699] = 1641, [1700] = 1700, [1701] = 1701, [1702] = 1620, [1703] = 1703, [1704] = 1704, [1705] = 1705, [1706] = 1706, [1707] = 1700, [1708] = 1708, [1709] = 1709, [1710] = 1564, [1711] = 1593, [1712] = 1633, [1713] = 1705, [1714] = 1714, [1715] = 1657, [1716] = 1674, [1717] = 1717, [1718] = 1584, [1719] = 1719, [1720] = 1625, [1721] = 1615, [1722] = 1654, [1723] = 1536, [1724] = 844, [1725] = 845, [1726] = 1726, [1727] = 1727, [1728] = 1559, [1729] = 1729, [1730] = 1730, [1731] = 1731, [1732] = 1732, [1733] = 1714, [1734] = 1607, [1735] = 1735, [1736] = 1736, [1737] = 1737, [1738] = 1578, [1739] = 1656, [1740] = 1740, [1741] = 1637, [1742] = 1742, [1743] = 1624, [1744] = 1744, [1745] = 1745, [1746] = 1645, [1747] = 1747, [1748] = 1748, [1749] = 1560, [1750] = 1750, [1751] = 1735, [1752] = 1752, [1753] = 1652, [1754] = 1754, [1755] = 1755, [1756] = 1756, [1757] = 1757, [1758] = 1758, [1759] = 1759, [1760] = 1760, [1761] = 1761, [1762] = 1762, [1763] = 1763, [1764] = 1764, [1765] = 1752, [1766] = 1586, [1767] = 1767, [1768] = 1768, [1769] = 1619, [1770] = 1770, [1771] = 1655, [1772] = 1772, [1773] = 1700, [1774] = 1708, [1775] = 1775, [1776] = 1668, [1777] = 1597, [1778] = 1778, [1779] = 1779, [1780] = 1780, [1781] = 1703, [1782] = 1729, [1783] = 1783, [1784] = 1609, [1785] = 1785, [1786] = 1700, [1787] = 1787, [1788] = 1788, [1789] = 1571, [1790] = 1790, [1791] = 1791, [1792] = 1792, [1793] = 1779, [1794] = 1587, [1795] = 1709, [1796] = 1787, [1797] = 1565, [1798] = 1798, [1799] = 1621, [1800] = 1568, [1801] = 1643, [1802] = 1802, [1803] = 1605, [1804] = 1656, [1805] = 1805, [1806] = 1806, [1807] = 1807, [1808] = 1808, [1809] = 1809, [1810] = 1810, [1811] = 1811, [1812] = 1812, [1813] = 1809, [1814] = 1814, [1815] = 1815, [1816] = 1816, [1817] = 1810, [1818] = 1818, [1819] = 1811, [1820] = 1812, [1821] = 1821, [1822] = 1822, [1823] = 1823, [1824] = 1824, [1825] = 1825, [1826] = 1826, [1827] = 1827, [1828] = 1828, [1829] = 1829, [1830] = 1830, [1831] = 1831, [1832] = 1832, [1833] = 1833, [1834] = 1834, [1835] = 1835, [1836] = 1836, [1837] = 1837, [1838] = 1838, [1839] = 1839, [1840] = 1814, [1841] = 1841, [1842] = 1842, [1843] = 1815, [1844] = 1844, [1845] = 1816, [1846] = 1818, [1847] = 1847, [1848] = 1848, [1849] = 1849, [1850] = 1850, [1851] = 1851, [1852] = 1852, [1853] = 671, [1854] = 672, [1855] = 1855, [1856] = 1856, [1857] = 1857, [1858] = 1823, [1859] = 1832, [1860] = 1834, [1861] = 1835, [1862] = 1862, [1863] = 1836, [1864] = 1864, [1865] = 1865, [1866] = 1866, [1867] = 1867, [1868] = 1868, [1869] = 1869, [1870] = 1870, [1871] = 1871, [1872] = 1872, [1873] = 1873, [1874] = 1807, [1875] = 1808, [1876] = 1876, [1877] = 1877, [1878] = 1878, [1879] = 1879, [1880] = 1880, [1881] = 1881, [1882] = 1882, [1883] = 1883, [1884] = 1884, [1885] = 1885, [1886] = 1878, [1887] = 1833, [1888] = 1867, [1889] = 1889, [1890] = 1890, [1891] = 1891, [1892] = 1856, [1893] = 1893, [1894] = 1894, [1895] = 1895, [1896] = 1896, [1897] = 1897, [1898] = 1898, [1899] = 1828, [1900] = 1900, [1901] = 1901, [1902] = 1902, [1903] = 1903, [1904] = 1904, [1905] = 1905, [1906] = 1906, [1907] = 1907, [1908] = 1908, [1909] = 1909, [1910] = 1822, [1911] = 1878, [1912] = 1912, [1913] = 1913, [1914] = 1830, [1915] = 1841, [1916] = 1900, [1917] = 1831, [1918] = 1833, [1919] = 483, [1920] = 1844, [1921] = 1921, [1922] = 1922, [1923] = 1867, [1924] = 1924, [1925] = 1824, [1926] = 1926, [1927] = 1844, [1928] = 1867, [1929] = 1929, [1930] = 1905, [1931] = 1889, [1932] = 1826, [1933] = 1333, [1934] = 1856, [1935] = 1929, [1936] = 1936, [1937] = 1881, [1938] = 1850, [1939] = 1902, [1940] = 1940, [1941] = 1851, [1942] = 1913, [1943] = 1943, [1944] = 1944, [1945] = 1945, [1946] = 1839, [1947] = 1947, [1948] = 1901, [1949] = 479, [1950] = 1805, [1951] = 1906, [1952] = 1828, [1953] = 1953, [1954] = 1881, [1955] = 1955, [1956] = 1956, [1957] = 1903, [1958] = 1943, [1959] = 482, [1960] = 1837, [1961] = 1924, [1962] = 1922, [1963] = 1936, [1964] = 1926, [1965] = 1849, [1966] = 1966, [1967] = 1890, [1968] = 1900, [1969] = 1943, [1970] = 1970, [1971] = 1825, [1972] = 1855, [1973] = 1973, [1974] = 1974, [1975] = 1974, [1976] = 1976, [1977] = 1908, [1978] = 1847, [1979] = 1979, [1980] = 1909, [1981] = 1981, [1982] = 1880, [1983] = 1805, [1984] = 732, [1985] = 1974, [1986] = 1847, [1987] = 1889, [1988] = 1956, [1989] = 1989, [1990] = 1990, [1991] = 1991, [1992] = 1992, [1993] = 1993, [1994] = 1994, [1995] = 1995, [1996] = 1996, [1997] = 1997, [1998] = 1998, [1999] = 1999, [2000] = 2000, [2001] = 2001, [2002] = 2002, [2003] = 2003, [2004] = 1991, [2005] = 2005, [2006] = 2006, [2007] = 2007, [2008] = 1995, [2009] = 2009, [2010] = 1997, [2011] = 1998, [2012] = 2012, [2013] = 2013, [2014] = 2014, [2015] = 2015, [2016] = 1991, [2017] = 1995, [2018] = 2018, [2019] = 1997, [2020] = 1998, [2021] = 2021, [2022] = 2022, [2023] = 1997, [2024] = 2024, [2025] = 1997, [2026] = 1997, [2027] = 2027, [2028] = 1994, [2029] = 2029, [2030] = 2030, [2031] = 2031, [2032] = 1991, [2033] = 2033, [2034] = 2034, [2035] = 2035, [2036] = 2036, [2037] = 2037, [2038] = 2038, [2039] = 2003, [2040] = 2040, [2041] = 2000, [2042] = 2042, [2043] = 2043, [2044] = 2015, [2045] = 2045, [2046] = 2046, [2047] = 2047, [2048] = 2048, [2049] = 2049, [2050] = 2050, [2051] = 2051, [2052] = 2045, [2053] = 2053, [2054] = 2054, [2055] = 2055, [2056] = 2056, [2057] = 1989, [2058] = 2021, [2059] = 1989, [2060] = 2060, [2061] = 2031, [2062] = 2054, [2063] = 2063, [2064] = 1993, [2065] = 2053, [2066] = 2022, [2067] = 2035, [2068] = 2055, [2069] = 2069, [2070] = 1999, [2071] = 2071, [2072] = 2072, [2073] = 2036, [2074] = 2074, [2075] = 2075, [2076] = 2069, [2077] = 2077, [2078] = 2078, [2079] = 2079, [2080] = 2006, [2081] = 2081, [2082] = 2082, [2083] = 2083, [2084] = 2078, [2085] = 2085, [2086] = 2086, [2087] = 2087, [2088] = 2088, [2089] = 2089, [2090] = 1991, [2091] = 2091, [2092] = 2092, [2093] = 2093, [2094] = 2094, [2095] = 1995, [2096] = 1996, [2097] = 1997, [2098] = 2081, [2099] = 1998, [2100] = 2100, [2101] = 2046, [2102] = 2102, [2103] = 2103, [2104] = 2075, [2105] = 2105, [2106] = 1991, [2107] = 2107, [2108] = 2108, [2109] = 2109, [2110] = 2110, [2111] = 2111, [2112] = 1998, [2113] = 2113, [2114] = 1995, [2115] = 2115, [2116] = 2116, [2117] = 2117, [2118] = 2082, [2119] = 2119, [2120] = 2005, [2121] = 2089, [2122] = 2083, [2123] = 2087, [2124] = 1995, [2125] = 2125, [2126] = 2105, [2127] = 1997, [2128] = 1998, [2129] = 2129, [2130] = 2033, [2131] = 2131, [2132] = 2132, [2133] = 2133, [2134] = 2134, [2135] = 2135, [2136] = 2038, [2137] = 2034, [2138] = 2138, [2139] = 2135, [2140] = 2015, [2141] = 2046, [2142] = 2043, [2143] = 2049, [2144] = 2050, [2145] = 2049, [2146] = 2146, [2147] = 2060, [2148] = 2050, [2149] = 2071, [2150] = 2040, [2151] = 2042, [2152] = 2152, [2153] = 2153, [2154] = 2091, [2155] = 2155, [2156] = 2156, [2157] = 2157, [2158] = 2046, [2159] = 2159, [2160] = 2049, [2161] = 2115, [2162] = 2060, [2163] = 2049, [2164] = 2049, [2165] = 2049, [2166] = 2049, [2167] = 2049, [2168] = 2087, [2169] = 2135, [2170] = 2170, [2171] = 2056, [2172] = 2048, [2173] = 2173, [2174] = 2029, [2175] = 2063, [2176] = 2176, [2177] = 2177, [2178] = 2003, [2179] = 2179, [2180] = 1997, [2181] = 2091, [2182] = 2094, [2183] = 2037, [2184] = 1993, [2185] = 2088, [2186] = 2038, [2187] = 2187, [2188] = 2040, [2189] = 2042, [2190] = 2030, [2191] = 2157, [2192] = 2156, [2193] = 2187, [2194] = 2108, [2195] = 2079, [2196] = 2116, [2197] = 2012, [2198] = 2027, [2199] = 2108, [2200] = 2176, [2201] = 2014, }; static TSCharacterRange sym_identifier_character_set_1[] = { {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5}, {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828}, {0x840, 0x858}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x8a0, 0x8c9}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc61}, {0xc80, 0xc80}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcdd, 0xcde}, {0xce0, 0xce1}, {0xcf1, 0xcf2}, {0xd04, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61}, {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe32}, {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb2}, {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c}, {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1711}, {0x171f, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x18a8}, {0x18aa, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4c}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa}, {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3005, 0x3007}, {0x3021, 0x3029}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, {0xa7f2, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1}, {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xff9d}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10e80, 0x10ea9}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x1123f, 0x11240}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f}, {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11f02, 0x11f02}, {0x11f04, 0x11f10}, {0x11f12, 0x11f33}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, {0x13441, 0x13446}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e030, 0x1e06d}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad}, {0x1e2c0, 0x1e2eb}, {0x1e4d0, 0x1e4eb}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, }; static TSCharacterRange sym_identifier_character_set_3[] = { {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xb7, 0xb7}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x300, 0x374}, {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x483, 0x487}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x591, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, {0x5c4, 0x5c5}, {0x5c7, 0x5c7}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x610, 0x61a}, {0x620, 0x669}, {0x66e, 0x6d3}, {0x6d5, 0x6dc}, {0x6df, 0x6e8}, {0x6ea, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x74a}, {0x74d, 0x7b1}, {0x7c0, 0x7f5}, {0x7fa, 0x7fa}, {0x7fd, 0x7fd}, {0x800, 0x82d}, {0x840, 0x85b}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x898, 0x8e1}, {0x8e3, 0x963}, {0x966, 0x96f}, {0x971, 0x983}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bc, 0x9c4}, {0x9c7, 0x9c8}, {0x9cb, 0x9ce}, {0x9d7, 0x9d7}, {0x9dc, 0x9dd}, {0x9df, 0x9e3}, {0x9e6, 0x9f1}, {0x9fc, 0x9fc}, {0x9fe, 0x9fe}, {0xa01, 0xa03}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa3c, 0xa3c}, {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa51, 0xa51}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa66, 0xa75}, {0xa81, 0xa83}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabc, 0xac5}, {0xac7, 0xac9}, {0xacb, 0xacd}, {0xad0, 0xad0}, {0xae0, 0xae3}, {0xae6, 0xaef}, {0xaf9, 0xaff}, {0xb01, 0xb03}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3c, 0xb44}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, {0xb55, 0xb57}, {0xb5c, 0xb5d}, {0xb5f, 0xb63}, {0xb66, 0xb6f}, {0xb71, 0xb71}, {0xb82, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbbe, 0xbc2}, {0xbc6, 0xbc8}, {0xbca, 0xbcd}, {0xbd0, 0xbd0}, {0xbd7, 0xbd7}, {0xbe6, 0xbef}, {0xc00, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3c, 0xc44}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc63}, {0xc66, 0xc6f}, {0xc80, 0xc83}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbc, 0xcc4}, {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf3}, {0xd00, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd44}, {0xd46, 0xd48}, {0xd4a, 0xd4e}, {0xd54, 0xd57}, {0xd5f, 0xd63}, {0xd66, 0xd6f}, {0xd7a, 0xd7f}, {0xd81, 0xd83}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xde6, 0xdef}, {0xdf2, 0xdf3}, {0xe01, 0xe3a}, {0xe40, 0xe4e}, {0xe50, 0xe59}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xece}, {0xed0, 0xed9}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf18, 0xf19}, {0xf20, 0xf29}, {0xf35, 0xf35}, {0xf37, 0xf37}, {0xf39, 0xf39}, {0xf3e, 0xf47}, {0xf49, 0xf6c}, {0xf71, 0xf84}, {0xf86, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x1000, 0x1049}, {0x1050, 0x109d}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1715}, {0x171f, 0x1734}, {0x1740, 0x1753}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dd}, {0x17e0, 0x17e9}, {0x180b, 0x180d}, {0x180f, 0x1819}, {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b}, {0x1946, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, {0x1aa7, 0x1aa7}, {0x1ab0, 0x1abd}, {0x1abf, 0x1ace}, {0x1b00, 0x1b4c}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73}, {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, {0x1cd4, 0x1cfa}, {0x1d00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x200c, 0x200d}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x3099, 0x309a}, {0x309d, 0x309f}, {0x30a1, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, {0xa7f2, 0xa827}, {0xa82c, 0xa82c}, {0xa840, 0xa873}, {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0}, {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabea}, {0xabec, 0xabed}, {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff65, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x101fd, 0x101fd}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x102e0, 0x102e0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10efd, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f50}, {0x10f70, 0x10f85}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11000, 0x11046}, {0x11066, 0x11075}, {0x1107f, 0x110ba}, {0x110c2, 0x110c2}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11147}, {0x11150, 0x11173}, {0x11176, 0x11176}, {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x11241}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, {0x11350, 0x11350}, {0x11357, 0x11357}, {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x1145e, 0x11461}, {0x11480, 0x114c5}, {0x114c7, 0x114c7}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, {0x11644, 0x11644}, {0x11650, 0x11659}, {0x11680, 0x116b8}, {0x116c0, 0x116c9}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x11739}, {0x11740, 0x11746}, {0x11800, 0x1183a}, {0x118a0, 0x118e9}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x11935}, {0x11937, 0x11938}, {0x1193b, 0x11943}, {0x11950, 0x11959}, {0x119a0, 0x119a7}, {0x119aa, 0x119d7}, {0x119da, 0x119e1}, {0x119e3, 0x119e4}, {0x11a00, 0x11a3e}, {0x11a47, 0x11a47}, {0x11a50, 0x11a99}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3a, 0x11d3a}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, {0x11f00, 0x11f10}, {0x11f12, 0x11f3a}, {0x11f3e, 0x11f42}, {0x11f50, 0x11f59}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, {0x13440, 0x13455}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b50, 0x16b59}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4}, {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, {0x1cf00, 0x1cf2d}, {0x1cf30, 0x1cf46}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, {0x1da3b, 0x1da6c}, {0x1da75, 0x1da75}, {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e030, 0x1e06d}, {0x1e08f, 0x1e08f}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ae}, {0x1e2c0, 0x1e2f9}, {0x1e4d0, 0x1e4f9}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b}, {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, {0xe0100, 0xe01ef}, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: if (eof) ADVANCE(56); ADVANCE_MAP( '!', 70, '"', 143, '#', 67, '$', 95, '%', 116, '&', 92, '\'', 66, '(', 78, ')', 79, '*', 90, '+', 82, ',', 68, '-', 102, '.', 128, '/', 115, '0', 137, ':', 77, ';', 57, '<', 94, '=', 72, '>', 87, '?', 83, '@', 129, '[', 58, '\\', 34, ']', 59, '^', 108, 'b', 147, 'r', 148, '{', 74, '|', 107, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(53); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 1: if (lookahead == ' ') ADVANCE(60); if (lookahead == '/') ADVANCE(18); if (lookahead == ';') ADVANCE(57); if (('\t' <= lookahead && lookahead <= '\r')) SKIP(1); END_STATE(); case 2: ADVANCE_MAP( '!', 69, '"', 143, '#', 67, '$', 51, '&', 91, '(', 78, ')', 79, '*', 89, '+', 81, ',', 68, '-', 31, '.', 17, '/', 18, '0', 137, ':', 77, ';', 57, '<', 84, '=', 73, '>', 86, '?', 83, '[', 58, '\\', 34, ']', 59, 'r', 148, '{', 74, '|', 106, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(4); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 3: ADVANCE_MAP( '!', 69, '"', 142, '#', 67, '$', 51, '&', 91, '\'', 12, '(', 78, ')', 79, '*', 89, ',', 68, '-', 100, '.', 16, '/', 18, '0', 137, ':', 29, '<', 84, '[', 58, 'b', 147, 'r', 148, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(3); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 4: ADVANCE_MAP( '!', 69, '#', 67, '$', 51, '&', 91, '(', 78, ')', 79, '*', 89, '+', 81, ',', 68, '-', 31, '.', 17, '/', 18, '0', 137, ':', 77, ';', 57, '<', 84, '=', 73, '>', 86, '?', 83, '[', 58, ']', 59, 'r', 148, '{', 74, '|', 106, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(4); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 5: ADVANCE_MAP( '!', 30, '%', 116, '&', 92, '\'', 65, '(', 78, ')', 79, '*', 90, '+', 82, ',', 68, '-', 102, '.', 128, '/', 115, ':', 77, ';', 57, '<', 85, '=', 72, '>', 87, '?', 83, '[', 58, ']', 59, '^', 108, 'r', 148, '{', 74, '|', 107, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(5); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 6: ADVANCE_MAP( '!', 30, '%', 116, '&', 92, '(', 78, ')', 79, '*', 90, '+', 82, ',', 68, '-', 102, '.', 128, '/', 115, ':', 76, ';', 57, '<', 85, '=', 72, '>', 87, '?', 83, '[', 58, ']', 59, '^', 108, 'r', 148, '{', 74, '|', 107, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(6); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 7: ADVANCE_MAP( '!', 30, '%', 116, '&', 92, '(', 78, ')', 79, '*', 90, '+', 82, ',', 68, '-', 101, '.', 128, '/', 115, ':', 77, ';', 57, '<', 94, '=', 72, '>', 87, '?', 83, '[', 58, ']', 59, '^', 108, 'r', 148, '{', 74, '|', 107, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(7); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 8: ADVANCE_MAP( '"', 142, '$', 95, '\'', 66, '(', 78, ')', 79, '/', 61, '0', 137, '[', 58, ']', 59, '_', 62, 'b', 147, 'r', 148, '{', 74, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(8); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140); if (('!' <= lookahead && lookahead <= '@') || lookahead == '^' || ('|' <= lookahead && lookahead <= '~')) ADVANCE(63); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 9: ADVANCE_MAP( '#', 67, '(', 78, ')', 79, '+', 81, ',', 68, '-', 31, '.', 17, '/', 18, ':', 76, ';', 57, '<', 94, '=', 73, '>', 86, ']', 59, 'r', 148, '{', 74, '|', 106, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(9); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 10: ADVANCE_MAP( '#', 67, ',', 68, '.', 15, '/', 18, ':', 76, '<', 84, 'r', 148, '{', 74, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(10); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 11: if (lookahead == '\'') ADVANCE(144); END_STATE(); case 12: if (lookahead == '\'') ADVANCE(144); if (lookahead == '\\') ADVANCE(35); if (lookahead != 0) ADVANCE(11); END_STATE(); case 13: ADVANCE_MAP( '(', 78, ')', 79, '+', 81, ',', 68, '.', 17, '/', 18, ':', 77, ';', 57, '<', 94, '=', 73, '>', 86, '@', 129, ']', 59, 'r', 148, '{', 74, '|', 106, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(13); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 14: if (lookahead == '.') ADVANCE(93); if (lookahead == '=') ADVANCE(99); END_STATE(); case 15: if (lookahead == '.') ADVANCE(96); END_STATE(); case 16: if (lookahead == '.') ADVANCE(97); END_STATE(); case 17: if (lookahead == '.') ADVANCE(14); END_STATE(); case 18: if (lookahead == '/') ADVANCE(146); END_STATE(); case 19: if (lookahead == '1') ADVANCE(23); if (lookahead == '2') ADVANCE(26); if (lookahead == '3') ADVANCE(22); if (lookahead == '6') ADVANCE(25); if (lookahead == '8') ADVANCE(130); if (lookahead == 's') ADVANCE(33); END_STATE(); case 20: if (lookahead == '2') ADVANCE(26); END_STATE(); case 21: if (lookahead == '2') ADVANCE(26); if (lookahead == '0' || lookahead == '1' || lookahead == '_') ADVANCE(138); END_STATE(); case 22: if (lookahead == '2') ADVANCE(130); END_STATE(); case 23: if (lookahead == '2') ADVANCE(28); if (lookahead == '6') ADVANCE(130); END_STATE(); case 24: if (lookahead == '3') ADVANCE(22); if (lookahead == '6') ADVANCE(25); END_STATE(); case 25: if (lookahead == '4') ADVANCE(130); END_STATE(); case 26: if (lookahead == '5') ADVANCE(27); END_STATE(); case 27: if (lookahead == '6') ADVANCE(130); END_STATE(); case 28: if (lookahead == '8') ADVANCE(130); END_STATE(); case 29: if (lookahead == ':') ADVANCE(88); END_STATE(); case 30: if (lookahead == '=') ADVANCE(110); END_STATE(); case 31: if (lookahead == '>') ADVANCE(80); END_STATE(); case 32: if (lookahead == 'e') ADVANCE(130); END_STATE(); case 33: if (lookahead == 'i') ADVANCE(36); END_STATE(); case 34: if (lookahead == 'u') ADVANCE(37); if (lookahead == 'x') ADVANCE(47); if (lookahead != 0) ADVANCE(145); END_STATE(); case 35: if (lookahead == 'u') ADVANCE(38); if (lookahead == 'x') ADVANCE(48); if (lookahead != 0) ADVANCE(11); END_STATE(); case 36: if (lookahead == 'z') ADVANCE(32); END_STATE(); case 37: if (lookahead == '{') ADVANCE(45); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(43); END_STATE(); case 38: if (lookahead == '{') ADVANCE(46); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(49); END_STATE(); case 39: if (lookahead == '}') ADVANCE(11); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(39); END_STATE(); case 40: if (lookahead == '}') ADVANCE(145); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(40); END_STATE(); case 41: if (('0' <= lookahead && lookahead <= '7') || lookahead == '_') ADVANCE(139); END_STATE(); case 42: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(11); END_STATE(); case 43: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(47); END_STATE(); case 44: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(145); END_STATE(); case 45: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(40); END_STATE(); case 46: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(39); END_STATE(); case 47: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(44); END_STATE(); case 48: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(42); END_STATE(); case 49: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(48); END_STATE(); case 50: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(141); END_STATE(); case 51: if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(150); END_STATE(); case 52: if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 53: if (eof) ADVANCE(56); ADVANCE_MAP( '!', 70, '"', 142, '#', 67, '$', 95, '%', 116, '&', 92, '\'', 66, '(', 78, ')', 79, '*', 90, '+', 82, ',', 68, '-', 102, '.', 128, '/', 115, '0', 137, ':', 77, ';', 57, '<', 94, '=', 72, '>', 87, '?', 83, '@', 129, '[', 58, ']', 59, '^', 108, 'b', 147, 'r', 148, '{', 74, '|', 107, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(53); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 54: if (eof) ADVANCE(56); ADVANCE_MAP( '!', 70, '"', 142, '#', 67, '$', 51, '%', 116, '&', 92, '\'', 66, '(', 78, ')', 79, '*', 90, '+', 82, ',', 68, '-', 101, '.', 128, '/', 115, '0', 137, ':', 77, ';', 57, '<', 85, '=', 72, '>', 87, '?', 83, '[', 58, ']', 59, '^', 108, 'b', 147, 'r', 148, '{', 74, '|', 107, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(54); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 55: if (eof) ADVANCE(56); ADVANCE_MAP( '!', 69, '"', 142, '#', 67, '$', 51, '&', 91, '\'', 66, '(', 78, ')', 79, '*', 89, '+', 81, ',', 68, '-', 103, '.', 15, '/', 18, '0', 137, ':', 29, ';', 57, '<', 84, '=', 71, '>', 86, '[', 58, ']', 59, 'b', 147, 'r', 148, '{', 74, '|', 106, '}', 75, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(55); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(149); END_STATE(); case 56: ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 57: ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 58: ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 59: ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 60: ACCEPT_TOKEN(anon_sym_SPACE); if (lookahead == ' ') ADVANCE(60); END_STATE(); case 61: ACCEPT_TOKEN(aux_sym__non_special_token_token1); if (lookahead == '/') ADVANCE(64); if (lookahead == '!' || lookahead == '#' || lookahead == '%' || lookahead == '&' || ('*' <= lookahead && lookahead <= '.') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '_' || lookahead == '|' || lookahead == '~') ADVANCE(63); END_STATE(); case 62: ACCEPT_TOKEN(aux_sym__non_special_token_token1); if (lookahead == '_') ADVANCE(62); if (lookahead == '!' || lookahead == '#' || lookahead == '%' || lookahead == '&' || ('*' <= lookahead && lookahead <= '/') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '|' || lookahead == '~') ADVANCE(63); if (set_contains(sym_identifier_character_set_3, 776, lookahead)) ADVANCE(149); END_STATE(); case 63: ACCEPT_TOKEN(aux_sym__non_special_token_token1); if (lookahead == '!' || lookahead == '#' || lookahead == '%' || lookahead == '&' || ('*' <= lookahead && lookahead <= '/') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '_' || lookahead == '|' || lookahead == '~') ADVANCE(63); END_STATE(); case 64: ACCEPT_TOKEN(aux_sym__non_special_token_token1); if (lookahead == '!' || lookahead == '#' || lookahead == '%' || lookahead == '&' || ('*' <= lookahead && lookahead <= '/') || (':' <= lookahead && lookahead <= '@') || lookahead == '^' || lookahead == '_' || lookahead == '|' || lookahead == '~') ADVANCE(64); if (lookahead != 0 && lookahead != '\n') ADVANCE(146); END_STATE(); case 65: ACCEPT_TOKEN(anon_sym_SQUOTE); END_STATE(); case 66: ACCEPT_TOKEN(anon_sym_SQUOTE); if (lookahead == '\'') ADVANCE(144); if (lookahead == '\\') ADVANCE(35); if (lookahead != 0) ADVANCE(11); END_STATE(); case 67: ACCEPT_TOKEN(anon_sym_POUND); END_STATE(); case 68: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 69: ACCEPT_TOKEN(anon_sym_BANG); END_STATE(); case 70: ACCEPT_TOKEN(anon_sym_BANG); if (lookahead == '=') ADVANCE(110); END_STATE(); case 71: ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); case 72: ACCEPT_TOKEN(anon_sym_EQ); if (lookahead == '=') ADVANCE(109); if (lookahead == '>') ADVANCE(127); END_STATE(); case 73: ACCEPT_TOKEN(anon_sym_EQ); if (lookahead == '>') ADVANCE(127); END_STATE(); case 74: ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 75: ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 76: ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 77: ACCEPT_TOKEN(anon_sym_COLON); if (lookahead == ':') ADVANCE(88); END_STATE(); case 78: ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 79: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 80: ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 81: ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 82: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '=') ADVANCE(117); END_STATE(); case 83: ACCEPT_TOKEN(anon_sym_QMARK); END_STATE(); case 84: ACCEPT_TOKEN(anon_sym_LT); END_STATE(); case 85: ACCEPT_TOKEN(anon_sym_LT); if (lookahead == '<') ADVANCE(113); if (lookahead == '=') ADVANCE(111); END_STATE(); case 86: ACCEPT_TOKEN(anon_sym_GT); END_STATE(); case 87: ACCEPT_TOKEN(anon_sym_GT); if (lookahead == '=') ADVANCE(112); if (lookahead == '>') ADVANCE(114); END_STATE(); case 88: ACCEPT_TOKEN(anon_sym_COLON_COLON); END_STATE(); case 89: ACCEPT_TOKEN(anon_sym_STAR); END_STATE(); case 90: ACCEPT_TOKEN(anon_sym_STAR); if (lookahead == '=') ADVANCE(119); END_STATE(); case 91: ACCEPT_TOKEN(anon_sym_AMP); END_STATE(); case 92: ACCEPT_TOKEN(anon_sym_AMP); if (lookahead == '&') ADVANCE(104); if (lookahead == '=') ADVANCE(122); END_STATE(); case 93: ACCEPT_TOKEN(anon_sym_DOT_DOT_DOT); END_STATE(); case 94: ACCEPT_TOKEN(anon_sym_LT2); END_STATE(); case 95: ACCEPT_TOKEN(anon_sym_DOLLAR); END_STATE(); case 96: ACCEPT_TOKEN(anon_sym_DOT_DOT); END_STATE(); case 97: ACCEPT_TOKEN(anon_sym_DOT_DOT); if (lookahead == '.') ADVANCE(93); END_STATE(); case 98: ACCEPT_TOKEN(anon_sym_DOT_DOT); if (lookahead == '.') ADVANCE(93); if (lookahead == '=') ADVANCE(99); END_STATE(); case 99: ACCEPT_TOKEN(anon_sym_DOT_DOT_EQ); END_STATE(); case 100: ACCEPT_TOKEN(anon_sym_DASH); END_STATE(); case 101: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '=') ADVANCE(118); END_STATE(); case 102: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '=') ADVANCE(118); if (lookahead == '>') ADVANCE(80); END_STATE(); case 103: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '>') ADVANCE(80); END_STATE(); case 104: ACCEPT_TOKEN(anon_sym_AMP_AMP); END_STATE(); case 105: ACCEPT_TOKEN(anon_sym_PIPE_PIPE); END_STATE(); case 106: ACCEPT_TOKEN(anon_sym_PIPE); END_STATE(); case 107: ACCEPT_TOKEN(anon_sym_PIPE); if (lookahead == '=') ADVANCE(123); if (lookahead == '|') ADVANCE(105); END_STATE(); case 108: ACCEPT_TOKEN(anon_sym_CARET); if (lookahead == '=') ADVANCE(124); END_STATE(); case 109: ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); case 110: ACCEPT_TOKEN(anon_sym_BANG_EQ); END_STATE(); case 111: ACCEPT_TOKEN(anon_sym_LT_EQ); END_STATE(); case 112: ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); case 113: ACCEPT_TOKEN(anon_sym_LT_LT); if (lookahead == '=') ADVANCE(125); END_STATE(); case 114: ACCEPT_TOKEN(anon_sym_GT_GT); if (lookahead == '=') ADVANCE(126); END_STATE(); case 115: ACCEPT_TOKEN(anon_sym_SLASH); if (lookahead == '/') ADVANCE(146); if (lookahead == '=') ADVANCE(120); END_STATE(); case 116: ACCEPT_TOKEN(anon_sym_PERCENT); if (lookahead == '=') ADVANCE(121); END_STATE(); case 117: ACCEPT_TOKEN(anon_sym_PLUS_EQ); END_STATE(); case 118: ACCEPT_TOKEN(anon_sym_DASH_EQ); END_STATE(); case 119: ACCEPT_TOKEN(anon_sym_STAR_EQ); END_STATE(); case 120: ACCEPT_TOKEN(anon_sym_SLASH_EQ); END_STATE(); case 121: ACCEPT_TOKEN(anon_sym_PERCENT_EQ); END_STATE(); case 122: ACCEPT_TOKEN(anon_sym_AMP_EQ); END_STATE(); case 123: ACCEPT_TOKEN(anon_sym_PIPE_EQ); END_STATE(); case 124: ACCEPT_TOKEN(anon_sym_CARET_EQ); END_STATE(); case 125: ACCEPT_TOKEN(anon_sym_LT_LT_EQ); END_STATE(); case 126: ACCEPT_TOKEN(anon_sym_GT_GT_EQ); END_STATE(); case 127: ACCEPT_TOKEN(anon_sym_EQ_GT); END_STATE(); case 128: ACCEPT_TOKEN(anon_sym_DOT); if (lookahead == '.') ADVANCE(98); END_STATE(); case 129: ACCEPT_TOKEN(anon_sym_AT); END_STATE(); case 130: ACCEPT_TOKEN(sym_integer_literal); END_STATE(); case 131: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == '2') ADVANCE(141); if (lookahead == 'b') ADVANCE(132); if (lookahead == 'f') ADVANCE(133); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(141); END_STATE(); case 132: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == '2') ADVANCE(135); if (lookahead == 'b') ADVANCE(132); if (lookahead == 'f') ADVANCE(133); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(141); END_STATE(); case 133: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == '3') ADVANCE(131); if (lookahead == '6') ADVANCE(134); if (lookahead == 'b') ADVANCE(132); if (lookahead == 'f') ADVANCE(133); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(141); END_STATE(); case 134: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == '4') ADVANCE(141); if (lookahead == 'b') ADVANCE(132); if (lookahead == 'f') ADVANCE(133); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(141); END_STATE(); case 135: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == '5') ADVANCE(136); if (lookahead == 'b') ADVANCE(132); if (lookahead == 'f') ADVANCE(133); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(141); END_STATE(); case 136: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == '6') ADVANCE(141); if (lookahead == 'b') ADVANCE(132); if (lookahead == 'f') ADVANCE(133); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(141); END_STATE(); case 137: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'b') ADVANCE(21); if (lookahead == 'f') ADVANCE(24); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'o') ADVANCE(41); if (lookahead == 'u') ADVANCE(19); if (lookahead == 'x') ADVANCE(50); if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(140); END_STATE(); case 138: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'b') ADVANCE(20); if (lookahead == 'f') ADVANCE(24); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (lookahead == '0' || lookahead == '1' || lookahead == '_') ADVANCE(138); END_STATE(); case 139: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'b') ADVANCE(20); if (lookahead == 'f') ADVANCE(24); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (('0' <= lookahead && lookahead <= '7') || lookahead == '_') ADVANCE(139); END_STATE(); case 140: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'b') ADVANCE(20); if (lookahead == 'f') ADVANCE(24); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (('0' <= lookahead && lookahead <= '9') || lookahead == '_') ADVANCE(140); END_STATE(); case 141: ACCEPT_TOKEN(sym_integer_literal); if (lookahead == 'b') ADVANCE(132); if (lookahead == 'f') ADVANCE(133); if (lookahead == 'i') ADVANCE(19); if (lookahead == 'u') ADVANCE(19); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(141); END_STATE(); case 142: ACCEPT_TOKEN(aux_sym_string_literal_token1); END_STATE(); case 143: ACCEPT_TOKEN(anon_sym_DQUOTE); END_STATE(); case 144: ACCEPT_TOKEN(sym_char_literal); END_STATE(); case 145: ACCEPT_TOKEN(sym_escape_sequence); END_STATE(); case 146: ACCEPT_TOKEN(sym_line_comment); if (lookahead != 0 && lookahead != '\n') ADVANCE(146); END_STATE(); case 147: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(142); if (lookahead == '\'') ADVANCE(12); if (set_contains(sym_identifier_character_set_3, 776, lookahead)) ADVANCE(149); END_STATE(); case 148: ACCEPT_TOKEN(sym_identifier); if (lookahead == '#') ADVANCE(52); if (set_contains(sym_identifier_character_set_3, 776, lookahead)) ADVANCE(149); END_STATE(); case 149: ACCEPT_TOKEN(sym_identifier); if (set_contains(sym_identifier_character_set_3, 776, lookahead)) ADVANCE(149); END_STATE(); case 150: ACCEPT_TOKEN(sym_metavariable); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(150); END_STATE(); default: return false; } } static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: ADVANCE_MAP( '_', 1, 'a', 2, 'b', 3, 'c', 4, 'd', 5, 'e', 6, 'f', 7, 'i', 8, 'l', 9, 'm', 10, 'p', 11, 'r', 12, 's', 13, 't', 14, 'u', 15, 'w', 16, 'y', 17, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(0); END_STATE(); case 1: ACCEPT_TOKEN(anon_sym__); END_STATE(); case 2: if (lookahead == 'b') ADVANCE(18); if (lookahead == 's') ADVANCE(19); END_STATE(); case 3: if (lookahead == '2') ADVANCE(20); if (lookahead == 'o') ADVANCE(21); if (lookahead == 'r') ADVANCE(22); END_STATE(); case 4: if (lookahead == 'h') ADVANCE(23); if (lookahead == 'o') ADVANCE(24); END_STATE(); case 5: if (lookahead == 'e') ADVANCE(25); END_STATE(); case 6: if (lookahead == 'l') ADVANCE(26); if (lookahead == 'n') ADVANCE(27); END_STATE(); case 7: if (lookahead == '3') ADVANCE(28); if (lookahead == '6') ADVANCE(29); if (lookahead == 'a') ADVANCE(30); if (lookahead == 'n') ADVANCE(31); if (lookahead == 'o') ADVANCE(32); END_STATE(); case 8: ADVANCE_MAP( '1', 33, '2', 34, '3', 35, '6', 36, '8', 37, 'f', 38, 'm', 39, 'n', 40, 's', 41, ); END_STATE(); case 9: if (lookahead == 'e') ADVANCE(42); if (lookahead == 'i') ADVANCE(43); END_STATE(); case 10: if (lookahead == 'a') ADVANCE(44); if (lookahead == 'o') ADVANCE(45); if (lookahead == 'u') ADVANCE(46); END_STATE(); case 11: if (lookahead == 'r') ADVANCE(47); if (lookahead == 'u') ADVANCE(48); END_STATE(); case 12: if (lookahead == 'e') ADVANCE(49); END_STATE(); case 13: if (lookahead == 'c') ADVANCE(50); if (lookahead == 'e') ADVANCE(51); if (lookahead == 't') ADVANCE(52); END_STATE(); case 14: if (lookahead == 'r') ADVANCE(53); if (lookahead == 'y') ADVANCE(54); END_STATE(); case 15: if (lookahead == '1') ADVANCE(55); if (lookahead == '2') ADVANCE(56); if (lookahead == '3') ADVANCE(57); if (lookahead == '6') ADVANCE(58); if (lookahead == '8') ADVANCE(59); if (lookahead == 's') ADVANCE(60); END_STATE(); case 16: if (lookahead == 'h') ADVANCE(61); END_STATE(); case 17: if (lookahead == 'i') ADVANCE(62); END_STATE(); case 18: if (lookahead == 'i') ADVANCE(63); END_STATE(); case 19: ACCEPT_TOKEN(anon_sym_as); if (lookahead == 'm') ADVANCE(64); END_STATE(); case 20: if (lookahead == '5') ADVANCE(65); END_STATE(); case 21: if (lookahead == 'o') ADVANCE(66); END_STATE(); case 22: if (lookahead == 'e') ADVANCE(67); END_STATE(); case 23: if (lookahead == 'a') ADVANCE(68); END_STATE(); case 24: if (lookahead == 'n') ADVANCE(69); END_STATE(); case 25: if (lookahead == 'f') ADVANCE(70); if (lookahead == 'r') ADVANCE(71); END_STATE(); case 26: if (lookahead == 's') ADVANCE(72); END_STATE(); case 27: if (lookahead == 'u') ADVANCE(73); END_STATE(); case 28: if (lookahead == '2') ADVANCE(74); END_STATE(); case 29: if (lookahead == '4') ADVANCE(75); END_STATE(); case 30: if (lookahead == 'l') ADVANCE(76); END_STATE(); case 31: ACCEPT_TOKEN(anon_sym_fn); END_STATE(); case 32: if (lookahead == 'r') ADVANCE(77); END_STATE(); case 33: if (lookahead == '2') ADVANCE(78); if (lookahead == '6') ADVANCE(79); END_STATE(); case 34: if (lookahead == '5') ADVANCE(80); END_STATE(); case 35: if (lookahead == '2') ADVANCE(81); END_STATE(); case 36: if (lookahead == '4') ADVANCE(82); END_STATE(); case 37: ACCEPT_TOKEN(anon_sym_i8); END_STATE(); case 38: ACCEPT_TOKEN(anon_sym_if); END_STATE(); case 39: if (lookahead == 'p') ADVANCE(83); END_STATE(); case 40: ACCEPT_TOKEN(anon_sym_in); END_STATE(); case 41: if (lookahead == 'i') ADVANCE(84); END_STATE(); case 42: if (lookahead == 't') ADVANCE(85); END_STATE(); case 43: if (lookahead == 'b') ADVANCE(86); END_STATE(); case 44: if (lookahead == 't') ADVANCE(87); END_STATE(); case 45: if (lookahead == 'd') ADVANCE(88); if (lookahead == 'v') ADVANCE(89); END_STATE(); case 46: if (lookahead == 't') ADVANCE(90); END_STATE(); case 47: if (lookahead == 'e') ADVANCE(91); END_STATE(); case 48: if (lookahead == 'b') ADVANCE(92); END_STATE(); case 49: if (lookahead == 'f') ADVANCE(93); if (lookahead == 't') ADVANCE(94); END_STATE(); case 50: if (lookahead == 'r') ADVANCE(95); END_STATE(); case 51: if (lookahead == 'l') ADVANCE(96); END_STATE(); case 52: if (lookahead == 'o') ADVANCE(97); if (lookahead == 'r') ADVANCE(98); END_STATE(); case 53: if (lookahead == 'a') ADVANCE(99); if (lookahead == 'u') ADVANCE(100); END_STATE(); case 54: if (lookahead == 'p') ADVANCE(101); END_STATE(); case 55: if (lookahead == '2') ADVANCE(102); if (lookahead == '6') ADVANCE(103); END_STATE(); case 56: if (lookahead == '5') ADVANCE(104); END_STATE(); case 57: if (lookahead == '2') ADVANCE(105); END_STATE(); case 58: if (lookahead == '4') ADVANCE(106); END_STATE(); case 59: ACCEPT_TOKEN(anon_sym_u8); END_STATE(); case 60: if (lookahead == 'e') ADVANCE(107); if (lookahead == 'i') ADVANCE(108); END_STATE(); case 61: if (lookahead == 'e') ADVANCE(109); if (lookahead == 'i') ADVANCE(110); END_STATE(); case 62: if (lookahead == 'e') ADVANCE(111); END_STATE(); case 63: ACCEPT_TOKEN(anon_sym_abi); END_STATE(); case 64: ACCEPT_TOKEN(anon_sym_asm); END_STATE(); case 65: if (lookahead == '6') ADVANCE(112); END_STATE(); case 66: if (lookahead == 'l') ADVANCE(113); END_STATE(); case 67: if (lookahead == 'a') ADVANCE(114); END_STATE(); case 68: if (lookahead == 'r') ADVANCE(115); END_STATE(); case 69: if (lookahead == 'f') ADVANCE(116); if (lookahead == 's') ADVANCE(117); if (lookahead == 't') ADVANCE(118); END_STATE(); case 70: if (lookahead == 'a') ADVANCE(119); END_STATE(); case 71: if (lookahead == 'e') ADVANCE(120); END_STATE(); case 72: if (lookahead == 'e') ADVANCE(121); END_STATE(); case 73: if (lookahead == 'm') ADVANCE(122); END_STATE(); case 74: ACCEPT_TOKEN(anon_sym_f32); END_STATE(); case 75: ACCEPT_TOKEN(anon_sym_f64); END_STATE(); case 76: if (lookahead == 's') ADVANCE(123); END_STATE(); case 77: ACCEPT_TOKEN(anon_sym_for); END_STATE(); case 78: if (lookahead == '8') ADVANCE(124); END_STATE(); case 79: ACCEPT_TOKEN(anon_sym_i16); END_STATE(); case 80: if (lookahead == '6') ADVANCE(125); END_STATE(); case 81: ACCEPT_TOKEN(anon_sym_i32); END_STATE(); case 82: ACCEPT_TOKEN(anon_sym_i64); END_STATE(); case 83: if (lookahead == 'l') ADVANCE(126); END_STATE(); case 84: if (lookahead == 'z') ADVANCE(127); END_STATE(); case 85: ACCEPT_TOKEN(anon_sym_let); END_STATE(); case 86: if (lookahead == 'r') ADVANCE(128); END_STATE(); case 87: if (lookahead == 'c') ADVANCE(129); END_STATE(); case 88: ACCEPT_TOKEN(anon_sym_mod); END_STATE(); case 89: if (lookahead == 'e') ADVANCE(130); END_STATE(); case 90: ACCEPT_TOKEN(sym_mutable_specifier); END_STATE(); case 91: if (lookahead == 'd') ADVANCE(131); END_STATE(); case 92: ACCEPT_TOKEN(anon_sym_pub); END_STATE(); case 93: ACCEPT_TOKEN(anon_sym_ref); END_STATE(); case 94: if (lookahead == 'u') ADVANCE(132); END_STATE(); case 95: if (lookahead == 'i') ADVANCE(133); END_STATE(); case 96: if (lookahead == 'f') ADVANCE(134); END_STATE(); case 97: if (lookahead == 'r') ADVANCE(135); END_STATE(); case 98: ACCEPT_TOKEN(anon_sym_str); if (lookahead == 'u') ADVANCE(136); END_STATE(); case 99: if (lookahead == 'i') ADVANCE(137); END_STATE(); case 100: if (lookahead == 'e') ADVANCE(138); END_STATE(); case 101: if (lookahead == 'e') ADVANCE(139); END_STATE(); case 102: if (lookahead == '8') ADVANCE(140); END_STATE(); case 103: ACCEPT_TOKEN(anon_sym_u16); END_STATE(); case 104: if (lookahead == '6') ADVANCE(141); END_STATE(); case 105: ACCEPT_TOKEN(anon_sym_u32); END_STATE(); case 106: ACCEPT_TOKEN(anon_sym_u64); END_STATE(); case 107: ACCEPT_TOKEN(anon_sym_use); END_STATE(); case 108: if (lookahead == 'z') ADVANCE(142); END_STATE(); case 109: if (lookahead == 'r') ADVANCE(143); END_STATE(); case 110: if (lookahead == 'l') ADVANCE(144); END_STATE(); case 111: if (lookahead == 'l') ADVANCE(145); END_STATE(); case 112: ACCEPT_TOKEN(anon_sym_b256); END_STATE(); case 113: ACCEPT_TOKEN(anon_sym_bool); END_STATE(); case 114: if (lookahead == 'k') ADVANCE(146); END_STATE(); case 115: ACCEPT_TOKEN(anon_sym_char); END_STATE(); case 116: if (lookahead == 'i') ADVANCE(147); END_STATE(); case 117: if (lookahead == 't') ADVANCE(148); END_STATE(); case 118: if (lookahead == 'i') ADVANCE(149); if (lookahead == 'r') ADVANCE(150); END_STATE(); case 119: if (lookahead == 'u') ADVANCE(151); END_STATE(); case 120: if (lookahead == 'f') ADVANCE(152); END_STATE(); case 121: ACCEPT_TOKEN(anon_sym_else); END_STATE(); case 122: ACCEPT_TOKEN(anon_sym_enum); END_STATE(); case 123: if (lookahead == 'e') ADVANCE(153); END_STATE(); case 124: ACCEPT_TOKEN(anon_sym_i128); END_STATE(); case 125: ACCEPT_TOKEN(anon_sym_i256); END_STATE(); case 126: ACCEPT_TOKEN(anon_sym_impl); END_STATE(); case 127: if (lookahead == 'e') ADVANCE(154); END_STATE(); case 128: if (lookahead == 'a') ADVANCE(155); END_STATE(); case 129: if (lookahead == 'h') ADVANCE(156); END_STATE(); case 130: ACCEPT_TOKEN(anon_sym_move); END_STATE(); case 131: if (lookahead == 'i') ADVANCE(157); END_STATE(); case 132: if (lookahead == 'r') ADVANCE(158); END_STATE(); case 133: if (lookahead == 'p') ADVANCE(159); END_STATE(); case 134: ACCEPT_TOKEN(sym_self); END_STATE(); case 135: if (lookahead == 'a') ADVANCE(160); END_STATE(); case 136: if (lookahead == 'c') ADVANCE(161); END_STATE(); case 137: if (lookahead == 't') ADVANCE(162); END_STATE(); case 138: ACCEPT_TOKEN(anon_sym_true); END_STATE(); case 139: ACCEPT_TOKEN(anon_sym_type); END_STATE(); case 140: ACCEPT_TOKEN(anon_sym_u128); END_STATE(); case 141: ACCEPT_TOKEN(anon_sym_u256); END_STATE(); case 142: if (lookahead == 'e') ADVANCE(163); END_STATE(); case 143: if (lookahead == 'e') ADVANCE(164); END_STATE(); case 144: if (lookahead == 'e') ADVANCE(165); END_STATE(); case 145: if (lookahead == 'd') ADVANCE(166); END_STATE(); case 146: ACCEPT_TOKEN(anon_sym_break); END_STATE(); case 147: if (lookahead == 'g') ADVANCE(167); END_STATE(); case 148: ACCEPT_TOKEN(anon_sym_const); END_STATE(); case 149: if (lookahead == 'n') ADVANCE(168); END_STATE(); case 150: if (lookahead == 'a') ADVANCE(169); END_STATE(); case 151: if (lookahead == 'l') ADVANCE(170); END_STATE(); case 152: ACCEPT_TOKEN(anon_sym_deref); END_STATE(); case 153: ACCEPT_TOKEN(anon_sym_false); END_STATE(); case 154: ACCEPT_TOKEN(anon_sym_isize); END_STATE(); case 155: if (lookahead == 'r') ADVANCE(171); END_STATE(); case 156: ACCEPT_TOKEN(anon_sym_match); END_STATE(); case 157: if (lookahead == 'c') ADVANCE(172); END_STATE(); case 158: if (lookahead == 'n') ADVANCE(173); END_STATE(); case 159: if (lookahead == 't') ADVANCE(174); END_STATE(); case 160: if (lookahead == 'g') ADVANCE(175); END_STATE(); case 161: if (lookahead == 't') ADVANCE(176); END_STATE(); case 162: ACCEPT_TOKEN(anon_sym_trait); END_STATE(); case 163: ACCEPT_TOKEN(anon_sym_usize); END_STATE(); case 164: ACCEPT_TOKEN(anon_sym_where); END_STATE(); case 165: ACCEPT_TOKEN(anon_sym_while); END_STATE(); case 166: ACCEPT_TOKEN(anon_sym_yield); END_STATE(); case 167: if (lookahead == 'u') ADVANCE(177); END_STATE(); case 168: if (lookahead == 'u') ADVANCE(178); END_STATE(); case 169: if (lookahead == 'c') ADVANCE(179); END_STATE(); case 170: if (lookahead == 't') ADVANCE(180); END_STATE(); case 171: if (lookahead == 'y') ADVANCE(181); END_STATE(); case 172: if (lookahead == 'a') ADVANCE(182); END_STATE(); case 173: ACCEPT_TOKEN(anon_sym_return); END_STATE(); case 174: ACCEPT_TOKEN(anon_sym_script); END_STATE(); case 175: if (lookahead == 'e') ADVANCE(183); END_STATE(); case 176: ACCEPT_TOKEN(anon_sym_struct); END_STATE(); case 177: if (lookahead == 'r') ADVANCE(184); END_STATE(); case 178: if (lookahead == 'e') ADVANCE(185); END_STATE(); case 179: if (lookahead == 't') ADVANCE(186); END_STATE(); case 180: ACCEPT_TOKEN(anon_sym_default); END_STATE(); case 181: ACCEPT_TOKEN(anon_sym_library); END_STATE(); case 182: if (lookahead == 't') ADVANCE(187); END_STATE(); case 183: ACCEPT_TOKEN(anon_sym_storage); END_STATE(); case 184: if (lookahead == 'a') ADVANCE(188); END_STATE(); case 185: ACCEPT_TOKEN(anon_sym_continue); END_STATE(); case 186: ACCEPT_TOKEN(anon_sym_contract); END_STATE(); case 187: if (lookahead == 'e') ADVANCE(189); END_STATE(); case 188: if (lookahead == 'b') ADVANCE(190); END_STATE(); case 189: ACCEPT_TOKEN(anon_sym_predicate); END_STATE(); case 190: if (lookahead == 'l') ADVANCE(191); END_STATE(); case 191: if (lookahead == 'e') ADVANCE(192); END_STATE(); case 192: ACCEPT_TOKEN(anon_sym_configurable); END_STATE(); default: return false; } } static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0, .external_lex_state = 1}, [1] = {.lex_state = 55, .external_lex_state = 2}, [2] = {.lex_state = 55, .external_lex_state = 2}, [3] = {.lex_state = 55, .external_lex_state = 2}, [4] = {.lex_state = 55, .external_lex_state = 2}, [5] = {.lex_state = 55, .external_lex_state = 2}, [6] = {.lex_state = 55, .external_lex_state = 2}, [7] = {.lex_state = 55, .external_lex_state = 2}, [8] = {.lex_state = 55, .external_lex_state = 2}, [9] = {.lex_state = 55, .external_lex_state = 2}, [10] = {.lex_state = 55, .external_lex_state = 2}, [11] = {.lex_state = 55, .external_lex_state = 2}, [12] = {.lex_state = 55, .external_lex_state = 2}, [13] = {.lex_state = 55, .external_lex_state = 2}, [14] = {.lex_state = 55, .external_lex_state = 2}, [15] = {.lex_state = 54, .external_lex_state = 2}, [16] = {.lex_state = 54, .external_lex_state = 2}, [17] = {.lex_state = 54, .external_lex_state = 2}, [18] = {.lex_state = 54, .external_lex_state = 2}, [19] = {.lex_state = 54, .external_lex_state = 2}, [20] = {.lex_state = 54, .external_lex_state = 2}, [21] = {.lex_state = 54, .external_lex_state = 2}, [22] = {.lex_state = 54, .external_lex_state = 2}, [23] = {.lex_state = 54, .external_lex_state = 2}, [24] = {.lex_state = 54, .external_lex_state = 2}, [25] = {.lex_state = 54, .external_lex_state = 2}, [26] = {.lex_state = 54, .external_lex_state = 2}, [27] = {.lex_state = 54, .external_lex_state = 2}, [28] = {.lex_state = 54, .external_lex_state = 2}, [29] = {.lex_state = 54, .external_lex_state = 2}, [30] = {.lex_state = 54, .external_lex_state = 2}, [31] = {.lex_state = 55, .external_lex_state = 2}, [32] = {.lex_state = 55, .external_lex_state = 2}, [33] = {.lex_state = 55, .external_lex_state = 2}, [34] = {.lex_state = 55, .external_lex_state = 2}, [35] = {.lex_state = 55, .external_lex_state = 2}, [36] = {.lex_state = 55, .external_lex_state = 2}, [37] = {.lex_state = 55, .external_lex_state = 2}, [38] = {.lex_state = 55, .external_lex_state = 2}, [39] = {.lex_state = 55, .external_lex_state = 2}, [40] = {.lex_state = 55, .external_lex_state = 2}, [41] = {.lex_state = 55, .external_lex_state = 2}, [42] = {.lex_state = 54, .external_lex_state = 2}, [43] = {.lex_state = 55, .external_lex_state = 2}, [44] = {.lex_state = 54, .external_lex_state = 2}, [45] = {.lex_state = 55, .external_lex_state = 2}, [46] = {.lex_state = 54, .external_lex_state = 2}, [47] = {.lex_state = 55, .external_lex_state = 2}, [48] = {.lex_state = 55, .external_lex_state = 2}, [49] = {.lex_state = 54, .external_lex_state = 2}, [50] = {.lex_state = 54, .external_lex_state = 2}, [51] = {.lex_state = 55, .external_lex_state = 2}, [52] = {.lex_state = 54, .external_lex_state = 2}, [53] = {.lex_state = 54, .external_lex_state = 2}, [54] = {.lex_state = 54, .external_lex_state = 2}, [55] = {.lex_state = 55, .external_lex_state = 2}, [56] = {.lex_state = 54, .external_lex_state = 2}, [57] = {.lex_state = 54, .external_lex_state = 2}, [58] = {.lex_state = 54, .external_lex_state = 2}, [59] = {.lex_state = 55, .external_lex_state = 2}, [60] = {.lex_state = 55, .external_lex_state = 2}, [61] = {.lex_state = 55, .external_lex_state = 2}, [62] = {.lex_state = 55, .external_lex_state = 2}, [63] = {.lex_state = 54, .external_lex_state = 2}, [64] = {.lex_state = 54, .external_lex_state = 2}, [65] = {.lex_state = 54, .external_lex_state = 2}, [66] = {.lex_state = 54, .external_lex_state = 2}, [67] = {.lex_state = 54, .external_lex_state = 2}, [68] = {.lex_state = 54, .external_lex_state = 2}, [69] = {.lex_state = 54, .external_lex_state = 2}, [70] = {.lex_state = 55, .external_lex_state = 2}, [71] = {.lex_state = 54, .external_lex_state = 2}, [72] = {.lex_state = 55, .external_lex_state = 2}, [73] = {.lex_state = 55, .external_lex_state = 2}, [74] = {.lex_state = 55, .external_lex_state = 2}, [75] = {.lex_state = 55, .external_lex_state = 2}, [76] = {.lex_state = 55, .external_lex_state = 2}, [77] = {.lex_state = 55, .external_lex_state = 2}, [78] = {.lex_state = 55, .external_lex_state = 2}, [79] = {.lex_state = 54, .external_lex_state = 2}, [80] = {.lex_state = 55, .external_lex_state = 2}, [81] = {.lex_state = 55, .external_lex_state = 2}, [82] = {.lex_state = 55, .external_lex_state = 2}, [83] = {.lex_state = 54, .external_lex_state = 2}, [84] = {.lex_state = 55, .external_lex_state = 2}, [85] = {.lex_state = 55, .external_lex_state = 2}, [86] = {.lex_state = 55, .external_lex_state = 2}, [87] = {.lex_state = 55, .external_lex_state = 2}, [88] = {.lex_state = 55, .external_lex_state = 2}, [89] = {.lex_state = 55, .external_lex_state = 2}, [90] = {.lex_state = 55, .external_lex_state = 2}, [91] = {.lex_state = 55, .external_lex_state = 2}, [92] = {.lex_state = 55, .external_lex_state = 2}, [93] = {.lex_state = 55, .external_lex_state = 2}, [94] = {.lex_state = 55, .external_lex_state = 2}, [95] = {.lex_state = 55, .external_lex_state = 2}, [96] = {.lex_state = 55, .external_lex_state = 2}, [97] = {.lex_state = 55, .external_lex_state = 2}, [98] = {.lex_state = 55, .external_lex_state = 2}, [99] = {.lex_state = 55, .external_lex_state = 2}, [100] = {.lex_state = 55, .external_lex_state = 2}, [101] = {.lex_state = 55, .external_lex_state = 2}, [102] = {.lex_state = 55, .external_lex_state = 2}, [103] = {.lex_state = 55, .external_lex_state = 2}, [104] = {.lex_state = 55, .external_lex_state = 2}, [105] = {.lex_state = 55, .external_lex_state = 2}, [106] = {.lex_state = 55, .external_lex_state = 2}, [107] = {.lex_state = 55, .external_lex_state = 2}, [108] = {.lex_state = 55, .external_lex_state = 2}, [109] = {.lex_state = 55, .external_lex_state = 2}, [110] = {.lex_state = 55, .external_lex_state = 2}, [111] = {.lex_state = 55, .external_lex_state = 2}, [112] = {.lex_state = 55, .external_lex_state = 2}, [113] = {.lex_state = 55, .external_lex_state = 2}, [114] = {.lex_state = 55, .external_lex_state = 2}, [115] = {.lex_state = 55, .external_lex_state = 2}, [116] = {.lex_state = 55, .external_lex_state = 2}, [117] = {.lex_state = 55, .external_lex_state = 2}, [118] = {.lex_state = 55, .external_lex_state = 2}, [119] = {.lex_state = 55, .external_lex_state = 2}, [120] = {.lex_state = 55, .external_lex_state = 2}, [121] = {.lex_state = 55, .external_lex_state = 2}, [122] = {.lex_state = 55, .external_lex_state = 2}, [123] = {.lex_state = 55, .external_lex_state = 2}, [124] = {.lex_state = 55, .external_lex_state = 2}, [125] = {.lex_state = 55, .external_lex_state = 2}, [126] = {.lex_state = 55, .external_lex_state = 2}, [127] = {.lex_state = 55, .external_lex_state = 2}, [128] = {.lex_state = 55, .external_lex_state = 2}, [129] = {.lex_state = 55, .external_lex_state = 2}, [130] = {.lex_state = 55, .external_lex_state = 2}, [131] = {.lex_state = 55, .external_lex_state = 2}, [132] = {.lex_state = 55, .external_lex_state = 2}, [133] = {.lex_state = 55, .external_lex_state = 2}, [134] = {.lex_state = 55, .external_lex_state = 2}, [135] = {.lex_state = 55, .external_lex_state = 2}, [136] = {.lex_state = 55, .external_lex_state = 2}, [137] = {.lex_state = 55, .external_lex_state = 2}, [138] = {.lex_state = 55, .external_lex_state = 2}, [139] = {.lex_state = 55, .external_lex_state = 2}, [140] = {.lex_state = 55, .external_lex_state = 2}, [141] = {.lex_state = 55, .external_lex_state = 2}, [142] = {.lex_state = 55, .external_lex_state = 2}, [143] = {.lex_state = 55, .external_lex_state = 2}, [144] = {.lex_state = 55, .external_lex_state = 2}, [145] = {.lex_state = 55, .external_lex_state = 2}, [146] = {.lex_state = 55, .external_lex_state = 2}, [147] = {.lex_state = 55, .external_lex_state = 2}, [148] = {.lex_state = 55, .external_lex_state = 2}, [149] = {.lex_state = 55, .external_lex_state = 2}, [150] = {.lex_state = 55, .external_lex_state = 2}, [151] = {.lex_state = 55, .external_lex_state = 2}, [152] = {.lex_state = 55, .external_lex_state = 2}, [153] = {.lex_state = 55, .external_lex_state = 2}, [154] = {.lex_state = 55, .external_lex_state = 2}, [155] = {.lex_state = 55, .external_lex_state = 2}, [156] = {.lex_state = 55, .external_lex_state = 2}, [157] = {.lex_state = 55, .external_lex_state = 2}, [158] = {.lex_state = 55, .external_lex_state = 2}, [159] = {.lex_state = 55, .external_lex_state = 2}, [160] = {.lex_state = 55, .external_lex_state = 2}, [161] = {.lex_state = 55, .external_lex_state = 2}, [162] = {.lex_state = 55, .external_lex_state = 2}, [163] = {.lex_state = 55, .external_lex_state = 2}, [164] = {.lex_state = 55, .external_lex_state = 2}, [165] = {.lex_state = 55, .external_lex_state = 2}, [166] = {.lex_state = 55, .external_lex_state = 2}, [167] = {.lex_state = 55, .external_lex_state = 2}, [168] = {.lex_state = 55, .external_lex_state = 2}, [169] = {.lex_state = 55, .external_lex_state = 2}, [170] = {.lex_state = 55, .external_lex_state = 2}, [171] = {.lex_state = 55, .external_lex_state = 2}, [172] = {.lex_state = 55, .external_lex_state = 2}, [173] = {.lex_state = 55, .external_lex_state = 2}, [174] = {.lex_state = 55, .external_lex_state = 2}, [175] = {.lex_state = 55, .external_lex_state = 2}, [176] = {.lex_state = 55, .external_lex_state = 2}, [177] = {.lex_state = 55, .external_lex_state = 2}, [178] = {.lex_state = 54, .external_lex_state = 2}, [179] = {.lex_state = 3, .external_lex_state = 2}, [180] = {.lex_state = 3, .external_lex_state = 2}, [181] = {.lex_state = 3, .external_lex_state = 2}, [182] = {.lex_state = 3, .external_lex_state = 2}, [183] = {.lex_state = 3, .external_lex_state = 2}, [184] = {.lex_state = 3, .external_lex_state = 2}, [185] = {.lex_state = 3, .external_lex_state = 2}, [186] = {.lex_state = 3, .external_lex_state = 2}, [187] = {.lex_state = 3, .external_lex_state = 2}, [188] = {.lex_state = 3, .external_lex_state = 2}, [189] = {.lex_state = 3, .external_lex_state = 2}, [190] = {.lex_state = 3, .external_lex_state = 2}, [191] = {.lex_state = 3, .external_lex_state = 2}, [192] = {.lex_state = 3, .external_lex_state = 2}, [193] = {.lex_state = 3, .external_lex_state = 2}, [194] = {.lex_state = 55, .external_lex_state = 2}, [195] = {.lex_state = 55, .external_lex_state = 2}, [196] = {.lex_state = 55, .external_lex_state = 2}, [197] = {.lex_state = 55, .external_lex_state = 2}, [198] = {.lex_state = 55, .external_lex_state = 2}, [199] = {.lex_state = 55, .external_lex_state = 2}, [200] = {.lex_state = 55, .external_lex_state = 2}, [201] = {.lex_state = 55, .external_lex_state = 2}, [202] = {.lex_state = 55, .external_lex_state = 2}, [203] = {.lex_state = 55, .external_lex_state = 2}, [204] = {.lex_state = 55, .external_lex_state = 2}, [205] = {.lex_state = 55, .external_lex_state = 2}, [206] = {.lex_state = 55, .external_lex_state = 2}, [207] = {.lex_state = 55, .external_lex_state = 2}, [208] = {.lex_state = 55, .external_lex_state = 2}, [209] = {.lex_state = 54, .external_lex_state = 2}, [210] = {.lex_state = 54, .external_lex_state = 2}, [211] = {.lex_state = 54, .external_lex_state = 2}, [212] = {.lex_state = 54, .external_lex_state = 2}, [213] = {.lex_state = 54, .external_lex_state = 2}, [214] = {.lex_state = 54, .external_lex_state = 2}, [215] = {.lex_state = 54, .external_lex_state = 2}, [216] = {.lex_state = 54, .external_lex_state = 2}, [217] = {.lex_state = 54, .external_lex_state = 2}, [218] = {.lex_state = 54, .external_lex_state = 2}, [219] = {.lex_state = 54, .external_lex_state = 2}, [220] = {.lex_state = 54, .external_lex_state = 2}, [221] = {.lex_state = 54, .external_lex_state = 2}, [222] = {.lex_state = 54, .external_lex_state = 2}, [223] = {.lex_state = 54, .external_lex_state = 2}, [224] = {.lex_state = 54, .external_lex_state = 2}, [225] = {.lex_state = 54, .external_lex_state = 2}, [226] = {.lex_state = 55, .external_lex_state = 2}, [227] = {.lex_state = 55, .external_lex_state = 2}, [228] = {.lex_state = 55, .external_lex_state = 2}, [229] = {.lex_state = 55, .external_lex_state = 2}, [230] = {.lex_state = 55, .external_lex_state = 2}, [231] = {.lex_state = 55, .external_lex_state = 2}, [232] = {.lex_state = 55, .external_lex_state = 2}, [233] = {.lex_state = 55, .external_lex_state = 2}, [234] = {.lex_state = 55, .external_lex_state = 2}, [235] = {.lex_state = 55, .external_lex_state = 2}, [236] = {.lex_state = 55, .external_lex_state = 2}, [237] = {.lex_state = 55, .external_lex_state = 2}, [238] = {.lex_state = 55, .external_lex_state = 2}, [239] = {.lex_state = 55, .external_lex_state = 2}, [240] = {.lex_state = 55, .external_lex_state = 2}, [241] = {.lex_state = 55, .external_lex_state = 2}, [242] = {.lex_state = 55, .external_lex_state = 2}, [243] = {.lex_state = 55, .external_lex_state = 2}, [244] = {.lex_state = 55, .external_lex_state = 2}, [245] = {.lex_state = 55, .external_lex_state = 2}, [246] = {.lex_state = 55, .external_lex_state = 2}, [247] = {.lex_state = 55, .external_lex_state = 2}, [248] = {.lex_state = 55, .external_lex_state = 2}, [249] = {.lex_state = 55, .external_lex_state = 2}, [250] = {.lex_state = 55, .external_lex_state = 2}, [251] = {.lex_state = 55, .external_lex_state = 2}, [252] = {.lex_state = 55, .external_lex_state = 2}, [253] = {.lex_state = 55, .external_lex_state = 2}, [254] = {.lex_state = 55, .external_lex_state = 2}, [255] = {.lex_state = 55, .external_lex_state = 2}, [256] = {.lex_state = 55, .external_lex_state = 2}, [257] = {.lex_state = 55, .external_lex_state = 2}, [258] = {.lex_state = 55, .external_lex_state = 2}, [259] = {.lex_state = 55, .external_lex_state = 2}, [260] = {.lex_state = 55, .external_lex_state = 2}, [261] = {.lex_state = 55, .external_lex_state = 2}, [262] = {.lex_state = 55, .external_lex_state = 2}, [263] = {.lex_state = 55, .external_lex_state = 2}, [264] = {.lex_state = 55, .external_lex_state = 2}, [265] = {.lex_state = 55, .external_lex_state = 2}, [266] = {.lex_state = 55, .external_lex_state = 2}, [267] = {.lex_state = 55, .external_lex_state = 2}, [268] = {.lex_state = 55, .external_lex_state = 2}, [269] = {.lex_state = 55, .external_lex_state = 2}, [270] = {.lex_state = 55, .external_lex_state = 2}, [271] = {.lex_state = 55, .external_lex_state = 2}, [272] = {.lex_state = 55, .external_lex_state = 2}, [273] = {.lex_state = 55, .external_lex_state = 2}, [274] = {.lex_state = 55, .external_lex_state = 2}, [275] = {.lex_state = 55, .external_lex_state = 2}, [276] = {.lex_state = 55, .external_lex_state = 2}, [277] = {.lex_state = 55, .external_lex_state = 2}, [278] = {.lex_state = 55, .external_lex_state = 2}, [279] = {.lex_state = 55, .external_lex_state = 2}, [280] = {.lex_state = 55, .external_lex_state = 2}, [281] = {.lex_state = 55, .external_lex_state = 2}, [282] = {.lex_state = 55, .external_lex_state = 2}, [283] = {.lex_state = 55, .external_lex_state = 2}, [284] = {.lex_state = 55, .external_lex_state = 2}, [285] = {.lex_state = 55, .external_lex_state = 2}, [286] = {.lex_state = 55, .external_lex_state = 2}, [287] = {.lex_state = 55, .external_lex_state = 2}, [288] = {.lex_state = 55, .external_lex_state = 2}, [289] = {.lex_state = 55, .external_lex_state = 2}, [290] = {.lex_state = 55, .external_lex_state = 2}, [291] = {.lex_state = 55, .external_lex_state = 2}, [292] = {.lex_state = 55, .external_lex_state = 2}, [293] = {.lex_state = 55, .external_lex_state = 2}, [294] = {.lex_state = 55, .external_lex_state = 2}, [295] = {.lex_state = 55, .external_lex_state = 2}, [296] = {.lex_state = 55, .external_lex_state = 2}, [297] = {.lex_state = 55, .external_lex_state = 2}, [298] = {.lex_state = 55, .external_lex_state = 2}, [299] = {.lex_state = 55, .external_lex_state = 2}, [300] = {.lex_state = 55, .external_lex_state = 2}, [301] = {.lex_state = 55, .external_lex_state = 2}, [302] = {.lex_state = 55, .external_lex_state = 2}, [303] = {.lex_state = 55, .external_lex_state = 2}, [304] = {.lex_state = 55, .external_lex_state = 2}, [305] = {.lex_state = 55, .external_lex_state = 2}, [306] = {.lex_state = 55, .external_lex_state = 2}, [307] = {.lex_state = 55, .external_lex_state = 2}, [308] = {.lex_state = 55, .external_lex_state = 2}, [309] = {.lex_state = 55, .external_lex_state = 2}, [310] = {.lex_state = 55, .external_lex_state = 2}, [311] = {.lex_state = 55, .external_lex_state = 2}, [312] = {.lex_state = 55, .external_lex_state = 2}, [313] = {.lex_state = 55, .external_lex_state = 2}, [314] = {.lex_state = 55, .external_lex_state = 2}, [315] = {.lex_state = 55, .external_lex_state = 2}, [316] = {.lex_state = 55, .external_lex_state = 2}, [317] = {.lex_state = 55, .external_lex_state = 2}, [318] = {.lex_state = 55, .external_lex_state = 2}, [319] = {.lex_state = 55, .external_lex_state = 2}, [320] = {.lex_state = 55, .external_lex_state = 2}, [321] = {.lex_state = 55, .external_lex_state = 2}, [322] = {.lex_state = 55, .external_lex_state = 2}, [323] = {.lex_state = 55, .external_lex_state = 2}, [324] = {.lex_state = 55, .external_lex_state = 2}, [325] = {.lex_state = 55, .external_lex_state = 2}, [326] = {.lex_state = 55, .external_lex_state = 2}, [327] = {.lex_state = 55, .external_lex_state = 2}, [328] = {.lex_state = 55, .external_lex_state = 2}, [329] = {.lex_state = 55, .external_lex_state = 2}, [330] = {.lex_state = 55, .external_lex_state = 2}, [331] = {.lex_state = 55, .external_lex_state = 2}, [332] = {.lex_state = 55, .external_lex_state = 2}, [333] = {.lex_state = 55, .external_lex_state = 2}, [334] = {.lex_state = 55, .external_lex_state = 2}, [335] = {.lex_state = 55, .external_lex_state = 2}, [336] = {.lex_state = 55, .external_lex_state = 2}, [337] = {.lex_state = 55, .external_lex_state = 2}, [338] = {.lex_state = 55, .external_lex_state = 2}, [339] = {.lex_state = 55, .external_lex_state = 2}, [340] = {.lex_state = 55, .external_lex_state = 2}, [341] = {.lex_state = 55, .external_lex_state = 2}, [342] = {.lex_state = 55, .external_lex_state = 2}, [343] = {.lex_state = 55, .external_lex_state = 2}, [344] = {.lex_state = 55, .external_lex_state = 2}, [345] = {.lex_state = 55, .external_lex_state = 2}, [346] = {.lex_state = 55, .external_lex_state = 2}, [347] = {.lex_state = 55, .external_lex_state = 2}, [348] = {.lex_state = 55, .external_lex_state = 2}, [349] = {.lex_state = 55, .external_lex_state = 2}, [350] = {.lex_state = 55, .external_lex_state = 2}, [351] = {.lex_state = 55, .external_lex_state = 2}, [352] = {.lex_state = 55, .external_lex_state = 2}, [353] = {.lex_state = 55, .external_lex_state = 2}, [354] = {.lex_state = 55, .external_lex_state = 2}, [355] = {.lex_state = 55, .external_lex_state = 2}, [356] = {.lex_state = 55, .external_lex_state = 2}, [357] = {.lex_state = 55, .external_lex_state = 2}, [358] = {.lex_state = 55, .external_lex_state = 2}, [359] = {.lex_state = 55, .external_lex_state = 2}, [360] = {.lex_state = 55, .external_lex_state = 2}, [361] = {.lex_state = 55, .external_lex_state = 2}, [362] = {.lex_state = 55, .external_lex_state = 2}, [363] = {.lex_state = 55, .external_lex_state = 2}, [364] = {.lex_state = 55, .external_lex_state = 2}, [365] = {.lex_state = 55, .external_lex_state = 2}, [366] = {.lex_state = 55, .external_lex_state = 2}, [367] = {.lex_state = 55, .external_lex_state = 2}, [368] = {.lex_state = 55, .external_lex_state = 2}, [369] = {.lex_state = 55, .external_lex_state = 2}, [370] = {.lex_state = 55, .external_lex_state = 2}, [371] = {.lex_state = 55, .external_lex_state = 2}, [372] = {.lex_state = 55, .external_lex_state = 2}, [373] = {.lex_state = 55, .external_lex_state = 2}, [374] = {.lex_state = 55, .external_lex_state = 2}, [375] = {.lex_state = 55, .external_lex_state = 2}, [376] = {.lex_state = 55, .external_lex_state = 2}, [377] = {.lex_state = 55, .external_lex_state = 2}, [378] = {.lex_state = 55, .external_lex_state = 2}, [379] = {.lex_state = 55, .external_lex_state = 2}, [380] = {.lex_state = 55, .external_lex_state = 2}, [381] = {.lex_state = 55, .external_lex_state = 2}, [382] = {.lex_state = 55, .external_lex_state = 2}, [383] = {.lex_state = 55, .external_lex_state = 2}, [384] = {.lex_state = 55, .external_lex_state = 2}, [385] = {.lex_state = 55, .external_lex_state = 2}, [386] = {.lex_state = 55, .external_lex_state = 2}, [387] = {.lex_state = 55, .external_lex_state = 2}, [388] = {.lex_state = 55, .external_lex_state = 2}, [389] = {.lex_state = 55, .external_lex_state = 2}, [390] = {.lex_state = 55, .external_lex_state = 2}, [391] = {.lex_state = 55, .external_lex_state = 2}, [392] = {.lex_state = 55, .external_lex_state = 2}, [393] = {.lex_state = 55, .external_lex_state = 2}, [394] = {.lex_state = 55, .external_lex_state = 2}, [395] = {.lex_state = 55, .external_lex_state = 2}, [396] = {.lex_state = 55, .external_lex_state = 2}, [397] = {.lex_state = 55, .external_lex_state = 2}, [398] = {.lex_state = 55, .external_lex_state = 2}, [399] = {.lex_state = 55, .external_lex_state = 2}, [400] = {.lex_state = 55, .external_lex_state = 2}, [401] = {.lex_state = 55, .external_lex_state = 2}, [402] = {.lex_state = 55, .external_lex_state = 2}, [403] = {.lex_state = 55, .external_lex_state = 2}, [404] = {.lex_state = 55, .external_lex_state = 2}, [405] = {.lex_state = 55, .external_lex_state = 2}, [406] = {.lex_state = 55, .external_lex_state = 2}, [407] = {.lex_state = 55, .external_lex_state = 2}, [408] = {.lex_state = 55, .external_lex_state = 2}, [409] = {.lex_state = 55, .external_lex_state = 2}, [410] = {.lex_state = 55, .external_lex_state = 2}, [411] = {.lex_state = 55, .external_lex_state = 2}, [412] = {.lex_state = 55, .external_lex_state = 2}, [413] = {.lex_state = 8, .external_lex_state = 2}, [414] = {.lex_state = 55, .external_lex_state = 2}, [415] = {.lex_state = 55, .external_lex_state = 2}, [416] = {.lex_state = 8, .external_lex_state = 2}, [417] = {.lex_state = 8, .external_lex_state = 2}, [418] = {.lex_state = 8, .external_lex_state = 2}, [419] = {.lex_state = 8, .external_lex_state = 2}, [420] = {.lex_state = 8, .external_lex_state = 2}, [421] = {.lex_state = 8, .external_lex_state = 2}, [422] = {.lex_state = 55, .external_lex_state = 2}, [423] = {.lex_state = 8, .external_lex_state = 2}, [424] = {.lex_state = 55, .external_lex_state = 2}, [425] = {.lex_state = 8, .external_lex_state = 2}, [426] = {.lex_state = 8, .external_lex_state = 2}, [427] = {.lex_state = 55, .external_lex_state = 2}, [428] = {.lex_state = 55, .external_lex_state = 2}, [429] = {.lex_state = 55, .external_lex_state = 2}, [430] = {.lex_state = 8, .external_lex_state = 2}, [431] = {.lex_state = 8, .external_lex_state = 2}, [432] = {.lex_state = 8, .external_lex_state = 2}, [433] = {.lex_state = 55, .external_lex_state = 2}, [434] = {.lex_state = 55, .external_lex_state = 2}, [435] = {.lex_state = 55, .external_lex_state = 2}, [436] = {.lex_state = 55, .external_lex_state = 2}, [437] = {.lex_state = 55, .external_lex_state = 2}, [438] = {.lex_state = 55, .external_lex_state = 2}, [439] = {.lex_state = 55, .external_lex_state = 2}, [440] = {.lex_state = 55, .external_lex_state = 2}, [441] = {.lex_state = 55, .external_lex_state = 2}, [442] = {.lex_state = 55, .external_lex_state = 2}, [443] = {.lex_state = 55, .external_lex_state = 2}, [444] = {.lex_state = 55, .external_lex_state = 2}, [445] = {.lex_state = 55, .external_lex_state = 2}, [446] = {.lex_state = 55, .external_lex_state = 2}, [447] = {.lex_state = 55, .external_lex_state = 2}, [448] = {.lex_state = 55, .external_lex_state = 2}, [449] = {.lex_state = 55, .external_lex_state = 2}, [450] = {.lex_state = 55, .external_lex_state = 2}, [451] = {.lex_state = 55, .external_lex_state = 2}, [452] = {.lex_state = 55, .external_lex_state = 2}, [453] = {.lex_state = 55, .external_lex_state = 2}, [454] = {.lex_state = 55, .external_lex_state = 2}, [455] = {.lex_state = 55, .external_lex_state = 2}, [456] = {.lex_state = 55, .external_lex_state = 2}, [457] = {.lex_state = 55, .external_lex_state = 2}, [458] = {.lex_state = 55, .external_lex_state = 2}, [459] = {.lex_state = 55, .external_lex_state = 2}, [460] = {.lex_state = 55, .external_lex_state = 2}, [461] = {.lex_state = 55, .external_lex_state = 2}, [462] = {.lex_state = 55, .external_lex_state = 2}, [463] = {.lex_state = 55, .external_lex_state = 2}, [464] = {.lex_state = 55, .external_lex_state = 2}, [465] = {.lex_state = 55, .external_lex_state = 2}, [466] = {.lex_state = 55, .external_lex_state = 2}, [467] = {.lex_state = 55, .external_lex_state = 2}, [468] = {.lex_state = 55, .external_lex_state = 2}, [469] = {.lex_state = 55, .external_lex_state = 2}, [470] = {.lex_state = 55, .external_lex_state = 2}, [471] = {.lex_state = 55, .external_lex_state = 2}, [472] = {.lex_state = 55, .external_lex_state = 2}, [473] = {.lex_state = 55, .external_lex_state = 2}, [474] = {.lex_state = 55, .external_lex_state = 2}, [475] = {.lex_state = 55, .external_lex_state = 2}, [476] = {.lex_state = 55, .external_lex_state = 2}, [477] = {.lex_state = 55, .external_lex_state = 2}, [478] = {.lex_state = 8, .external_lex_state = 2}, [479] = {.lex_state = 8, .external_lex_state = 2}, [480] = {.lex_state = 55, .external_lex_state = 2}, [481] = {.lex_state = 55, .external_lex_state = 2}, [482] = {.lex_state = 8, .external_lex_state = 2}, [483] = {.lex_state = 8, .external_lex_state = 2}, [484] = {.lex_state = 8, .external_lex_state = 2}, [485] = {.lex_state = 55, .external_lex_state = 2}, [486] = {.lex_state = 8, .external_lex_state = 2}, [487] = {.lex_state = 8, .external_lex_state = 2}, [488] = {.lex_state = 8, .external_lex_state = 2}, [489] = {.lex_state = 8, .external_lex_state = 2}, [490] = {.lex_state = 2, .external_lex_state = 3}, [491] = {.lex_state = 2, .external_lex_state = 3}, [492] = {.lex_state = 2, .external_lex_state = 3}, [493] = {.lex_state = 2, .external_lex_state = 3}, [494] = {.lex_state = 2, .external_lex_state = 3}, [495] = {.lex_state = 2, .external_lex_state = 3}, [496] = {.lex_state = 2, .external_lex_state = 3}, [497] = {.lex_state = 2, .external_lex_state = 3}, [498] = {.lex_state = 2, .external_lex_state = 3}, [499] = {.lex_state = 55, .external_lex_state = 2}, [500] = {.lex_state = 55, .external_lex_state = 2}, [501] = {.lex_state = 2, .external_lex_state = 3}, [502] = {.lex_state = 55, .external_lex_state = 2}, [503] = {.lex_state = 55, .external_lex_state = 2}, [504] = {.lex_state = 2, .external_lex_state = 3}, [505] = {.lex_state = 2, .external_lex_state = 3}, [506] = {.lex_state = 2, .external_lex_state = 3}, [507] = {.lex_state = 2, .external_lex_state = 3}, [508] = {.lex_state = 2, .external_lex_state = 3}, [509] = {.lex_state = 2, .external_lex_state = 3}, [510] = {.lex_state = 2, .external_lex_state = 3}, [511] = {.lex_state = 2, .external_lex_state = 3}, [512] = {.lex_state = 2, .external_lex_state = 3}, [513] = {.lex_state = 2, .external_lex_state = 3}, [514] = {.lex_state = 2, .external_lex_state = 3}, [515] = {.lex_state = 2, .external_lex_state = 3}, [516] = {.lex_state = 2, .external_lex_state = 3}, [517] = {.lex_state = 2, .external_lex_state = 3}, [518] = {.lex_state = 2, .external_lex_state = 3}, [519] = {.lex_state = 2, .external_lex_state = 3}, [520] = {.lex_state = 2, .external_lex_state = 3}, [521] = {.lex_state = 2, .external_lex_state = 3}, [522] = {.lex_state = 2, .external_lex_state = 3}, [523] = {.lex_state = 2, .external_lex_state = 3}, [524] = {.lex_state = 2, .external_lex_state = 3}, [525] = {.lex_state = 2, .external_lex_state = 3}, [526] = {.lex_state = 2, .external_lex_state = 3}, [527] = {.lex_state = 2, .external_lex_state = 3}, [528] = {.lex_state = 2, .external_lex_state = 3}, [529] = {.lex_state = 2, .external_lex_state = 3}, [530] = {.lex_state = 2, .external_lex_state = 3}, [531] = {.lex_state = 2, .external_lex_state = 3}, [532] = {.lex_state = 2, .external_lex_state = 3}, [533] = {.lex_state = 2, .external_lex_state = 3}, [534] = {.lex_state = 2, .external_lex_state = 3}, [535] = {.lex_state = 2, .external_lex_state = 3}, [536] = {.lex_state = 2, .external_lex_state = 3}, [537] = {.lex_state = 2, .external_lex_state = 3}, [538] = {.lex_state = 2, .external_lex_state = 3}, [539] = {.lex_state = 2, .external_lex_state = 3}, [540] = {.lex_state = 2, .external_lex_state = 3}, [541] = {.lex_state = 2, .external_lex_state = 3}, [542] = {.lex_state = 2, .external_lex_state = 3}, [543] = {.lex_state = 2, .external_lex_state = 3}, [544] = {.lex_state = 2, .external_lex_state = 3}, [545] = {.lex_state = 2, .external_lex_state = 3}, [546] = {.lex_state = 2, .external_lex_state = 3}, [547] = {.lex_state = 2, .external_lex_state = 3}, [548] = {.lex_state = 2, .external_lex_state = 3}, [549] = {.lex_state = 2, .external_lex_state = 3}, [550] = {.lex_state = 2, .external_lex_state = 3}, [551] = {.lex_state = 2, .external_lex_state = 3}, [552] = {.lex_state = 2, .external_lex_state = 3}, [553] = {.lex_state = 2, .external_lex_state = 3}, [554] = {.lex_state = 2, .external_lex_state = 3}, [555] = {.lex_state = 2, .external_lex_state = 3}, [556] = {.lex_state = 2, .external_lex_state = 3}, [557] = {.lex_state = 2, .external_lex_state = 3}, [558] = {.lex_state = 2, .external_lex_state = 3}, [559] = {.lex_state = 2, .external_lex_state = 3}, [560] = {.lex_state = 2, .external_lex_state = 3}, [561] = {.lex_state = 2, .external_lex_state = 3}, [562] = {.lex_state = 2, .external_lex_state = 3}, [563] = {.lex_state = 2, .external_lex_state = 3}, [564] = {.lex_state = 2, .external_lex_state = 3}, [565] = {.lex_state = 2, .external_lex_state = 3}, [566] = {.lex_state = 2, .external_lex_state = 3}, [567] = {.lex_state = 2, .external_lex_state = 3}, [568] = {.lex_state = 2, .external_lex_state = 3}, [569] = {.lex_state = 2, .external_lex_state = 3}, [570] = {.lex_state = 2, .external_lex_state = 3}, [571] = {.lex_state = 2, .external_lex_state = 3}, [572] = {.lex_state = 2, .external_lex_state = 3}, [573] = {.lex_state = 2, .external_lex_state = 3}, [574] = {.lex_state = 2, .external_lex_state = 3}, [575] = {.lex_state = 2, .external_lex_state = 3}, [576] = {.lex_state = 2, .external_lex_state = 3}, [577] = {.lex_state = 2, .external_lex_state = 3}, [578] = {.lex_state = 2, .external_lex_state = 3}, [579] = {.lex_state = 2, .external_lex_state = 3}, [580] = {.lex_state = 2, .external_lex_state = 3}, [581] = {.lex_state = 2, .external_lex_state = 3}, [582] = {.lex_state = 2, .external_lex_state = 3}, [583] = {.lex_state = 2, .external_lex_state = 3}, [584] = {.lex_state = 2, .external_lex_state = 3}, [585] = {.lex_state = 2, .external_lex_state = 3}, [586] = {.lex_state = 2, .external_lex_state = 3}, [587] = {.lex_state = 2, .external_lex_state = 3}, [588] = {.lex_state = 2, .external_lex_state = 3}, [589] = {.lex_state = 2, .external_lex_state = 3}, [590] = {.lex_state = 2, .external_lex_state = 3}, [591] = {.lex_state = 2, .external_lex_state = 3}, [592] = {.lex_state = 2, .external_lex_state = 3}, [593] = {.lex_state = 2, .external_lex_state = 3}, [594] = {.lex_state = 2, .external_lex_state = 3}, [595] = {.lex_state = 2, .external_lex_state = 3}, [596] = {.lex_state = 2, .external_lex_state = 3}, [597] = {.lex_state = 2, .external_lex_state = 3}, [598] = {.lex_state = 2, .external_lex_state = 3}, [599] = {.lex_state = 2, .external_lex_state = 3}, [600] = {.lex_state = 2, .external_lex_state = 3}, [601] = {.lex_state = 2, .external_lex_state = 3}, [602] = {.lex_state = 2, .external_lex_state = 3}, [603] = {.lex_state = 2, .external_lex_state = 3}, [604] = {.lex_state = 2, .external_lex_state = 3}, [605] = {.lex_state = 2, .external_lex_state = 3}, [606] = {.lex_state = 2, .external_lex_state = 3}, [607] = {.lex_state = 2, .external_lex_state = 3}, [608] = {.lex_state = 2, .external_lex_state = 3}, [609] = {.lex_state = 2, .external_lex_state = 3}, [610] = {.lex_state = 2, .external_lex_state = 3}, [611] = {.lex_state = 2, .external_lex_state = 3}, [612] = {.lex_state = 2, .external_lex_state = 3}, [613] = {.lex_state = 2, .external_lex_state = 3}, [614] = {.lex_state = 2, .external_lex_state = 3}, [615] = {.lex_state = 2, .external_lex_state = 3}, [616] = {.lex_state = 7, .external_lex_state = 3}, [617] = {.lex_state = 5, .external_lex_state = 3}, [618] = {.lex_state = 7, .external_lex_state = 3}, [619] = {.lex_state = 5, .external_lex_state = 3}, [620] = {.lex_state = 5, .external_lex_state = 3}, [621] = {.lex_state = 3, .external_lex_state = 2}, [622] = {.lex_state = 3, .external_lex_state = 2}, [623] = {.lex_state = 7, .external_lex_state = 3}, [624] = {.lex_state = 3, .external_lex_state = 2}, [625] = {.lex_state = 7, .external_lex_state = 3}, [626] = {.lex_state = 5, .external_lex_state = 3}, [627] = {.lex_state = 5, .external_lex_state = 3}, [628] = {.lex_state = 7, .external_lex_state = 3}, [629] = {.lex_state = 5, .external_lex_state = 3}, [630] = {.lex_state = 7, .external_lex_state = 3}, [631] = {.lex_state = 7, .external_lex_state = 3}, [632] = {.lex_state = 7, .external_lex_state = 3}, [633] = {.lex_state = 7, .external_lex_state = 3}, [634] = {.lex_state = 5, .external_lex_state = 3}, [635] = {.lex_state = 5, .external_lex_state = 3}, [636] = {.lex_state = 7, .external_lex_state = 3}, [637] = {.lex_state = 5, .external_lex_state = 3}, [638] = {.lex_state = 5, .external_lex_state = 3}, [639] = {.lex_state = 5, .external_lex_state = 3}, [640] = {.lex_state = 5, .external_lex_state = 3}, [641] = {.lex_state = 5, .external_lex_state = 3}, [642] = {.lex_state = 5, .external_lex_state = 3}, [643] = {.lex_state = 5, .external_lex_state = 3}, [644] = {.lex_state = 5, .external_lex_state = 3}, [645] = {.lex_state = 5, .external_lex_state = 3}, [646] = {.lex_state = 5, .external_lex_state = 3}, [647] = {.lex_state = 5, .external_lex_state = 3}, [648] = {.lex_state = 5, .external_lex_state = 3}, [649] = {.lex_state = 5, .external_lex_state = 3}, [650] = {.lex_state = 5, .external_lex_state = 3}, [651] = {.lex_state = 5, .external_lex_state = 3}, [652] = {.lex_state = 5, .external_lex_state = 3}, [653] = {.lex_state = 5, .external_lex_state = 3}, [654] = {.lex_state = 5, .external_lex_state = 3}, [655] = {.lex_state = 5, .external_lex_state = 3}, [656] = {.lex_state = 5, .external_lex_state = 3}, [657] = {.lex_state = 5, .external_lex_state = 3}, [658] = {.lex_state = 5, .external_lex_state = 3}, [659] = {.lex_state = 6, .external_lex_state = 3}, [660] = {.lex_state = 5, .external_lex_state = 3}, [661] = {.lex_state = 5, .external_lex_state = 3}, [662] = {.lex_state = 5, .external_lex_state = 3}, [663] = {.lex_state = 5, .external_lex_state = 3}, [664] = {.lex_state = 5, .external_lex_state = 3}, [665] = {.lex_state = 5, .external_lex_state = 3}, [666] = {.lex_state = 5, .external_lex_state = 3}, [667] = {.lex_state = 7, .external_lex_state = 3}, [668] = {.lex_state = 5, .external_lex_state = 3}, [669] = {.lex_state = 5, .external_lex_state = 3}, [670] = {.lex_state = 5, .external_lex_state = 3}, [671] = {.lex_state = 5, .external_lex_state = 3}, [672] = {.lex_state = 5, .external_lex_state = 3}, [673] = {.lex_state = 5, .external_lex_state = 3}, [674] = {.lex_state = 5, .external_lex_state = 3}, [675] = {.lex_state = 5, .external_lex_state = 3}, [676] = {.lex_state = 5, .external_lex_state = 3}, [677] = {.lex_state = 7, .external_lex_state = 3}, [678] = {.lex_state = 5, .external_lex_state = 3}, [679] = {.lex_state = 5, .external_lex_state = 3}, [680] = {.lex_state = 5, .external_lex_state = 3}, [681] = {.lex_state = 5, .external_lex_state = 3}, [682] = {.lex_state = 5, .external_lex_state = 3}, [683] = {.lex_state = 5, .external_lex_state = 3}, [684] = {.lex_state = 5, .external_lex_state = 3}, [685] = {.lex_state = 5, .external_lex_state = 3}, [686] = {.lex_state = 5, .external_lex_state = 3}, [687] = {.lex_state = 5, .external_lex_state = 3}, [688] = {.lex_state = 5, .external_lex_state = 3}, [689] = {.lex_state = 5, .external_lex_state = 3}, [690] = {.lex_state = 5, .external_lex_state = 3}, [691] = {.lex_state = 5, .external_lex_state = 3}, [692] = {.lex_state = 5, .external_lex_state = 3}, [693] = {.lex_state = 5, .external_lex_state = 3}, [694] = {.lex_state = 5, .external_lex_state = 3}, [695] = {.lex_state = 5, .external_lex_state = 3}, [696] = {.lex_state = 5, .external_lex_state = 3}, [697] = {.lex_state = 5, .external_lex_state = 3}, [698] = {.lex_state = 5, .external_lex_state = 3}, [699] = {.lex_state = 5, .external_lex_state = 3}, [700] = {.lex_state = 5, .external_lex_state = 3}, [701] = {.lex_state = 5, .external_lex_state = 3}, [702] = {.lex_state = 5, .external_lex_state = 3}, [703] = {.lex_state = 5, .external_lex_state = 3}, [704] = {.lex_state = 5, .external_lex_state = 3}, [705] = {.lex_state = 5, .external_lex_state = 3}, [706] = {.lex_state = 5, .external_lex_state = 3}, [707] = {.lex_state = 5, .external_lex_state = 3}, [708] = {.lex_state = 5, .external_lex_state = 3}, [709] = {.lex_state = 5, .external_lex_state = 3}, [710] = {.lex_state = 5, .external_lex_state = 3}, [711] = {.lex_state = 5, .external_lex_state = 3}, [712] = {.lex_state = 5, .external_lex_state = 3}, [713] = {.lex_state = 5, .external_lex_state = 3}, [714] = {.lex_state = 5, .external_lex_state = 3}, [715] = {.lex_state = 5, .external_lex_state = 3}, [716] = {.lex_state = 5, .external_lex_state = 3}, [717] = {.lex_state = 5, .external_lex_state = 3}, [718] = {.lex_state = 5, .external_lex_state = 3}, [719] = {.lex_state = 5, .external_lex_state = 3}, [720] = {.lex_state = 5, .external_lex_state = 3}, [721] = {.lex_state = 5, .external_lex_state = 3}, [722] = {.lex_state = 5, .external_lex_state = 3}, [723] = {.lex_state = 5, .external_lex_state = 3}, [724] = {.lex_state = 5, .external_lex_state = 3}, [725] = {.lex_state = 5, .external_lex_state = 3}, [726] = {.lex_state = 5, .external_lex_state = 3}, [727] = {.lex_state = 5, .external_lex_state = 3}, [728] = {.lex_state = 5, .external_lex_state = 3}, [729] = {.lex_state = 5, .external_lex_state = 3}, [730] = {.lex_state = 5, .external_lex_state = 3}, [731] = {.lex_state = 5, .external_lex_state = 3}, [732] = {.lex_state = 5, .external_lex_state = 3}, [733] = {.lex_state = 7, .external_lex_state = 3}, [734] = {.lex_state = 5, .external_lex_state = 3}, [735] = {.lex_state = 5, .external_lex_state = 3}, [736] = {.lex_state = 5, .external_lex_state = 3}, [737] = {.lex_state = 5, .external_lex_state = 3}, [738] = {.lex_state = 5, .external_lex_state = 3}, [739] = {.lex_state = 55, .external_lex_state = 2}, [740] = {.lex_state = 5, .external_lex_state = 3}, [741] = {.lex_state = 5, .external_lex_state = 3}, [742] = {.lex_state = 55, .external_lex_state = 2}, [743] = {.lex_state = 5, .external_lex_state = 3}, [744] = {.lex_state = 5, .external_lex_state = 3}, [745] = {.lex_state = 5, .external_lex_state = 3}, [746] = {.lex_state = 5, .external_lex_state = 3}, [747] = {.lex_state = 5, .external_lex_state = 3}, [748] = {.lex_state = 5, .external_lex_state = 3}, [749] = {.lex_state = 5, .external_lex_state = 3}, [750] = {.lex_state = 5, .external_lex_state = 3}, [751] = {.lex_state = 5, .external_lex_state = 3}, [752] = {.lex_state = 5, .external_lex_state = 3}, [753] = {.lex_state = 7, .external_lex_state = 3}, [754] = {.lex_state = 5, .external_lex_state = 3}, [755] = {.lex_state = 5, .external_lex_state = 3}, [756] = {.lex_state = 5, .external_lex_state = 3}, [757] = {.lex_state = 5, .external_lex_state = 3}, [758] = {.lex_state = 55, .external_lex_state = 2}, [759] = {.lex_state = 5, .external_lex_state = 3}, [760] = {.lex_state = 5, .external_lex_state = 3}, [761] = {.lex_state = 5, .external_lex_state = 3}, [762] = {.lex_state = 55, .external_lex_state = 2}, [763] = {.lex_state = 5, .external_lex_state = 3}, [764] = {.lex_state = 5, .external_lex_state = 3}, [765] = {.lex_state = 5, .external_lex_state = 3}, [766] = {.lex_state = 5, .external_lex_state = 3}, [767] = {.lex_state = 5, .external_lex_state = 3}, [768] = {.lex_state = 5, .external_lex_state = 3}, [769] = {.lex_state = 5, .external_lex_state = 3}, [770] = {.lex_state = 5, .external_lex_state = 3}, [771] = {.lex_state = 5, .external_lex_state = 3}, [772] = {.lex_state = 5, .external_lex_state = 3}, [773] = {.lex_state = 5, .external_lex_state = 3}, [774] = {.lex_state = 5, .external_lex_state = 3}, [775] = {.lex_state = 5, .external_lex_state = 3}, [776] = {.lex_state = 5, .external_lex_state = 3}, [777] = {.lex_state = 5, .external_lex_state = 3}, [778] = {.lex_state = 7, .external_lex_state = 3}, [779] = {.lex_state = 7, .external_lex_state = 3}, [780] = {.lex_state = 7, .external_lex_state = 3}, [781] = {.lex_state = 2, .external_lex_state = 3}, [782] = {.lex_state = 2, .external_lex_state = 3}, [783] = {.lex_state = 7, .external_lex_state = 3}, [784] = {.lex_state = 7, .external_lex_state = 3}, [785] = {.lex_state = 5, .external_lex_state = 3}, [786] = {.lex_state = 7, .external_lex_state = 3}, [787] = {.lex_state = 7, .external_lex_state = 3}, [788] = {.lex_state = 7, .external_lex_state = 3}, [789] = {.lex_state = 7, .external_lex_state = 3}, [790] = {.lex_state = 7, .external_lex_state = 3}, [791] = {.lex_state = 7, .external_lex_state = 3}, [792] = {.lex_state = 7, .external_lex_state = 3}, [793] = {.lex_state = 55, .external_lex_state = 2}, [794] = {.lex_state = 55, .external_lex_state = 2}, [795] = {.lex_state = 7, .external_lex_state = 3}, [796] = {.lex_state = 7, .external_lex_state = 3}, [797] = {.lex_state = 7, .external_lex_state = 3}, [798] = {.lex_state = 7, .external_lex_state = 3}, [799] = {.lex_state = 5, .external_lex_state = 3}, [800] = {.lex_state = 2, .external_lex_state = 3}, [801] = {.lex_state = 5, .external_lex_state = 3}, [802] = {.lex_state = 5, .external_lex_state = 3}, [803] = {.lex_state = 5, .external_lex_state = 3}, [804] = {.lex_state = 5, .external_lex_state = 3}, [805] = {.lex_state = 2, .external_lex_state = 3}, [806] = {.lex_state = 5, .external_lex_state = 3}, [807] = {.lex_state = 5, .external_lex_state = 3}, [808] = {.lex_state = 5, .external_lex_state = 3}, [809] = {.lex_state = 5, .external_lex_state = 3}, [810] = {.lex_state = 5, .external_lex_state = 3}, [811] = {.lex_state = 5, .external_lex_state = 3}, [812] = {.lex_state = 5, .external_lex_state = 3}, [813] = {.lex_state = 5, .external_lex_state = 3}, [814] = {.lex_state = 5, .external_lex_state = 3}, [815] = {.lex_state = 5, .external_lex_state = 3}, [816] = {.lex_state = 5, .external_lex_state = 3}, [817] = {.lex_state = 5, .external_lex_state = 3}, [818] = {.lex_state = 5, .external_lex_state = 3}, [819] = {.lex_state = 5, .external_lex_state = 3}, [820] = {.lex_state = 5, .external_lex_state = 3}, [821] = {.lex_state = 5, .external_lex_state = 3}, [822] = {.lex_state = 5, .external_lex_state = 3}, [823] = {.lex_state = 5, .external_lex_state = 3}, [824] = {.lex_state = 5, .external_lex_state = 3}, [825] = {.lex_state = 5, .external_lex_state = 3}, [826] = {.lex_state = 5, .external_lex_state = 3}, [827] = {.lex_state = 5, .external_lex_state = 3}, [828] = {.lex_state = 5, .external_lex_state = 3}, [829] = {.lex_state = 5, .external_lex_state = 3}, [830] = {.lex_state = 5, .external_lex_state = 3}, [831] = {.lex_state = 5, .external_lex_state = 3}, [832] = {.lex_state = 5, .external_lex_state = 3}, [833] = {.lex_state = 2, .external_lex_state = 3}, [834] = {.lex_state = 5, .external_lex_state = 3}, [835] = {.lex_state = 2, .external_lex_state = 3}, [836] = {.lex_state = 5, .external_lex_state = 3}, [837] = {.lex_state = 5, .external_lex_state = 3}, [838] = {.lex_state = 5, .external_lex_state = 3}, [839] = {.lex_state = 5, .external_lex_state = 3}, [840] = {.lex_state = 5, .external_lex_state = 3}, [841] = {.lex_state = 5, .external_lex_state = 3}, [842] = {.lex_state = 5, .external_lex_state = 3}, [843] = {.lex_state = 5, .external_lex_state = 3}, [844] = {.lex_state = 2, .external_lex_state = 3}, [845] = {.lex_state = 2, .external_lex_state = 3}, [846] = {.lex_state = 5, .external_lex_state = 3}, [847] = {.lex_state = 5, .external_lex_state = 3}, [848] = {.lex_state = 5, .external_lex_state = 3}, [849] = {.lex_state = 2, .external_lex_state = 3}, [850] = {.lex_state = 5, .external_lex_state = 3}, [851] = {.lex_state = 5, .external_lex_state = 3}, [852] = {.lex_state = 5, .external_lex_state = 3}, [853] = {.lex_state = 2, .external_lex_state = 3}, [854] = {.lex_state = 5, .external_lex_state = 3}, [855] = {.lex_state = 2, .external_lex_state = 3}, [856] = {.lex_state = 5, .external_lex_state = 3}, [857] = {.lex_state = 5, .external_lex_state = 3}, [858] = {.lex_state = 5, .external_lex_state = 3}, [859] = {.lex_state = 5, .external_lex_state = 3}, [860] = {.lex_state = 5, .external_lex_state = 3}, [861] = {.lex_state = 2, .external_lex_state = 3}, [862] = {.lex_state = 5, .external_lex_state = 3}, [863] = {.lex_state = 5, .external_lex_state = 3}, [864] = {.lex_state = 5, .external_lex_state = 3}, [865] = {.lex_state = 5, .external_lex_state = 3}, [866] = {.lex_state = 5, .external_lex_state = 3}, [867] = {.lex_state = 5, .external_lex_state = 3}, [868] = {.lex_state = 5, .external_lex_state = 3}, [869] = {.lex_state = 5, .external_lex_state = 3}, [870] = {.lex_state = 5, .external_lex_state = 3}, [871] = {.lex_state = 5, .external_lex_state = 3}, [872] = {.lex_state = 5, .external_lex_state = 3}, [873] = {.lex_state = 5, .external_lex_state = 3}, [874] = {.lex_state = 5, .external_lex_state = 3}, [875] = {.lex_state = 5, .external_lex_state = 3}, [876] = {.lex_state = 5, .external_lex_state = 3}, [877] = {.lex_state = 5, .external_lex_state = 3}, [878] = {.lex_state = 5, .external_lex_state = 3}, [879] = {.lex_state = 5, .external_lex_state = 3}, [880] = {.lex_state = 5, .external_lex_state = 3}, [881] = {.lex_state = 5, .external_lex_state = 3}, [882] = {.lex_state = 5, .external_lex_state = 3}, [883] = {.lex_state = 5, .external_lex_state = 3}, [884] = {.lex_state = 5, .external_lex_state = 3}, [885] = {.lex_state = 5, .external_lex_state = 3}, [886] = {.lex_state = 5, .external_lex_state = 3}, [887] = {.lex_state = 5, .external_lex_state = 3}, [888] = {.lex_state = 5, .external_lex_state = 3}, [889] = {.lex_state = 5, .external_lex_state = 3}, [890] = {.lex_state = 5, .external_lex_state = 3}, [891] = {.lex_state = 5, .external_lex_state = 3}, [892] = {.lex_state = 5, .external_lex_state = 3}, [893] = {.lex_state = 5, .external_lex_state = 3}, [894] = {.lex_state = 5, .external_lex_state = 3}, [895] = {.lex_state = 5, .external_lex_state = 3}, [896] = {.lex_state = 5, .external_lex_state = 3}, [897] = {.lex_state = 5, .external_lex_state = 3}, [898] = {.lex_state = 5, .external_lex_state = 3}, [899] = {.lex_state = 5, .external_lex_state = 3}, [900] = {.lex_state = 5, .external_lex_state = 3}, [901] = {.lex_state = 5, .external_lex_state = 3}, [902] = {.lex_state = 5, .external_lex_state = 3}, [903] = {.lex_state = 2, .external_lex_state = 3}, [904] = {.lex_state = 5, .external_lex_state = 3}, [905] = {.lex_state = 2, .external_lex_state = 3}, [906] = {.lex_state = 5, .external_lex_state = 3}, [907] = {.lex_state = 5, .external_lex_state = 3}, [908] = {.lex_state = 5, .external_lex_state = 3}, [909] = {.lex_state = 5, .external_lex_state = 3}, [910] = {.lex_state = 5, .external_lex_state = 3}, [911] = {.lex_state = 2, .external_lex_state = 3}, [912] = {.lex_state = 5, .external_lex_state = 3}, [913] = {.lex_state = 5, .external_lex_state = 3}, [914] = {.lex_state = 2, .external_lex_state = 3}, [915] = {.lex_state = 2, .external_lex_state = 3}, [916] = {.lex_state = 5, .external_lex_state = 3}, [917] = {.lex_state = 2, .external_lex_state = 3}, [918] = {.lex_state = 5, .external_lex_state = 3}, [919] = {.lex_state = 5, .external_lex_state = 3}, [920] = {.lex_state = 2, .external_lex_state = 3}, [921] = {.lex_state = 5, .external_lex_state = 3}, [922] = {.lex_state = 2, .external_lex_state = 3}, [923] = {.lex_state = 5, .external_lex_state = 3}, [924] = {.lex_state = 5, .external_lex_state = 3}, [925] = {.lex_state = 5, .external_lex_state = 3}, [926] = {.lex_state = 5, .external_lex_state = 3}, [927] = {.lex_state = 5, .external_lex_state = 3}, [928] = {.lex_state = 5, .external_lex_state = 3}, [929] = {.lex_state = 5, .external_lex_state = 3}, [930] = {.lex_state = 2, .external_lex_state = 3}, [931] = {.lex_state = 5, .external_lex_state = 3}, [932] = {.lex_state = 5, .external_lex_state = 3}, [933] = {.lex_state = 5, .external_lex_state = 3}, [934] = {.lex_state = 5, .external_lex_state = 3}, [935] = {.lex_state = 5, .external_lex_state = 3}, [936] = {.lex_state = 2, .external_lex_state = 3}, [937] = {.lex_state = 5, .external_lex_state = 3}, [938] = {.lex_state = 5, .external_lex_state = 3}, [939] = {.lex_state = 5, .external_lex_state = 3}, [940] = {.lex_state = 5, .external_lex_state = 3}, [941] = {.lex_state = 5, .external_lex_state = 3}, [942] = {.lex_state = 2, .external_lex_state = 3}, [943] = {.lex_state = 2, .external_lex_state = 3}, [944] = {.lex_state = 2, .external_lex_state = 3}, [945] = {.lex_state = 2, .external_lex_state = 3}, [946] = {.lex_state = 2, .external_lex_state = 3}, [947] = {.lex_state = 2, .external_lex_state = 3}, [948] = {.lex_state = 2, .external_lex_state = 3}, [949] = {.lex_state = 2, .external_lex_state = 3}, [950] = {.lex_state = 2, .external_lex_state = 3}, [951] = {.lex_state = 2, .external_lex_state = 3}, [952] = {.lex_state = 2, .external_lex_state = 3}, [953] = {.lex_state = 2, .external_lex_state = 3}, [954] = {.lex_state = 2, .external_lex_state = 3}, [955] = {.lex_state = 2, .external_lex_state = 3}, [956] = {.lex_state = 2, .external_lex_state = 3}, [957] = {.lex_state = 2, .external_lex_state = 3}, [958] = {.lex_state = 2, .external_lex_state = 3}, [959] = {.lex_state = 2, .external_lex_state = 3}, [960] = {.lex_state = 2, .external_lex_state = 3}, [961] = {.lex_state = 2, .external_lex_state = 3}, [962] = {.lex_state = 2, .external_lex_state = 3}, [963] = {.lex_state = 2, .external_lex_state = 3}, [964] = {.lex_state = 9, .external_lex_state = 3}, [965] = {.lex_state = 9, .external_lex_state = 3}, [966] = {.lex_state = 9, .external_lex_state = 3}, [967] = {.lex_state = 13, .external_lex_state = 3}, [968] = {.lex_state = 13, .external_lex_state = 3}, [969] = {.lex_state = 13, .external_lex_state = 3}, [970] = {.lex_state = 13, .external_lex_state = 3}, [971] = {.lex_state = 2, .external_lex_state = 3}, [972] = {.lex_state = 13, .external_lex_state = 3}, [973] = {.lex_state = 2, .external_lex_state = 3}, [974] = {.lex_state = 13, .external_lex_state = 3}, [975] = {.lex_state = 2, .external_lex_state = 3}, [976] = {.lex_state = 9, .external_lex_state = 3}, [977] = {.lex_state = 13, .external_lex_state = 3}, [978] = {.lex_state = 13, .external_lex_state = 3}, [979] = {.lex_state = 13, .external_lex_state = 3}, [980] = {.lex_state = 2, .external_lex_state = 3}, [981] = {.lex_state = 2, .external_lex_state = 3}, [982] = {.lex_state = 2, .external_lex_state = 3}, [983] = {.lex_state = 2, .external_lex_state = 3}, [984] = {.lex_state = 2, .external_lex_state = 3}, [985] = {.lex_state = 7, .external_lex_state = 3}, [986] = {.lex_state = 13, .external_lex_state = 3}, [987] = {.lex_state = 2, .external_lex_state = 3}, [988] = {.lex_state = 2, .external_lex_state = 3}, [989] = {.lex_state = 2, .external_lex_state = 3}, [990] = {.lex_state = 2, .external_lex_state = 3}, [991] = {.lex_state = 2, .external_lex_state = 3}, [992] = {.lex_state = 2, .external_lex_state = 3}, [993] = {.lex_state = 2, .external_lex_state = 3}, [994] = {.lex_state = 7, .external_lex_state = 3}, [995] = {.lex_state = 2, .external_lex_state = 3}, [996] = {.lex_state = 2, .external_lex_state = 3}, [997] = {.lex_state = 2, .external_lex_state = 3}, [998] = {.lex_state = 2, .external_lex_state = 3}, [999] = {.lex_state = 2, .external_lex_state = 3}, [1000] = {.lex_state = 2, .external_lex_state = 3}, [1001] = {.lex_state = 9, .external_lex_state = 3}, [1002] = {.lex_state = 2, .external_lex_state = 3}, [1003] = {.lex_state = 2, .external_lex_state = 3}, [1004] = {.lex_state = 2, .external_lex_state = 3}, [1005] = {.lex_state = 2, .external_lex_state = 3}, [1006] = {.lex_state = 2, .external_lex_state = 3}, [1007] = {.lex_state = 2, .external_lex_state = 3}, [1008] = {.lex_state = 9, .external_lex_state = 3}, [1009] = {.lex_state = 2, .external_lex_state = 3}, [1010] = {.lex_state = 2, .external_lex_state = 3}, [1011] = {.lex_state = 2, .external_lex_state = 3}, [1012] = {.lex_state = 2, .external_lex_state = 3}, [1013] = {.lex_state = 2, .external_lex_state = 3}, [1014] = {.lex_state = 2, .external_lex_state = 3}, [1015] = {.lex_state = 2, .external_lex_state = 3}, [1016] = {.lex_state = 2, .external_lex_state = 3}, [1017] = {.lex_state = 2, .external_lex_state = 3}, [1018] = {.lex_state = 2, .external_lex_state = 3}, [1019] = {.lex_state = 2, .external_lex_state = 3}, [1020] = {.lex_state = 2, .external_lex_state = 3}, [1021] = {.lex_state = 2, .external_lex_state = 3}, [1022] = {.lex_state = 2, .external_lex_state = 3}, [1023] = {.lex_state = 2, .external_lex_state = 3}, [1024] = {.lex_state = 2, .external_lex_state = 3}, [1025] = {.lex_state = 2, .external_lex_state = 3}, [1026] = {.lex_state = 2, .external_lex_state = 3}, [1027] = {.lex_state = 2, .external_lex_state = 3}, [1028] = {.lex_state = 2, .external_lex_state = 3}, [1029] = {.lex_state = 2, .external_lex_state = 3}, [1030] = {.lex_state = 2, .external_lex_state = 3}, [1031] = {.lex_state = 2, .external_lex_state = 3}, [1032] = {.lex_state = 2, .external_lex_state = 3}, [1033] = {.lex_state = 2, .external_lex_state = 3}, [1034] = {.lex_state = 2, .external_lex_state = 3}, [1035] = {.lex_state = 2, .external_lex_state = 3}, [1036] = {.lex_state = 2, .external_lex_state = 3}, [1037] = {.lex_state = 2, .external_lex_state = 3}, [1038] = {.lex_state = 2, .external_lex_state = 3}, [1039] = {.lex_state = 2, .external_lex_state = 3}, [1040] = {.lex_state = 2, .external_lex_state = 3}, [1041] = {.lex_state = 2, .external_lex_state = 3}, [1042] = {.lex_state = 2, .external_lex_state = 3}, [1043] = {.lex_state = 2, .external_lex_state = 3}, [1044] = {.lex_state = 2, .external_lex_state = 3}, [1045] = {.lex_state = 2, .external_lex_state = 3}, [1046] = {.lex_state = 2, .external_lex_state = 3}, [1047] = {.lex_state = 2, .external_lex_state = 3}, [1048] = {.lex_state = 2, .external_lex_state = 3}, [1049] = {.lex_state = 2, .external_lex_state = 3}, [1050] = {.lex_state = 2, .external_lex_state = 3}, [1051] = {.lex_state = 2, .external_lex_state = 3}, [1052] = {.lex_state = 2, .external_lex_state = 3}, [1053] = {.lex_state = 2, .external_lex_state = 3}, [1054] = {.lex_state = 2, .external_lex_state = 3}, [1055] = {.lex_state = 2, .external_lex_state = 3}, [1056] = {.lex_state = 2, .external_lex_state = 3}, [1057] = {.lex_state = 2, .external_lex_state = 3}, [1058] = {.lex_state = 2, .external_lex_state = 3}, [1059] = {.lex_state = 2, .external_lex_state = 3}, [1060] = {.lex_state = 2, .external_lex_state = 3}, [1061] = {.lex_state = 2, .external_lex_state = 3}, [1062] = {.lex_state = 2, .external_lex_state = 3}, [1063] = {.lex_state = 2, .external_lex_state = 3}, [1064] = {.lex_state = 2, .external_lex_state = 3}, [1065] = {.lex_state = 2, .external_lex_state = 3}, [1066] = {.lex_state = 2, .external_lex_state = 3}, [1067] = {.lex_state = 2, .external_lex_state = 3}, [1068] = {.lex_state = 2, .external_lex_state = 3}, [1069] = {.lex_state = 2, .external_lex_state = 3}, [1070] = {.lex_state = 2, .external_lex_state = 3}, [1071] = {.lex_state = 2, .external_lex_state = 3}, [1072] = {.lex_state = 2, .external_lex_state = 3}, [1073] = {.lex_state = 2, .external_lex_state = 3}, [1074] = {.lex_state = 2, .external_lex_state = 3}, [1075] = {.lex_state = 2, .external_lex_state = 3}, [1076] = {.lex_state = 2, .external_lex_state = 3}, [1077] = {.lex_state = 2, .external_lex_state = 3}, [1078] = {.lex_state = 2, .external_lex_state = 3}, [1079] = {.lex_state = 2, .external_lex_state = 3}, [1080] = {.lex_state = 2, .external_lex_state = 3}, [1081] = {.lex_state = 2, .external_lex_state = 3}, [1082] = {.lex_state = 2, .external_lex_state = 3}, [1083] = {.lex_state = 2, .external_lex_state = 3}, [1084] = {.lex_state = 2, .external_lex_state = 3}, [1085] = {.lex_state = 2, .external_lex_state = 3}, [1086] = {.lex_state = 2, .external_lex_state = 3}, [1087] = {.lex_state = 2, .external_lex_state = 3}, [1088] = {.lex_state = 2, .external_lex_state = 3}, [1089] = {.lex_state = 2, .external_lex_state = 3}, [1090] = {.lex_state = 2, .external_lex_state = 3}, [1091] = {.lex_state = 9, .external_lex_state = 3}, [1092] = {.lex_state = 2, .external_lex_state = 3}, [1093] = {.lex_state = 2, .external_lex_state = 3}, [1094] = {.lex_state = 2, .external_lex_state = 3}, [1095] = {.lex_state = 2, .external_lex_state = 3}, [1096] = {.lex_state = 2, .external_lex_state = 3}, [1097] = {.lex_state = 2, .external_lex_state = 3}, [1098] = {.lex_state = 2, .external_lex_state = 3}, [1099] = {.lex_state = 2, .external_lex_state = 3}, [1100] = {.lex_state = 2, .external_lex_state = 3}, [1101] = {.lex_state = 2, .external_lex_state = 3}, [1102] = {.lex_state = 2, .external_lex_state = 3}, [1103] = {.lex_state = 2, .external_lex_state = 3}, [1104] = {.lex_state = 2, .external_lex_state = 3}, [1105] = {.lex_state = 2, .external_lex_state = 3}, [1106] = {.lex_state = 2, .external_lex_state = 3}, [1107] = {.lex_state = 2, .external_lex_state = 3}, [1108] = {.lex_state = 2, .external_lex_state = 3}, [1109] = {.lex_state = 2, .external_lex_state = 3}, [1110] = {.lex_state = 2, .external_lex_state = 3}, [1111] = {.lex_state = 2, .external_lex_state = 3}, [1112] = {.lex_state = 2, .external_lex_state = 3}, [1113] = {.lex_state = 2, .external_lex_state = 3}, [1114] = {.lex_state = 2, .external_lex_state = 3}, [1115] = {.lex_state = 2, .external_lex_state = 3}, [1116] = {.lex_state = 2, .external_lex_state = 3}, [1117] = {.lex_state = 2, .external_lex_state = 3}, [1118] = {.lex_state = 2, .external_lex_state = 3}, [1119] = {.lex_state = 2, .external_lex_state = 3}, [1120] = {.lex_state = 2, .external_lex_state = 3}, [1121] = {.lex_state = 2, .external_lex_state = 3}, [1122] = {.lex_state = 2, .external_lex_state = 3}, [1123] = {.lex_state = 2, .external_lex_state = 3}, [1124] = {.lex_state = 2, .external_lex_state = 3}, [1125] = {.lex_state = 2, .external_lex_state = 3}, [1126] = {.lex_state = 2, .external_lex_state = 3}, [1127] = {.lex_state = 2, .external_lex_state = 3}, [1128] = {.lex_state = 2, .external_lex_state = 3}, [1129] = {.lex_state = 2, .external_lex_state = 3}, [1130] = {.lex_state = 2, .external_lex_state = 3}, [1131] = {.lex_state = 2, .external_lex_state = 3}, [1132] = {.lex_state = 2, .external_lex_state = 3}, [1133] = {.lex_state = 2, .external_lex_state = 3}, [1134] = {.lex_state = 2, .external_lex_state = 3}, [1135] = {.lex_state = 2, .external_lex_state = 3}, [1136] = {.lex_state = 2, .external_lex_state = 3}, [1137] = {.lex_state = 2, .external_lex_state = 3}, [1138] = {.lex_state = 2, .external_lex_state = 3}, [1139] = {.lex_state = 2, .external_lex_state = 3}, [1140] = {.lex_state = 2, .external_lex_state = 3}, [1141] = {.lex_state = 2, .external_lex_state = 3}, [1142] = {.lex_state = 2, .external_lex_state = 3}, [1143] = {.lex_state = 2, .external_lex_state = 3}, [1144] = {.lex_state = 2, .external_lex_state = 3}, [1145] = {.lex_state = 2, .external_lex_state = 3}, [1146] = {.lex_state = 2, .external_lex_state = 3}, [1147] = {.lex_state = 2, .external_lex_state = 3}, [1148] = {.lex_state = 2, .external_lex_state = 3}, [1149] = {.lex_state = 2, .external_lex_state = 3}, [1150] = {.lex_state = 2, .external_lex_state = 3}, [1151] = {.lex_state = 2, .external_lex_state = 3}, [1152] = {.lex_state = 2, .external_lex_state = 3}, [1153] = {.lex_state = 2, .external_lex_state = 3}, [1154] = {.lex_state = 2, .external_lex_state = 3}, [1155] = {.lex_state = 2, .external_lex_state = 3}, [1156] = {.lex_state = 2, .external_lex_state = 3}, [1157] = {.lex_state = 2, .external_lex_state = 3}, [1158] = {.lex_state = 9, .external_lex_state = 3}, [1159] = {.lex_state = 2, .external_lex_state = 3}, [1160] = {.lex_state = 2, .external_lex_state = 3}, [1161] = {.lex_state = 2, .external_lex_state = 3}, [1162] = {.lex_state = 2, .external_lex_state = 3}, [1163] = {.lex_state = 2, .external_lex_state = 3}, [1164] = {.lex_state = 9, .external_lex_state = 3}, [1165] = {.lex_state = 2, .external_lex_state = 3}, [1166] = {.lex_state = 2, .external_lex_state = 3}, [1167] = {.lex_state = 2, .external_lex_state = 3}, [1168] = {.lex_state = 2, .external_lex_state = 3}, [1169] = {.lex_state = 2, .external_lex_state = 3}, [1170] = {.lex_state = 9, .external_lex_state = 3}, [1171] = {.lex_state = 2, .external_lex_state = 3}, [1172] = {.lex_state = 9, .external_lex_state = 3}, [1173] = {.lex_state = 2, .external_lex_state = 3}, [1174] = {.lex_state = 2, .external_lex_state = 3}, [1175] = {.lex_state = 9, .external_lex_state = 3}, [1176] = {.lex_state = 2, .external_lex_state = 3}, [1177] = {.lex_state = 9, .external_lex_state = 3}, [1178] = {.lex_state = 9, .external_lex_state = 3}, [1179] = {.lex_state = 9, .external_lex_state = 3}, [1180] = {.lex_state = 9, .external_lex_state = 3}, [1181] = {.lex_state = 9, .external_lex_state = 3}, [1182] = {.lex_state = 9, .external_lex_state = 3}, [1183] = {.lex_state = 9, .external_lex_state = 3}, [1184] = {.lex_state = 9, .external_lex_state = 3}, [1185] = {.lex_state = 9, .external_lex_state = 3}, [1186] = {.lex_state = 9, .external_lex_state = 3}, [1187] = {.lex_state = 9, .external_lex_state = 3}, [1188] = {.lex_state = 9, .external_lex_state = 3}, [1189] = {.lex_state = 9, .external_lex_state = 3}, [1190] = {.lex_state = 9, .external_lex_state = 3}, [1191] = {.lex_state = 9, .external_lex_state = 3}, [1192] = {.lex_state = 9, .external_lex_state = 3}, [1193] = {.lex_state = 9, .external_lex_state = 3}, [1194] = {.lex_state = 9, .external_lex_state = 3}, [1195] = {.lex_state = 9, .external_lex_state = 3}, [1196] = {.lex_state = 13, .external_lex_state = 3}, [1197] = {.lex_state = 9, .external_lex_state = 3}, [1198] = {.lex_state = 13, .external_lex_state = 3}, [1199] = {.lex_state = 9, .external_lex_state = 3}, [1200] = {.lex_state = 9, .external_lex_state = 3}, [1201] = {.lex_state = 13, .external_lex_state = 3}, [1202] = {.lex_state = 2, .external_lex_state = 3}, [1203] = {.lex_state = 2, .external_lex_state = 3}, [1204] = {.lex_state = 2, .external_lex_state = 3}, [1205] = {.lex_state = 2, .external_lex_state = 3}, [1206] = {.lex_state = 2, .external_lex_state = 3}, [1207] = {.lex_state = 2, .external_lex_state = 3}, [1208] = {.lex_state = 6, .external_lex_state = 3}, [1209] = {.lex_state = 6, .external_lex_state = 3}, [1210] = {.lex_state = 2, .external_lex_state = 3}, [1211] = {.lex_state = 6, .external_lex_state = 3}, [1212] = {.lex_state = 6, .external_lex_state = 3}, [1213] = {.lex_state = 2, .external_lex_state = 3}, [1214] = {.lex_state = 2, .external_lex_state = 3}, [1215] = {.lex_state = 13, .external_lex_state = 3}, [1216] = {.lex_state = 9, .external_lex_state = 3}, [1217] = {.lex_state = 9, .external_lex_state = 3}, [1218] = {.lex_state = 9, .external_lex_state = 3}, [1219] = {.lex_state = 9, .external_lex_state = 3}, [1220] = {.lex_state = 9, .external_lex_state = 3}, [1221] = {.lex_state = 9, .external_lex_state = 3}, [1222] = {.lex_state = 9, .external_lex_state = 3}, [1223] = {.lex_state = 9, .external_lex_state = 3}, [1224] = {.lex_state = 9, .external_lex_state = 3}, [1225] = {.lex_state = 9, .external_lex_state = 3}, [1226] = {.lex_state = 9, .external_lex_state = 3}, [1227] = {.lex_state = 9, .external_lex_state = 3}, [1228] = {.lex_state = 9, .external_lex_state = 3}, [1229] = {.lex_state = 9, .external_lex_state = 3}, [1230] = {.lex_state = 9, .external_lex_state = 3}, [1231] = {.lex_state = 9, .external_lex_state = 3}, [1232] = {.lex_state = 9, .external_lex_state = 3}, [1233] = {.lex_state = 9, .external_lex_state = 3}, [1234] = {.lex_state = 9, .external_lex_state = 3}, [1235] = {.lex_state = 9, .external_lex_state = 3}, [1236] = {.lex_state = 9, .external_lex_state = 3}, [1237] = {.lex_state = 9, .external_lex_state = 3}, [1238] = {.lex_state = 9, .external_lex_state = 3}, [1239] = {.lex_state = 9, .external_lex_state = 3}, [1240] = {.lex_state = 9, .external_lex_state = 3}, [1241] = {.lex_state = 9, .external_lex_state = 3}, [1242] = {.lex_state = 9, .external_lex_state = 3}, [1243] = {.lex_state = 9, .external_lex_state = 3}, [1244] = {.lex_state = 9, .external_lex_state = 3}, [1245] = {.lex_state = 9, .external_lex_state = 3}, [1246] = {.lex_state = 9, .external_lex_state = 3}, [1247] = {.lex_state = 9, .external_lex_state = 3}, [1248] = {.lex_state = 13, .external_lex_state = 3}, [1249] = {.lex_state = 13, .external_lex_state = 3}, [1250] = {.lex_state = 13, .external_lex_state = 3}, [1251] = {.lex_state = 13, .external_lex_state = 3}, [1252] = {.lex_state = 13, .external_lex_state = 3}, [1253] = {.lex_state = 13, .external_lex_state = 3}, [1254] = {.lex_state = 13, .external_lex_state = 3}, [1255] = {.lex_state = 13, .external_lex_state = 3}, [1256] = {.lex_state = 13, .external_lex_state = 3}, [1257] = {.lex_state = 2, .external_lex_state = 3}, [1258] = {.lex_state = 13, .external_lex_state = 3}, [1259] = {.lex_state = 13, .external_lex_state = 3}, [1260] = {.lex_state = 13, .external_lex_state = 3}, [1261] = {.lex_state = 13, .external_lex_state = 3}, [1262] = {.lex_state = 13, .external_lex_state = 3}, [1263] = {.lex_state = 2, .external_lex_state = 3}, [1264] = {.lex_state = 13, .external_lex_state = 3}, [1265] = {.lex_state = 2, .external_lex_state = 3}, [1266] = {.lex_state = 13, .external_lex_state = 3}, [1267] = {.lex_state = 2, .external_lex_state = 3}, [1268] = {.lex_state = 7, .external_lex_state = 3}, [1269] = {.lex_state = 7, .external_lex_state = 3}, [1270] = {.lex_state = 2, .external_lex_state = 3}, [1271] = {.lex_state = 2, .external_lex_state = 3}, [1272] = {.lex_state = 2, .external_lex_state = 3}, [1273] = {.lex_state = 10, .external_lex_state = 3}, [1274] = {.lex_state = 7, .external_lex_state = 3}, [1275] = {.lex_state = 9, .external_lex_state = 3}, [1276] = {.lex_state = 0, .external_lex_state = 3}, [1277] = {.lex_state = 13, .external_lex_state = 3}, [1278] = {.lex_state = 9, .external_lex_state = 3}, [1279] = {.lex_state = 7, .external_lex_state = 3}, [1280] = {.lex_state = 2, .external_lex_state = 3}, [1281] = {.lex_state = 2, .external_lex_state = 3}, [1282] = {.lex_state = 10, .external_lex_state = 3}, [1283] = {.lex_state = 2, .external_lex_state = 3}, [1284] = {.lex_state = 2, .external_lex_state = 3}, [1285] = {.lex_state = 2, .external_lex_state = 3}, [1286] = {.lex_state = 7, .external_lex_state = 3}, [1287] = {.lex_state = 13, .external_lex_state = 3}, [1288] = {.lex_state = 7, .external_lex_state = 3}, [1289] = {.lex_state = 7, .external_lex_state = 3}, [1290] = {.lex_state = 10, .external_lex_state = 3}, [1291] = {.lex_state = 10, .external_lex_state = 3}, [1292] = {.lex_state = 2, .external_lex_state = 3}, [1293] = {.lex_state = 2, .external_lex_state = 3}, [1294] = {.lex_state = 2, .external_lex_state = 3}, [1295] = {.lex_state = 2, .external_lex_state = 3}, [1296] = {.lex_state = 10, .external_lex_state = 3}, [1297] = {.lex_state = 2, .external_lex_state = 3}, [1298] = {.lex_state = 7, .external_lex_state = 3}, [1299] = {.lex_state = 10, .external_lex_state = 3}, [1300] = {.lex_state = 10, .external_lex_state = 3}, [1301] = {.lex_state = 2, .external_lex_state = 3}, [1302] = {.lex_state = 2, .external_lex_state = 3}, [1303] = {.lex_state = 2, .external_lex_state = 3}, [1304] = {.lex_state = 10, .external_lex_state = 3}, [1305] = {.lex_state = 2, .external_lex_state = 3}, [1306] = {.lex_state = 2, .external_lex_state = 3}, [1307] = {.lex_state = 2, .external_lex_state = 3}, [1308] = {.lex_state = 2, .external_lex_state = 3}, [1309] = {.lex_state = 2, .external_lex_state = 3}, [1310] = {.lex_state = 2, .external_lex_state = 3}, [1311] = {.lex_state = 2, .external_lex_state = 3}, [1312] = {.lex_state = 2, .external_lex_state = 3}, [1313] = {.lex_state = 2, .external_lex_state = 3}, [1314] = {.lex_state = 10, .external_lex_state = 3}, [1315] = {.lex_state = 10, .external_lex_state = 3}, [1316] = {.lex_state = 0, .external_lex_state = 3}, [1317] = {.lex_state = 0, .external_lex_state = 3}, [1318] = {.lex_state = 0, .external_lex_state = 3}, [1319] = {.lex_state = 10, .external_lex_state = 3}, [1320] = {.lex_state = 0, .external_lex_state = 3}, [1321] = {.lex_state = 2, .external_lex_state = 3}, [1322] = {.lex_state = 2, .external_lex_state = 3}, [1323] = {.lex_state = 10, .external_lex_state = 3}, [1324] = {.lex_state = 2, .external_lex_state = 3}, [1325] = {.lex_state = 2, .external_lex_state = 3}, [1326] = {.lex_state = 10, .external_lex_state = 3}, [1327] = {.lex_state = 10, .external_lex_state = 3}, [1328] = {.lex_state = 2, .external_lex_state = 3}, [1329] = {.lex_state = 10, .external_lex_state = 3}, [1330] = {.lex_state = 2, .external_lex_state = 3}, [1331] = {.lex_state = 2, .external_lex_state = 3}, [1332] = {.lex_state = 2, .external_lex_state = 3}, [1333] = {.lex_state = 2, .external_lex_state = 3}, [1334] = {.lex_state = 2, .external_lex_state = 3}, [1335] = {.lex_state = 2, .external_lex_state = 3}, [1336] = {.lex_state = 2, .external_lex_state = 3}, [1337] = {.lex_state = 2, .external_lex_state = 3}, [1338] = {.lex_state = 2, .external_lex_state = 3}, [1339] = {.lex_state = 2, .external_lex_state = 3}, [1340] = {.lex_state = 2, .external_lex_state = 3}, [1341] = {.lex_state = 2, .external_lex_state = 3}, [1342] = {.lex_state = 2, .external_lex_state = 3}, [1343] = {.lex_state = 2, .external_lex_state = 3}, [1344] = {.lex_state = 2, .external_lex_state = 3}, [1345] = {.lex_state = 2, .external_lex_state = 3}, [1346] = {.lex_state = 2, .external_lex_state = 3}, [1347] = {.lex_state = 2, .external_lex_state = 3}, [1348] = {.lex_state = 2, .external_lex_state = 3}, [1349] = {.lex_state = 2, .external_lex_state = 3}, [1350] = {.lex_state = 2, .external_lex_state = 3}, [1351] = {.lex_state = 2, .external_lex_state = 3}, [1352] = {.lex_state = 2, .external_lex_state = 3}, [1353] = {.lex_state = 2, .external_lex_state = 3}, [1354] = {.lex_state = 2, .external_lex_state = 3}, [1355] = {.lex_state = 2, .external_lex_state = 3}, [1356] = {.lex_state = 2, .external_lex_state = 3}, [1357] = {.lex_state = 2, .external_lex_state = 3}, [1358] = {.lex_state = 2, .external_lex_state = 3}, [1359] = {.lex_state = 2, .external_lex_state = 3}, [1360] = {.lex_state = 2, .external_lex_state = 3}, [1361] = {.lex_state = 6, .external_lex_state = 3}, [1362] = {.lex_state = 2, .external_lex_state = 3}, [1363] = {.lex_state = 2, .external_lex_state = 3}, [1364] = {.lex_state = 2, .external_lex_state = 3}, [1365] = {.lex_state = 2, .external_lex_state = 3}, [1366] = {.lex_state = 2, .external_lex_state = 3}, [1367] = {.lex_state = 0, .external_lex_state = 3}, [1368] = {.lex_state = 2, .external_lex_state = 3}, [1369] = {.lex_state = 0, .external_lex_state = 3}, [1370] = {.lex_state = 2, .external_lex_state = 3}, [1371] = {.lex_state = 0, .external_lex_state = 3}, [1372] = {.lex_state = 9, .external_lex_state = 3}, [1373] = {.lex_state = 9, .external_lex_state = 3}, [1374] = {.lex_state = 2, .external_lex_state = 3}, [1375] = {.lex_state = 9, .external_lex_state = 3}, [1376] = {.lex_state = 2, .external_lex_state = 3}, [1377] = {.lex_state = 2, .external_lex_state = 3}, [1378] = {.lex_state = 2, .external_lex_state = 3}, [1379] = {.lex_state = 7, .external_lex_state = 3}, [1380] = {.lex_state = 55, .external_lex_state = 3}, [1381] = {.lex_state = 2, .external_lex_state = 3}, [1382] = {.lex_state = 2, .external_lex_state = 3}, [1383] = {.lex_state = 2, .external_lex_state = 3}, [1384] = {.lex_state = 2, .external_lex_state = 3}, [1385] = {.lex_state = 2, .external_lex_state = 3}, [1386] = {.lex_state = 2, .external_lex_state = 3}, [1387] = {.lex_state = 6, .external_lex_state = 3}, [1388] = {.lex_state = 2, .external_lex_state = 3}, [1389] = {.lex_state = 9, .external_lex_state = 3}, [1390] = {.lex_state = 9, .external_lex_state = 3}, [1391] = {.lex_state = 2, .external_lex_state = 3}, [1392] = {.lex_state = 2, .external_lex_state = 3}, [1393] = {.lex_state = 6, .external_lex_state = 3}, [1394] = {.lex_state = 2, .external_lex_state = 3}, [1395] = {.lex_state = 2, .external_lex_state = 3}, [1396] = {.lex_state = 2, .external_lex_state = 3}, [1397] = {.lex_state = 6, .external_lex_state = 3}, [1398] = {.lex_state = 2, .external_lex_state = 3}, [1399] = {.lex_state = 0, .external_lex_state = 3}, [1400] = {.lex_state = 2, .external_lex_state = 3}, [1401] = {.lex_state = 7, .external_lex_state = 3}, [1402] = {.lex_state = 7, .external_lex_state = 3}, [1403] = {.lex_state = 2, .external_lex_state = 3}, [1404] = {.lex_state = 2, .external_lex_state = 3}, [1405] = {.lex_state = 2, .external_lex_state = 3}, [1406] = {.lex_state = 2, .external_lex_state = 3}, [1407] = {.lex_state = 2, .external_lex_state = 3}, [1408] = {.lex_state = 2, .external_lex_state = 3}, [1409] = {.lex_state = 2, .external_lex_state = 3}, [1410] = {.lex_state = 7, .external_lex_state = 3}, [1411] = {.lex_state = 2, .external_lex_state = 3}, [1412] = {.lex_state = 2, .external_lex_state = 3}, [1413] = {.lex_state = 2, .external_lex_state = 3}, [1414] = {.lex_state = 2, .external_lex_state = 3}, [1415] = {.lex_state = 2, .external_lex_state = 3}, [1416] = {.lex_state = 2, .external_lex_state = 3}, [1417] = {.lex_state = 2, .external_lex_state = 3}, [1418] = {.lex_state = 2, .external_lex_state = 3}, [1419] = {.lex_state = 2, .external_lex_state = 3}, [1420] = {.lex_state = 2, .external_lex_state = 3}, [1421] = {.lex_state = 9, .external_lex_state = 3}, [1422] = {.lex_state = 0, .external_lex_state = 3}, [1423] = {.lex_state = 0, .external_lex_state = 3}, [1424] = {.lex_state = 2, .external_lex_state = 3}, [1425] = {.lex_state = 2, .external_lex_state = 3}, [1426] = {.lex_state = 55, .external_lex_state = 3}, [1427] = {.lex_state = 0, .external_lex_state = 3}, [1428] = {.lex_state = 2, .external_lex_state = 3}, [1429] = {.lex_state = 2, .external_lex_state = 3}, [1430] = {.lex_state = 2, .external_lex_state = 3}, [1431] = {.lex_state = 2, .external_lex_state = 3}, [1432] = {.lex_state = 0, .external_lex_state = 3}, [1433] = {.lex_state = 0, .external_lex_state = 3}, [1434] = {.lex_state = 2, .external_lex_state = 3}, [1435] = {.lex_state = 2, .external_lex_state = 3}, [1436] = {.lex_state = 2, .external_lex_state = 3}, [1437] = {.lex_state = 2, .external_lex_state = 3}, [1438] = {.lex_state = 2, .external_lex_state = 3}, [1439] = {.lex_state = 2, .external_lex_state = 3}, [1440] = {.lex_state = 55, .external_lex_state = 3}, [1441] = {.lex_state = 9, .external_lex_state = 3}, [1442] = {.lex_state = 2, .external_lex_state = 3}, [1443] = {.lex_state = 2, .external_lex_state = 3}, [1444] = {.lex_state = 9, .external_lex_state = 3}, [1445] = {.lex_state = 0, .external_lex_state = 3}, [1446] = {.lex_state = 0, .external_lex_state = 3}, [1447] = {.lex_state = 9, .external_lex_state = 3}, [1448] = {.lex_state = 9, .external_lex_state = 3}, [1449] = {.lex_state = 0, .external_lex_state = 3}, [1450] = {.lex_state = 55, .external_lex_state = 3}, [1451] = {.lex_state = 2, .external_lex_state = 3}, [1452] = {.lex_state = 9, .external_lex_state = 3}, [1453] = {.lex_state = 55, .external_lex_state = 3}, [1454] = {.lex_state = 9, .external_lex_state = 3}, [1455] = {.lex_state = 0, .external_lex_state = 3}, [1456] = {.lex_state = 0, .external_lex_state = 3}, [1457] = {.lex_state = 9, .external_lex_state = 3}, [1458] = {.lex_state = 2, .external_lex_state = 3}, [1459] = {.lex_state = 9, .external_lex_state = 3}, [1460] = {.lex_state = 9, .external_lex_state = 3}, [1461] = {.lex_state = 2, .external_lex_state = 3}, [1462] = {.lex_state = 2, .external_lex_state = 3}, [1463] = {.lex_state = 9, .external_lex_state = 3}, [1464] = {.lex_state = 2, .external_lex_state = 3}, [1465] = {.lex_state = 2, .external_lex_state = 3}, [1466] = {.lex_state = 9, .external_lex_state = 3}, [1467] = {.lex_state = 9, .external_lex_state = 3}, [1468] = {.lex_state = 2, .external_lex_state = 3}, [1469] = {.lex_state = 2, .external_lex_state = 3}, [1470] = {.lex_state = 0, .external_lex_state = 3}, [1471] = {.lex_state = 2, .external_lex_state = 3}, [1472] = {.lex_state = 0, .external_lex_state = 3}, [1473] = {.lex_state = 55, .external_lex_state = 3}, [1474] = {.lex_state = 55, .external_lex_state = 3}, [1475] = {.lex_state = 55, .external_lex_state = 3}, [1476] = {.lex_state = 2, .external_lex_state = 3}, [1477] = {.lex_state = 2, .external_lex_state = 3}, [1478] = {.lex_state = 9, .external_lex_state = 3}, [1479] = {.lex_state = 2, .external_lex_state = 3}, [1480] = {.lex_state = 2, .external_lex_state = 3}, [1481] = {.lex_state = 55, .external_lex_state = 3}, [1482] = {.lex_state = 2, .external_lex_state = 3}, [1483] = {.lex_state = 2, .external_lex_state = 3}, [1484] = {.lex_state = 0, .external_lex_state = 3}, [1485] = {.lex_state = 0, .external_lex_state = 3}, [1486] = {.lex_state = 2, .external_lex_state = 3}, [1487] = {.lex_state = 0, .external_lex_state = 3}, [1488] = {.lex_state = 9, .external_lex_state = 3}, [1489] = {.lex_state = 0, .external_lex_state = 3}, [1490] = {.lex_state = 0, .external_lex_state = 3}, [1491] = {.lex_state = 2, .external_lex_state = 4}, [1492] = {.lex_state = 0, .external_lex_state = 3}, [1493] = {.lex_state = 2, .external_lex_state = 4}, [1494] = {.lex_state = 2, .external_lex_state = 3}, [1495] = {.lex_state = 2, .external_lex_state = 3}, [1496] = {.lex_state = 2, .external_lex_state = 3}, [1497] = {.lex_state = 2, .external_lex_state = 3}, [1498] = {.lex_state = 2, .external_lex_state = 3}, [1499] = {.lex_state = 2, .external_lex_state = 3}, [1500] = {.lex_state = 2, .external_lex_state = 3}, [1501] = {.lex_state = 2, .external_lex_state = 3}, [1502] = {.lex_state = 2, .external_lex_state = 4}, [1503] = {.lex_state = 55, .external_lex_state = 3}, [1504] = {.lex_state = 2, .external_lex_state = 4}, [1505] = {.lex_state = 6, .external_lex_state = 3}, [1506] = {.lex_state = 0, .external_lex_state = 3}, [1507] = {.lex_state = 9, .external_lex_state = 3}, [1508] = {.lex_state = 55, .external_lex_state = 3}, [1509] = {.lex_state = 0, .external_lex_state = 3}, [1510] = {.lex_state = 55, .external_lex_state = 3}, [1511] = {.lex_state = 0, .external_lex_state = 3}, [1512] = {.lex_state = 2, .external_lex_state = 3}, [1513] = {.lex_state = 2, .external_lex_state = 3}, [1514] = {.lex_state = 2, .external_lex_state = 3}, [1515] = {.lex_state = 0, .external_lex_state = 3}, [1516] = {.lex_state = 0, .external_lex_state = 3}, [1517] = {.lex_state = 55, .external_lex_state = 3}, [1518] = {.lex_state = 9, .external_lex_state = 3}, [1519] = {.lex_state = 55, .external_lex_state = 3}, [1520] = {.lex_state = 55, .external_lex_state = 3}, [1521] = {.lex_state = 2, .external_lex_state = 3}, [1522] = {.lex_state = 2, .external_lex_state = 3}, [1523] = {.lex_state = 2, .external_lex_state = 4}, [1524] = {.lex_state = 55, .external_lex_state = 3}, [1525] = {.lex_state = 6, .external_lex_state = 3}, [1526] = {.lex_state = 2, .external_lex_state = 3}, [1527] = {.lex_state = 2, .external_lex_state = 3}, [1528] = {.lex_state = 0, .external_lex_state = 3}, [1529] = {.lex_state = 55, .external_lex_state = 3}, [1530] = {.lex_state = 55, .external_lex_state = 3}, [1531] = {.lex_state = 2, .external_lex_state = 3}, [1532] = {.lex_state = 2, .external_lex_state = 4}, [1533] = {.lex_state = 55, .external_lex_state = 3}, [1534] = {.lex_state = 0, .external_lex_state = 3}, [1535] = {.lex_state = 2, .external_lex_state = 3}, [1536] = {.lex_state = 9, .external_lex_state = 3}, [1537] = {.lex_state = 55, .external_lex_state = 3}, [1538] = {.lex_state = 55, .external_lex_state = 3}, [1539] = {.lex_state = 2, .external_lex_state = 3}, [1540] = {.lex_state = 2, .external_lex_state = 4}, [1541] = {.lex_state = 2, .external_lex_state = 3}, [1542] = {.lex_state = 0, .external_lex_state = 3}, [1543] = {.lex_state = 0, .external_lex_state = 3}, [1544] = {.lex_state = 0, .external_lex_state = 3}, [1545] = {.lex_state = 2, .external_lex_state = 3}, [1546] = {.lex_state = 2, .external_lex_state = 3}, [1547] = {.lex_state = 2, .external_lex_state = 3}, [1548] = {.lex_state = 2, .external_lex_state = 3}, [1549] = {.lex_state = 0, .external_lex_state = 3}, [1550] = {.lex_state = 55, .external_lex_state = 3}, [1551] = {.lex_state = 9, .external_lex_state = 3}, [1552] = {.lex_state = 2, .external_lex_state = 3}, [1553] = {.lex_state = 2, .external_lex_state = 3}, [1554] = {.lex_state = 0, .external_lex_state = 3}, [1555] = {.lex_state = 2, .external_lex_state = 3}, [1556] = {.lex_state = 9, .external_lex_state = 3}, [1557] = {.lex_state = 0, .external_lex_state = 3}, [1558] = {.lex_state = 0, .external_lex_state = 3}, [1559] = {.lex_state = 0, .external_lex_state = 3}, [1560] = {.lex_state = 0, .external_lex_state = 3}, [1561] = {.lex_state = 0, .external_lex_state = 3}, [1562] = {.lex_state = 0, .external_lex_state = 3}, [1563] = {.lex_state = 55, .external_lex_state = 3}, [1564] = {.lex_state = 0, .external_lex_state = 3}, [1565] = {.lex_state = 55, .external_lex_state = 3}, [1566] = {.lex_state = 0, .external_lex_state = 3}, [1567] = {.lex_state = 0, .external_lex_state = 3}, [1568] = {.lex_state = 2, .external_lex_state = 3}, [1569] = {.lex_state = 0, .external_lex_state = 3}, [1570] = {.lex_state = 55, .external_lex_state = 3}, [1571] = {.lex_state = 55, .external_lex_state = 3}, [1572] = {.lex_state = 0, .external_lex_state = 3}, [1573] = {.lex_state = 0, .external_lex_state = 3}, [1574] = {.lex_state = 0, .external_lex_state = 3}, [1575] = {.lex_state = 0, .external_lex_state = 3}, [1576] = {.lex_state = 2, .external_lex_state = 3}, [1577] = {.lex_state = 0, .external_lex_state = 3}, [1578] = {.lex_state = 0, .external_lex_state = 3}, [1579] = {.lex_state = 55, .external_lex_state = 3}, [1580] = {.lex_state = 0, .external_lex_state = 3}, [1581] = {.lex_state = 2, .external_lex_state = 3}, [1582] = {.lex_state = 0, .external_lex_state = 3}, [1583] = {.lex_state = 55, .external_lex_state = 3}, [1584] = {.lex_state = 0, .external_lex_state = 3}, [1585] = {.lex_state = 0, .external_lex_state = 3}, [1586] = {.lex_state = 0, .external_lex_state = 3}, [1587] = {.lex_state = 55, .external_lex_state = 3}, [1588] = {.lex_state = 6, .external_lex_state = 3}, [1589] = {.lex_state = 0, .external_lex_state = 3}, [1590] = {.lex_state = 0, .external_lex_state = 3}, [1591] = {.lex_state = 55, .external_lex_state = 3}, [1592] = {.lex_state = 0, .external_lex_state = 3}, [1593] = {.lex_state = 7, .external_lex_state = 3}, [1594] = {.lex_state = 0, .external_lex_state = 3}, [1595] = {.lex_state = 0, .external_lex_state = 3}, [1596] = {.lex_state = 0, .external_lex_state = 3}, [1597] = {.lex_state = 6, .external_lex_state = 3}, [1598] = {.lex_state = 0, .external_lex_state = 3}, [1599] = {.lex_state = 0, .external_lex_state = 3}, [1600] = {.lex_state = 0, .external_lex_state = 3}, [1601] = {.lex_state = 2, .external_lex_state = 3}, [1602] = {.lex_state = 0, .external_lex_state = 3}, [1603] = {.lex_state = 55, .external_lex_state = 3}, [1604] = {.lex_state = 0, .external_lex_state = 3}, [1605] = {.lex_state = 0, .external_lex_state = 3}, [1606] = {.lex_state = 55, .external_lex_state = 3}, [1607] = {.lex_state = 0, .external_lex_state = 3}, [1608] = {.lex_state = 0, .external_lex_state = 3}, [1609] = {.lex_state = 0, .external_lex_state = 3}, [1610] = {.lex_state = 2, .external_lex_state = 3}, [1611] = {.lex_state = 6, .external_lex_state = 3}, [1612] = {.lex_state = 0, .external_lex_state = 3}, [1613] = {.lex_state = 0, .external_lex_state = 3}, [1614] = {.lex_state = 7, .external_lex_state = 3}, [1615] = {.lex_state = 0, .external_lex_state = 3}, [1616] = {.lex_state = 6, .external_lex_state = 3}, [1617] = {.lex_state = 0, .external_lex_state = 3}, [1618] = {.lex_state = 0, .external_lex_state = 3}, [1619] = {.lex_state = 0, .external_lex_state = 3}, [1620] = {.lex_state = 7, .external_lex_state = 3}, [1621] = {.lex_state = 0, .external_lex_state = 3}, [1622] = {.lex_state = 6, .external_lex_state = 3}, [1623] = {.lex_state = 2, .external_lex_state = 3}, [1624] = {.lex_state = 0, .external_lex_state = 3}, [1625] = {.lex_state = 55, .external_lex_state = 3}, [1626] = {.lex_state = 0, .external_lex_state = 3}, [1627] = {.lex_state = 0, .external_lex_state = 3}, [1628] = {.lex_state = 7, .external_lex_state = 3}, [1629] = {.lex_state = 7, .external_lex_state = 3}, [1630] = {.lex_state = 0, .external_lex_state = 3}, [1631] = {.lex_state = 6, .external_lex_state = 3}, [1632] = {.lex_state = 55, .external_lex_state = 3}, [1633] = {.lex_state = 0, .external_lex_state = 3}, [1634] = {.lex_state = 0, .external_lex_state = 3}, [1635] = {.lex_state = 0, .external_lex_state = 3}, [1636] = {.lex_state = 2, .external_lex_state = 3}, [1637] = {.lex_state = 0, .external_lex_state = 3}, [1638] = {.lex_state = 0, .external_lex_state = 3}, [1639] = {.lex_state = 55, .external_lex_state = 3}, [1640] = {.lex_state = 7, .external_lex_state = 3}, [1641] = {.lex_state = 0, .external_lex_state = 3}, [1642] = {.lex_state = 0, .external_lex_state = 3}, [1643] = {.lex_state = 0, .external_lex_state = 3}, [1644] = {.lex_state = 7, .external_lex_state = 3}, [1645] = {.lex_state = 0, .external_lex_state = 3}, [1646] = {.lex_state = 6, .external_lex_state = 3}, [1647] = {.lex_state = 0, .external_lex_state = 3}, [1648] = {.lex_state = 0, .external_lex_state = 3}, [1649] = {.lex_state = 0, .external_lex_state = 3}, [1650] = {.lex_state = 6, .external_lex_state = 3}, [1651] = {.lex_state = 2, .external_lex_state = 3}, [1652] = {.lex_state = 0, .external_lex_state = 3}, [1653] = {.lex_state = 0, .external_lex_state = 3}, [1654] = {.lex_state = 0, .external_lex_state = 3}, [1655] = {.lex_state = 0, .external_lex_state = 3}, [1656] = {.lex_state = 7, .external_lex_state = 3}, [1657] = {.lex_state = 7, .external_lex_state = 3}, [1658] = {.lex_state = 0, .external_lex_state = 3}, [1659] = {.lex_state = 0, .external_lex_state = 3}, [1660] = {.lex_state = 6, .external_lex_state = 3}, [1661] = {.lex_state = 0, .external_lex_state = 3}, [1662] = {.lex_state = 0, .external_lex_state = 3}, [1663] = {.lex_state = 7, .external_lex_state = 3}, [1664] = {.lex_state = 7, .external_lex_state = 3}, [1665] = {.lex_state = 0, .external_lex_state = 3}, [1666] = {.lex_state = 7, .external_lex_state = 3}, [1667] = {.lex_state = 7, .external_lex_state = 3}, [1668] = {.lex_state = 0, .external_lex_state = 3}, [1669] = {.lex_state = 6, .external_lex_state = 3}, [1670] = {.lex_state = 7, .external_lex_state = 3}, [1671] = {.lex_state = 7, .external_lex_state = 3}, [1672] = {.lex_state = 0, .external_lex_state = 3}, [1673] = {.lex_state = 0, .external_lex_state = 3}, [1674] = {.lex_state = 55, .external_lex_state = 3}, [1675] = {.lex_state = 0, .external_lex_state = 3}, [1676] = {.lex_state = 0, .external_lex_state = 3}, [1677] = {.lex_state = 7, .external_lex_state = 3}, [1678] = {.lex_state = 7, .external_lex_state = 3}, [1679] = {.lex_state = 0, .external_lex_state = 3}, [1680] = {.lex_state = 0, .external_lex_state = 3}, [1681] = {.lex_state = 0, .external_lex_state = 3}, [1682] = {.lex_state = 0, .external_lex_state = 3}, [1683] = {.lex_state = 0, .external_lex_state = 3}, [1684] = {.lex_state = 0, .external_lex_state = 3}, [1685] = {.lex_state = 0, .external_lex_state = 3}, [1686] = {.lex_state = 7, .external_lex_state = 3}, [1687] = {.lex_state = 7, .external_lex_state = 3}, [1688] = {.lex_state = 0, .external_lex_state = 3}, [1689] = {.lex_state = 0, .external_lex_state = 3}, [1690] = {.lex_state = 0, .external_lex_state = 3}, [1691] = {.lex_state = 2, .external_lex_state = 3}, [1692] = {.lex_state = 7, .external_lex_state = 3}, [1693] = {.lex_state = 7, .external_lex_state = 3}, [1694] = {.lex_state = 7, .external_lex_state = 3}, [1695] = {.lex_state = 0, .external_lex_state = 3}, [1696] = {.lex_state = 0, .external_lex_state = 3}, [1697] = {.lex_state = 7, .external_lex_state = 3}, [1698] = {.lex_state = 0, .external_lex_state = 3}, [1699] = {.lex_state = 0, .external_lex_state = 3}, [1700] = {.lex_state = 0, .external_lex_state = 3}, [1701] = {.lex_state = 0, .external_lex_state = 3}, [1702] = {.lex_state = 7, .external_lex_state = 3}, [1703] = {.lex_state = 0, .external_lex_state = 3}, [1704] = {.lex_state = 0, .external_lex_state = 3}, [1705] = {.lex_state = 0, .external_lex_state = 3}, [1706] = {.lex_state = 0, .external_lex_state = 3}, [1707] = {.lex_state = 0, .external_lex_state = 3}, [1708] = {.lex_state = 55, .external_lex_state = 3}, [1709] = {.lex_state = 0, .external_lex_state = 3}, [1710] = {.lex_state = 0, .external_lex_state = 3}, [1711] = {.lex_state = 7, .external_lex_state = 3}, [1712] = {.lex_state = 0, .external_lex_state = 3}, [1713] = {.lex_state = 0, .external_lex_state = 3}, [1714] = {.lex_state = 2, .external_lex_state = 3}, [1715] = {.lex_state = 7, .external_lex_state = 3}, [1716] = {.lex_state = 55, .external_lex_state = 3}, [1717] = {.lex_state = 0, .external_lex_state = 3}, [1718] = {.lex_state = 0, .external_lex_state = 3}, [1719] = {.lex_state = 0, .external_lex_state = 3}, [1720] = {.lex_state = 0, .external_lex_state = 3}, [1721] = {.lex_state = 0, .external_lex_state = 3}, [1722] = {.lex_state = 0, .external_lex_state = 3}, [1723] = {.lex_state = 9, .external_lex_state = 3}, [1724] = {.lex_state = 6, .external_lex_state = 3}, [1725] = {.lex_state = 6, .external_lex_state = 3}, [1726] = {.lex_state = 0, .external_lex_state = 3}, [1727] = {.lex_state = 0, .external_lex_state = 3}, [1728] = {.lex_state = 0, .external_lex_state = 3}, [1729] = {.lex_state = 0, .external_lex_state = 3}, [1730] = {.lex_state = 0, .external_lex_state = 3}, [1731] = {.lex_state = 0, .external_lex_state = 3}, [1732] = {.lex_state = 0, .external_lex_state = 3}, [1733] = {.lex_state = 2, .external_lex_state = 3}, [1734] = {.lex_state = 0, .external_lex_state = 3}, [1735] = {.lex_state = 6, .external_lex_state = 3}, [1736] = {.lex_state = 0, .external_lex_state = 3}, [1737] = {.lex_state = 55, .external_lex_state = 3}, [1738] = {.lex_state = 0, .external_lex_state = 3}, [1739] = {.lex_state = 7, .external_lex_state = 3}, [1740] = {.lex_state = 2, .external_lex_state = 3}, [1741] = {.lex_state = 0, .external_lex_state = 3}, [1742] = {.lex_state = 0, .external_lex_state = 3}, [1743] = {.lex_state = 0, .external_lex_state = 3}, [1744] = {.lex_state = 2, .external_lex_state = 3}, [1745] = {.lex_state = 55, .external_lex_state = 3}, [1746] = {.lex_state = 0, .external_lex_state = 3}, [1747] = {.lex_state = 0, .external_lex_state = 3}, [1748] = {.lex_state = 0, .external_lex_state = 3}, [1749] = {.lex_state = 55, .external_lex_state = 3}, [1750] = {.lex_state = 55, .external_lex_state = 3}, [1751] = {.lex_state = 6, .external_lex_state = 3}, [1752] = {.lex_state = 0, .external_lex_state = 3}, [1753] = {.lex_state = 0, .external_lex_state = 3}, [1754] = {.lex_state = 0, .external_lex_state = 3}, [1755] = {.lex_state = 0, .external_lex_state = 3}, [1756] = {.lex_state = 0, .external_lex_state = 3}, [1757] = {.lex_state = 9, .external_lex_state = 3}, [1758] = {.lex_state = 0, .external_lex_state = 3}, [1759] = {.lex_state = 55, .external_lex_state = 3}, [1760] = {.lex_state = 55, .external_lex_state = 3}, [1761] = {.lex_state = 0, .external_lex_state = 3}, [1762] = {.lex_state = 0, .external_lex_state = 3}, [1763] = {.lex_state = 0, .external_lex_state = 3}, [1764] = {.lex_state = 0, .external_lex_state = 3}, [1765] = {.lex_state = 0, .external_lex_state = 3}, [1766] = {.lex_state = 0, .external_lex_state = 3}, [1767] = {.lex_state = 0, .external_lex_state = 3}, [1768] = {.lex_state = 6, .external_lex_state = 3}, [1769] = {.lex_state = 0, .external_lex_state = 3}, [1770] = {.lex_state = 0, .external_lex_state = 3}, [1771] = {.lex_state = 0, .external_lex_state = 3}, [1772] = {.lex_state = 0, .external_lex_state = 3}, [1773] = {.lex_state = 0, .external_lex_state = 3}, [1774] = {.lex_state = 55, .external_lex_state = 3}, [1775] = {.lex_state = 0, .external_lex_state = 3}, [1776] = {.lex_state = 0, .external_lex_state = 3}, [1777] = {.lex_state = 6, .external_lex_state = 3}, [1778] = {.lex_state = 0, .external_lex_state = 3}, [1779] = {.lex_state = 55, .external_lex_state = 3}, [1780] = {.lex_state = 0, .external_lex_state = 3}, [1781] = {.lex_state = 0, .external_lex_state = 3}, [1782] = {.lex_state = 0, .external_lex_state = 3}, [1783] = {.lex_state = 6, .external_lex_state = 3}, [1784] = {.lex_state = 0, .external_lex_state = 3}, [1785] = {.lex_state = 0, .external_lex_state = 3}, [1786] = {.lex_state = 0, .external_lex_state = 3}, [1787] = {.lex_state = 55, .external_lex_state = 3}, [1788] = {.lex_state = 0, .external_lex_state = 3}, [1789] = {.lex_state = 55, .external_lex_state = 3}, [1790] = {.lex_state = 55, .external_lex_state = 3}, [1791] = {.lex_state = 0, .external_lex_state = 3}, [1792] = {.lex_state = 0, .external_lex_state = 3}, [1793] = {.lex_state = 55, .external_lex_state = 3}, [1794] = {.lex_state = 55, .external_lex_state = 3}, [1795] = {.lex_state = 0, .external_lex_state = 3}, [1796] = {.lex_state = 55, .external_lex_state = 3}, [1797] = {.lex_state = 55, .external_lex_state = 3}, [1798] = {.lex_state = 0, .external_lex_state = 3}, [1799] = {.lex_state = 0, .external_lex_state = 3}, [1800] = {.lex_state = 2, .external_lex_state = 3}, [1801] = {.lex_state = 0, .external_lex_state = 3}, [1802] = {.lex_state = 55, .external_lex_state = 3}, [1803] = {.lex_state = 0, .external_lex_state = 3}, [1804] = {.lex_state = 7, .external_lex_state = 3}, [1805] = {.lex_state = 2, .external_lex_state = 3}, [1806] = {.lex_state = 0, .external_lex_state = 3}, [1807] = {.lex_state = 0, .external_lex_state = 3}, [1808] = {.lex_state = 0, .external_lex_state = 3}, [1809] = {.lex_state = 0, .external_lex_state = 3}, [1810] = {.lex_state = 0, .external_lex_state = 3}, [1811] = {.lex_state = 0, .external_lex_state = 3}, [1812] = {.lex_state = 0, .external_lex_state = 3}, [1813] = {.lex_state = 0, .external_lex_state = 3}, [1814] = {.lex_state = 0, .external_lex_state = 3}, [1815] = {.lex_state = 0, .external_lex_state = 3}, [1816] = {.lex_state = 0, .external_lex_state = 3}, [1817] = {.lex_state = 0, .external_lex_state = 3}, [1818] = {.lex_state = 0, .external_lex_state = 3}, [1819] = {.lex_state = 0, .external_lex_state = 3}, [1820] = {.lex_state = 0, .external_lex_state = 3}, [1821] = {.lex_state = 0, .external_lex_state = 3}, [1822] = {.lex_state = 0, .external_lex_state = 3}, [1823] = {.lex_state = 0, .external_lex_state = 3}, [1824] = {.lex_state = 0, .external_lex_state = 3}, [1825] = {.lex_state = 0, .external_lex_state = 3}, [1826] = {.lex_state = 0, .external_lex_state = 3}, [1827] = {.lex_state = 0, .external_lex_state = 3}, [1828] = {.lex_state = 0, .external_lex_state = 3}, [1829] = {.lex_state = 2, .external_lex_state = 3}, [1830] = {.lex_state = 0, .external_lex_state = 3}, [1831] = {.lex_state = 0, .external_lex_state = 3}, [1832] = {.lex_state = 0, .external_lex_state = 3}, [1833] = {.lex_state = 0, .external_lex_state = 3}, [1834] = {.lex_state = 0, .external_lex_state = 3}, [1835] = {.lex_state = 0, .external_lex_state = 3}, [1836] = {.lex_state = 0, .external_lex_state = 3}, [1837] = {.lex_state = 0, .external_lex_state = 3}, [1838] = {.lex_state = 2, .external_lex_state = 3}, [1839] = {.lex_state = 55, .external_lex_state = 3}, [1840] = {.lex_state = 0, .external_lex_state = 3}, [1841] = {.lex_state = 55, .external_lex_state = 3}, [1842] = {.lex_state = 0, .external_lex_state = 3}, [1843] = {.lex_state = 0, .external_lex_state = 3}, [1844] = {.lex_state = 0, .external_lex_state = 3}, [1845] = {.lex_state = 0, .external_lex_state = 3}, [1846] = {.lex_state = 0, .external_lex_state = 3}, [1847] = {.lex_state = 2, .external_lex_state = 3}, [1848] = {.lex_state = 0, .external_lex_state = 3}, [1849] = {.lex_state = 0, .external_lex_state = 3}, [1850] = {.lex_state = 0, .external_lex_state = 3}, [1851] = {.lex_state = 0, .external_lex_state = 3}, [1852] = {.lex_state = 0, .external_lex_state = 3}, [1853] = {.lex_state = 6, .external_lex_state = 3}, [1854] = {.lex_state = 6, .external_lex_state = 3}, [1855] = {.lex_state = 2, .external_lex_state = 3}, [1856] = {.lex_state = 0, .external_lex_state = 3}, [1857] = {.lex_state = 0, .external_lex_state = 3}, [1858] = {.lex_state = 0, .external_lex_state = 3}, [1859] = {.lex_state = 0, .external_lex_state = 3}, [1860] = {.lex_state = 0, .external_lex_state = 3}, [1861] = {.lex_state = 0, .external_lex_state = 3}, [1862] = {.lex_state = 9, .external_lex_state = 3}, [1863] = {.lex_state = 0, .external_lex_state = 3}, [1864] = {.lex_state = 2, .external_lex_state = 3}, [1865] = {.lex_state = 2, .external_lex_state = 3}, [1866] = {.lex_state = 2, .external_lex_state = 3}, [1867] = {.lex_state = 2, .external_lex_state = 3}, [1868] = {.lex_state = 0, .external_lex_state = 3}, [1869] = {.lex_state = 2, .external_lex_state = 3}, [1870] = {.lex_state = 0, .external_lex_state = 3}, [1871] = {.lex_state = 2, .external_lex_state = 3}, [1872] = {.lex_state = 55, .external_lex_state = 3}, [1873] = {.lex_state = 0, .external_lex_state = 3}, [1874] = {.lex_state = 0, .external_lex_state = 3}, [1875] = {.lex_state = 0, .external_lex_state = 3}, [1876] = {.lex_state = 0, .external_lex_state = 3}, [1877] = {.lex_state = 0, .external_lex_state = 3}, [1878] = {.lex_state = 0, .external_lex_state = 3}, [1879] = {.lex_state = 55, .external_lex_state = 3}, [1880] = {.lex_state = 2, .external_lex_state = 3}, [1881] = {.lex_state = 0, .external_lex_state = 3}, [1882] = {.lex_state = 1, .external_lex_state = 3}, [1883] = {.lex_state = 0, .external_lex_state = 3}, [1884] = {.lex_state = 2, .external_lex_state = 3}, [1885] = {.lex_state = 2, .external_lex_state = 3}, [1886] = {.lex_state = 0, .external_lex_state = 3}, [1887] = {.lex_state = 0, .external_lex_state = 3}, [1888] = {.lex_state = 2, .external_lex_state = 3}, [1889] = {.lex_state = 0, .external_lex_state = 3}, [1890] = {.lex_state = 0, .external_lex_state = 3}, [1891] = {.lex_state = 55, .external_lex_state = 3}, [1892] = {.lex_state = 0, .external_lex_state = 3}, [1893] = {.lex_state = 55, .external_lex_state = 3}, [1894] = {.lex_state = 55, .external_lex_state = 3}, [1895] = {.lex_state = 2, .external_lex_state = 3}, [1896] = {.lex_state = 2, .external_lex_state = 3}, [1897] = {.lex_state = 2, .external_lex_state = 3}, [1898] = {.lex_state = 0, .external_lex_state = 3}, [1899] = {.lex_state = 0, .external_lex_state = 3}, [1900] = {.lex_state = 0, .external_lex_state = 3}, [1901] = {.lex_state = 0, .external_lex_state = 3}, [1902] = {.lex_state = 0, .external_lex_state = 3}, [1903] = {.lex_state = 0, .external_lex_state = 3}, [1904] = {.lex_state = 0, .external_lex_state = 5}, [1905] = {.lex_state = 2, .external_lex_state = 3}, [1906] = {.lex_state = 0, .external_lex_state = 3}, [1907] = {.lex_state = 2, .external_lex_state = 3}, [1908] = {.lex_state = 2, .external_lex_state = 3}, [1909] = {.lex_state = 55, .external_lex_state = 3}, [1910] = {.lex_state = 0, .external_lex_state = 3}, [1911] = {.lex_state = 0, .external_lex_state = 3}, [1912] = {.lex_state = 2, .external_lex_state = 3}, [1913] = {.lex_state = 0, .external_lex_state = 3}, [1914] = {.lex_state = 0, .external_lex_state = 3}, [1915] = {.lex_state = 55, .external_lex_state = 3}, [1916] = {.lex_state = 0, .external_lex_state = 3}, [1917] = {.lex_state = 0, .external_lex_state = 3}, [1918] = {.lex_state = 0, .external_lex_state = 3}, [1919] = {.lex_state = 55, .external_lex_state = 3}, [1920] = {.lex_state = 0, .external_lex_state = 3}, [1921] = {.lex_state = 2, .external_lex_state = 3}, [1922] = {.lex_state = 0, .external_lex_state = 3}, [1923] = {.lex_state = 2, .external_lex_state = 3}, [1924] = {.lex_state = 0, .external_lex_state = 3}, [1925] = {.lex_state = 0, .external_lex_state = 3}, [1926] = {.lex_state = 0, .external_lex_state = 3}, [1927] = {.lex_state = 0, .external_lex_state = 3}, [1928] = {.lex_state = 2, .external_lex_state = 3}, [1929] = {.lex_state = 0, .external_lex_state = 3}, [1930] = {.lex_state = 2, .external_lex_state = 3}, [1931] = {.lex_state = 0, .external_lex_state = 3}, [1932] = {.lex_state = 0, .external_lex_state = 3}, [1933] = {.lex_state = 6, .external_lex_state = 3}, [1934] = {.lex_state = 0, .external_lex_state = 3}, [1935] = {.lex_state = 0, .external_lex_state = 3}, [1936] = {.lex_state = 0, .external_lex_state = 3}, [1937] = {.lex_state = 0, .external_lex_state = 3}, [1938] = {.lex_state = 0, .external_lex_state = 3}, [1939] = {.lex_state = 0, .external_lex_state = 3}, [1940] = {.lex_state = 0, .external_lex_state = 3}, [1941] = {.lex_state = 0, .external_lex_state = 3}, [1942] = {.lex_state = 0, .external_lex_state = 3}, [1943] = {.lex_state = 55, .external_lex_state = 3}, [1944] = {.lex_state = 0, .external_lex_state = 3}, [1945] = {.lex_state = 2, .external_lex_state = 3}, [1946] = {.lex_state = 55, .external_lex_state = 3}, [1947] = {.lex_state = 2, .external_lex_state = 3}, [1948] = {.lex_state = 0, .external_lex_state = 3}, [1949] = {.lex_state = 0, .external_lex_state = 3}, [1950] = {.lex_state = 2, .external_lex_state = 3}, [1951] = {.lex_state = 0, .external_lex_state = 3}, [1952] = {.lex_state = 0, .external_lex_state = 3}, [1953] = {.lex_state = 2, .external_lex_state = 3}, [1954] = {.lex_state = 0, .external_lex_state = 3}, [1955] = {.lex_state = 0, .external_lex_state = 3}, [1956] = {.lex_state = 0, .external_lex_state = 3}, [1957] = {.lex_state = 0, .external_lex_state = 3}, [1958] = {.lex_state = 55, .external_lex_state = 3}, [1959] = {.lex_state = 0, .external_lex_state = 3}, [1960] = {.lex_state = 0, .external_lex_state = 3}, [1961] = {.lex_state = 0, .external_lex_state = 3}, [1962] = {.lex_state = 0, .external_lex_state = 3}, [1963] = {.lex_state = 0, .external_lex_state = 3}, [1964] = {.lex_state = 0, .external_lex_state = 3}, [1965] = {.lex_state = 0, .external_lex_state = 3}, [1966] = {.lex_state = 0, .external_lex_state = 3}, [1967] = {.lex_state = 0, .external_lex_state = 3}, [1968] = {.lex_state = 0, .external_lex_state = 3}, [1969] = {.lex_state = 55, .external_lex_state = 3}, [1970] = {.lex_state = 0, .external_lex_state = 3}, [1971] = {.lex_state = 0, .external_lex_state = 3}, [1972] = {.lex_state = 2, .external_lex_state = 3}, [1973] = {.lex_state = 0, .external_lex_state = 3}, [1974] = {.lex_state = 2, .external_lex_state = 3}, [1975] = {.lex_state = 2, .external_lex_state = 3}, [1976] = {.lex_state = 0, .external_lex_state = 3}, [1977] = {.lex_state = 2, .external_lex_state = 3}, [1978] = {.lex_state = 2, .external_lex_state = 3}, [1979] = {.lex_state = 6, .external_lex_state = 3}, [1980] = {.lex_state = 55, .external_lex_state = 3}, [1981] = {.lex_state = 2, .external_lex_state = 3}, [1982] = {.lex_state = 2, .external_lex_state = 3}, [1983] = {.lex_state = 2, .external_lex_state = 3}, [1984] = {.lex_state = 6, .external_lex_state = 3}, [1985] = {.lex_state = 2, .external_lex_state = 3}, [1986] = {.lex_state = 2, .external_lex_state = 3}, [1987] = {.lex_state = 0, .external_lex_state = 3}, [1988] = {.lex_state = 0, .external_lex_state = 3}, [1989] = {.lex_state = 2, .external_lex_state = 3}, [1990] = {.lex_state = 55, .external_lex_state = 3}, [1991] = {.lex_state = 2, .external_lex_state = 3}, [1992] = {.lex_state = 0, .external_lex_state = 3}, [1993] = {.lex_state = 0, .external_lex_state = 3}, [1994] = {.lex_state = 2, .external_lex_state = 3}, [1995] = {.lex_state = 2, .external_lex_state = 3}, [1996] = {.lex_state = 0, .external_lex_state = 3}, [1997] = {.lex_state = 2, .external_lex_state = 3}, [1998] = {.lex_state = 2, .external_lex_state = 3}, [1999] = {.lex_state = 0, .external_lex_state = 3}, [2000] = {.lex_state = 0, .external_lex_state = 3}, [2001] = {.lex_state = 0, .external_lex_state = 3}, [2002] = {.lex_state = 2, .external_lex_state = 3}, [2003] = {.lex_state = 0, .external_lex_state = 3}, [2004] = {.lex_state = 2, .external_lex_state = 3}, [2005] = {.lex_state = 0, .external_lex_state = 3}, [2006] = {.lex_state = 2, .external_lex_state = 3}, [2007] = {.lex_state = 0, .external_lex_state = 3}, [2008] = {.lex_state = 2, .external_lex_state = 3}, [2009] = {.lex_state = 0, .external_lex_state = 3}, [2010] = {.lex_state = 2, .external_lex_state = 3}, [2011] = {.lex_state = 2, .external_lex_state = 3}, [2012] = {.lex_state = 2, .external_lex_state = 3}, [2013] = {.lex_state = 2, .external_lex_state = 3}, [2014] = {.lex_state = 2, .external_lex_state = 3}, [2015] = {.lex_state = 0, .external_lex_state = 3}, [2016] = {.lex_state = 2, .external_lex_state = 3}, [2017] = {.lex_state = 2, .external_lex_state = 3}, [2018] = {.lex_state = 0, .external_lex_state = 3}, [2019] = {.lex_state = 2, .external_lex_state = 3}, [2020] = {.lex_state = 2, .external_lex_state = 3}, [2021] = {.lex_state = 0, .external_lex_state = 3}, [2022] = {.lex_state = 2, .external_lex_state = 3}, [2023] = {.lex_state = 2, .external_lex_state = 3}, [2024] = {.lex_state = 2, .external_lex_state = 3}, [2025] = {.lex_state = 2, .external_lex_state = 3}, [2026] = {.lex_state = 2, .external_lex_state = 3}, [2027] = {.lex_state = 2, .external_lex_state = 3}, [2028] = {.lex_state = 2, .external_lex_state = 3}, [2029] = {.lex_state = 2, .external_lex_state = 3}, [2030] = {.lex_state = 0, .external_lex_state = 3}, [2031] = {.lex_state = 0, .external_lex_state = 3}, [2032] = {.lex_state = 2, .external_lex_state = 3}, [2033] = {.lex_state = 2, .external_lex_state = 3}, [2034] = {.lex_state = 2, .external_lex_state = 3}, [2035] = {.lex_state = 2, .external_lex_state = 3}, [2036] = {.lex_state = 0, .external_lex_state = 3}, [2037] = {.lex_state = 0, .external_lex_state = 3}, [2038] = {.lex_state = 2, .external_lex_state = 3}, [2039] = {.lex_state = 0, .external_lex_state = 3}, [2040] = {.lex_state = 2, .external_lex_state = 3}, [2041] = {.lex_state = 0, .external_lex_state = 3}, [2042] = {.lex_state = 2, .external_lex_state = 3}, [2043] = {.lex_state = 0, .external_lex_state = 3}, [2044] = {.lex_state = 0, .external_lex_state = 3}, [2045] = {.lex_state = 0, .external_lex_state = 3}, [2046] = {.lex_state = 0, .external_lex_state = 3}, [2047] = {.lex_state = 0, .external_lex_state = 3}, [2048] = {.lex_state = 0, .external_lex_state = 3}, [2049] = {.lex_state = 0, .external_lex_state = 3}, [2050] = {.lex_state = 0, .external_lex_state = 3}, [2051] = {.lex_state = 0, .external_lex_state = 3}, [2052] = {.lex_state = 0, .external_lex_state = 3}, [2053] = {.lex_state = 0, .external_lex_state = 3}, [2054] = {.lex_state = 0, .external_lex_state = 3}, [2055] = {.lex_state = 2, .external_lex_state = 3}, [2056] = {.lex_state = 0, .external_lex_state = 3}, [2057] = {.lex_state = 2, .external_lex_state = 3}, [2058] = {.lex_state = 0, .external_lex_state = 3}, [2059] = {.lex_state = 2, .external_lex_state = 3}, [2060] = {.lex_state = 0, .external_lex_state = 3}, [2061] = {.lex_state = 0, .external_lex_state = 3}, [2062] = {.lex_state = 0, .external_lex_state = 3}, [2063] = {.lex_state = 0, .external_lex_state = 3}, [2064] = {.lex_state = 0, .external_lex_state = 3}, [2065] = {.lex_state = 0, .external_lex_state = 3}, [2066] = {.lex_state = 2, .external_lex_state = 3}, [2067] = {.lex_state = 2, .external_lex_state = 3}, [2068] = {.lex_state = 2, .external_lex_state = 3}, [2069] = {.lex_state = 2, .external_lex_state = 3}, [2070] = {.lex_state = 0, .external_lex_state = 3}, [2071] = {.lex_state = 0, .external_lex_state = 3}, [2072] = {.lex_state = 0, .external_lex_state = 3}, [2073] = {.lex_state = 0, .external_lex_state = 3}, [2074] = {.lex_state = 2, .external_lex_state = 3}, [2075] = {.lex_state = 0, .external_lex_state = 3}, [2076] = {.lex_state = 2, .external_lex_state = 3}, [2077] = {.lex_state = 0, .external_lex_state = 3}, [2078] = {.lex_state = 0, .external_lex_state = 3}, [2079] = {.lex_state = 2, .external_lex_state = 3}, [2080] = {.lex_state = 2, .external_lex_state = 3}, [2081] = {.lex_state = 2, .external_lex_state = 3}, [2082] = {.lex_state = 2, .external_lex_state = 3}, [2083] = {.lex_state = 2, .external_lex_state = 3}, [2084] = {.lex_state = 0, .external_lex_state = 3}, [2085] = {.lex_state = 0, .external_lex_state = 3}, [2086] = {.lex_state = 0, .external_lex_state = 3}, [2087] = {.lex_state = 0, .external_lex_state = 3}, [2088] = {.lex_state = 0, .external_lex_state = 3}, [2089] = {.lex_state = 0, .external_lex_state = 3}, [2090] = {.lex_state = 2, .external_lex_state = 3}, [2091] = {.lex_state = 2, .external_lex_state = 3}, [2092] = {.lex_state = 0, .external_lex_state = 3}, [2093] = {.lex_state = 0, .external_lex_state = 3}, [2094] = {.lex_state = 0, .external_lex_state = 3}, [2095] = {.lex_state = 2, .external_lex_state = 3}, [2096] = {.lex_state = 0, .external_lex_state = 3}, [2097] = {.lex_state = 2, .external_lex_state = 3}, [2098] = {.lex_state = 2, .external_lex_state = 3}, [2099] = {.lex_state = 2, .external_lex_state = 3}, [2100] = {.lex_state = 2, .external_lex_state = 3}, [2101] = {.lex_state = 0, .external_lex_state = 3}, [2102] = {.lex_state = 0, .external_lex_state = 3}, [2103] = {.lex_state = 2, .external_lex_state = 3}, [2104] = {.lex_state = 0, .external_lex_state = 3}, [2105] = {.lex_state = 0, .external_lex_state = 3}, [2106] = {.lex_state = 2, .external_lex_state = 3}, [2107] = {.lex_state = 0, .external_lex_state = 3}, [2108] = {.lex_state = 6, .external_lex_state = 3}, [2109] = {.lex_state = 2, .external_lex_state = 3}, [2110] = {.lex_state = 6, .external_lex_state = 3}, [2111] = {.lex_state = 0, .external_lex_state = 3}, [2112] = {.lex_state = 2, .external_lex_state = 3}, [2113] = {.lex_state = 0, .external_lex_state = 3}, [2114] = {.lex_state = 2, .external_lex_state = 3}, [2115] = {.lex_state = 0, .external_lex_state = 3}, [2116] = {.lex_state = 2, .external_lex_state = 3}, [2117] = {.lex_state = 0, .external_lex_state = 3}, [2118] = {.lex_state = 2, .external_lex_state = 3}, [2119] = {.lex_state = 0, .external_lex_state = 3}, [2120] = {.lex_state = 0, .external_lex_state = 3}, [2121] = {.lex_state = 0, .external_lex_state = 3}, [2122] = {.lex_state = 2, .external_lex_state = 3}, [2123] = {.lex_state = 0, .external_lex_state = 3}, [2124] = {.lex_state = 2, .external_lex_state = 3}, [2125] = {.lex_state = 2, .external_lex_state = 3}, [2126] = {.lex_state = 0, .external_lex_state = 3}, [2127] = {.lex_state = 2, .external_lex_state = 3}, [2128] = {.lex_state = 2, .external_lex_state = 3}, [2129] = {.lex_state = 0, .external_lex_state = 3}, [2130] = {.lex_state = 2, .external_lex_state = 3}, [2131] = {.lex_state = 0, .external_lex_state = 3}, [2132] = {.lex_state = 0, .external_lex_state = 3}, [2133] = {.lex_state = 0, .external_lex_state = 3}, [2134] = {.lex_state = 0, .external_lex_state = 3}, [2135] = {.lex_state = 0, .external_lex_state = 3}, [2136] = {.lex_state = 2, .external_lex_state = 3}, [2137] = {.lex_state = 2, .external_lex_state = 3}, [2138] = {.lex_state = 2, .external_lex_state = 3}, [2139] = {.lex_state = 0, .external_lex_state = 3}, [2140] = {.lex_state = 0, .external_lex_state = 3}, [2141] = {.lex_state = 0, .external_lex_state = 3}, [2142] = {.lex_state = 0, .external_lex_state = 3}, [2143] = {.lex_state = 0, .external_lex_state = 3}, [2144] = {.lex_state = 0, .external_lex_state = 3}, [2145] = {.lex_state = 0, .external_lex_state = 3}, [2146] = {.lex_state = 0, .external_lex_state = 3}, [2147] = {.lex_state = 0, .external_lex_state = 3}, [2148] = {.lex_state = 0, .external_lex_state = 3}, [2149] = {.lex_state = 0, .external_lex_state = 3}, [2150] = {.lex_state = 2, .external_lex_state = 3}, [2151] = {.lex_state = 2, .external_lex_state = 3}, [2152] = {.lex_state = 6, .external_lex_state = 3}, [2153] = {.lex_state = 6, .external_lex_state = 3}, [2154] = {.lex_state = 2, .external_lex_state = 3}, [2155] = {.lex_state = 0, .external_lex_state = 3}, [2156] = {.lex_state = 2, .external_lex_state = 3}, [2157] = {.lex_state = 0, .external_lex_state = 3}, [2158] = {.lex_state = 0, .external_lex_state = 3}, [2159] = {.lex_state = 2, .external_lex_state = 3}, [2160] = {.lex_state = 0, .external_lex_state = 3}, [2161] = {.lex_state = 0, .external_lex_state = 3}, [2162] = {.lex_state = 0, .external_lex_state = 3}, [2163] = {.lex_state = 0, .external_lex_state = 3}, [2164] = {.lex_state = 0, .external_lex_state = 3}, [2165] = {.lex_state = 0, .external_lex_state = 3}, [2166] = {.lex_state = 0, .external_lex_state = 3}, [2167] = {.lex_state = 0, .external_lex_state = 3}, [2168] = {.lex_state = 0, .external_lex_state = 3}, [2169] = {.lex_state = 0, .external_lex_state = 3}, [2170] = {.lex_state = 0, .external_lex_state = 3}, [2171] = {.lex_state = 0, .external_lex_state = 3}, [2172] = {.lex_state = 0, .external_lex_state = 3}, [2173] = {.lex_state = 0, .external_lex_state = 3}, [2174] = {.lex_state = 2, .external_lex_state = 3}, [2175] = {.lex_state = 0, .external_lex_state = 3}, [2176] = {.lex_state = 0, .external_lex_state = 3}, [2177] = {.lex_state = 2, .external_lex_state = 3}, [2178] = {.lex_state = 0, .external_lex_state = 3}, [2179] = {.lex_state = 0, .external_lex_state = 3}, [2180] = {.lex_state = 2, .external_lex_state = 3}, [2181] = {.lex_state = 2, .external_lex_state = 3}, [2182] = {.lex_state = 0, .external_lex_state = 3}, [2183] = {.lex_state = 0, .external_lex_state = 3}, [2184] = {.lex_state = 0, .external_lex_state = 3}, [2185] = {.lex_state = 0, .external_lex_state = 3}, [2186] = {.lex_state = 2, .external_lex_state = 3}, [2187] = {.lex_state = 2, .external_lex_state = 3}, [2188] = {.lex_state = 2, .external_lex_state = 3}, [2189] = {.lex_state = 2, .external_lex_state = 3}, [2190] = {.lex_state = 0, .external_lex_state = 3}, [2191] = {.lex_state = 0, .external_lex_state = 3}, [2192] = {.lex_state = 2, .external_lex_state = 3}, [2193] = {.lex_state = 2, .external_lex_state = 3}, [2194] = {.lex_state = 6, .external_lex_state = 3}, [2195] = {.lex_state = 2, .external_lex_state = 3}, [2196] = {.lex_state = 2, .external_lex_state = 3}, [2197] = {.lex_state = 2, .external_lex_state = 3}, [2198] = {.lex_state = 2, .external_lex_state = 3}, [2199] = {.lex_state = 6, .external_lex_state = 3}, [2200] = {.lex_state = 0, .external_lex_state = 3}, [2201] = {.lex_state = 2, .external_lex_state = 3}, }; 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_SEMI] = ACTIONS(1), [anon_sym_u8] = ACTIONS(1), [anon_sym_i8] = ACTIONS(1), [anon_sym_u16] = ACTIONS(1), [anon_sym_i16] = ACTIONS(1), [anon_sym_u32] = ACTIONS(1), [anon_sym_i32] = ACTIONS(1), [anon_sym_u64] = ACTIONS(1), [anon_sym_i64] = ACTIONS(1), [anon_sym_u128] = ACTIONS(1), [anon_sym_i128] = ACTIONS(1), [anon_sym_u256] = ACTIONS(1), [anon_sym_i256] = ACTIONS(1), [anon_sym_b256] = ACTIONS(1), [anon_sym_isize] = ACTIONS(1), [anon_sym_usize] = ACTIONS(1), [anon_sym_f32] = ACTIONS(1), [anon_sym_f64] = ACTIONS(1), [anon_sym_bool] = ACTIONS(1), [anon_sym_char] = ACTIONS(1), [anon_sym_str] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), [anon_sym_contract] = ACTIONS(1), [anon_sym_script] = ACTIONS(1), [anon_sym_predicate] = ACTIONS(1), [anon_sym_library] = ACTIONS(1), [anon_sym_SQUOTE] = ACTIONS(1), [anon_sym_abi] = ACTIONS(1), [anon_sym_as] = ACTIONS(1), [anon_sym_break] = ACTIONS(1), [anon_sym_configurable] = ACTIONS(1), [anon_sym_const] = ACTIONS(1), [anon_sym_continue] = ACTIONS(1), [anon_sym_default] = ACTIONS(1), [anon_sym_mod] = ACTIONS(1), [anon_sym_enum] = ACTIONS(1), [anon_sym_fn] = ACTIONS(1), [anon_sym_for] = ACTIONS(1), [anon_sym_if] = ACTIONS(1), [anon_sym_impl] = ACTIONS(1), [anon_sym_let] = ACTIONS(1), [anon_sym_match] = ACTIONS(1), [anon_sym_pub] = ACTIONS(1), [anon_sym_return] = ACTIONS(1), [anon_sym_storage] = ACTIONS(1), [anon_sym_struct] = ACTIONS(1), [anon_sym_trait] = ACTIONS(1), [anon_sym_type] = ACTIONS(1), [anon_sym_use] = ACTIONS(1), [anon_sym_where] = ACTIONS(1), [anon_sym_while] = ACTIONS(1), [anon_sym_POUND] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), [anon_sym_BANG] = ACTIONS(1), [anon_sym_EQ] = ACTIONS(1), [anon_sym_LBRACE] = ACTIONS(1), [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), [anon_sym_LPAREN] = ACTIONS(1), [anon_sym_RPAREN] = ACTIONS(1), [anon_sym_asm] = ACTIONS(1), [anon_sym_DASH_GT] = ACTIONS(1), [anon_sym_PLUS] = ACTIONS(1), [anon_sym_QMARK] = ACTIONS(1), [anon_sym_LT] = ACTIONS(1), [anon_sym_GT] = ACTIONS(1), [anon_sym_else] = ACTIONS(1), [anon_sym_COLON_COLON] = ACTIONS(1), [anon_sym_STAR] = ACTIONS(1), [anon_sym__] = ACTIONS(1), [anon_sym_AMP] = ACTIONS(1), [anon_sym_ref] = ACTIONS(1), [anon_sym_DOT_DOT_DOT] = ACTIONS(1), [anon_sym_in] = ACTIONS(1), [anon_sym_LT2] = ACTIONS(1), [sym_mutable_specifier] = ACTIONS(1), [anon_sym_DOLLAR] = ACTIONS(1), [anon_sym_DOT_DOT] = ACTIONS(1), [anon_sym_DOT_DOT_EQ] = ACTIONS(1), [anon_sym_DASH] = 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_SLASH] = ACTIONS(1), [anon_sym_PERCENT] = ACTIONS(1), [anon_sym_PLUS_EQ] = ACTIONS(1), [anon_sym_DASH_EQ] = ACTIONS(1), [anon_sym_STAR_EQ] = ACTIONS(1), [anon_sym_SLASH_EQ] = ACTIONS(1), [anon_sym_PERCENT_EQ] = ACTIONS(1), [anon_sym_AMP_EQ] = ACTIONS(1), [anon_sym_PIPE_EQ] = ACTIONS(1), [anon_sym_CARET_EQ] = ACTIONS(1), [anon_sym_LT_LT_EQ] = ACTIONS(1), [anon_sym_GT_GT_EQ] = ACTIONS(1), [anon_sym_yield] = ACTIONS(1), [anon_sym_EQ_GT] = ACTIONS(1), [anon_sym_move] = ACTIONS(1), [anon_sym_DOT] = ACTIONS(1), [anon_sym_deref] = ACTIONS(1), [anon_sym_AT] = ACTIONS(1), [sym_integer_literal] = ACTIONS(1), [aux_sym_string_literal_token1] = ACTIONS(1), [anon_sym_DQUOTE] = ACTIONS(1), [sym_char_literal] = ACTIONS(1), [sym_escape_sequence] = ACTIONS(1), [anon_sym_true] = ACTIONS(1), [anon_sym_false] = ACTIONS(1), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1), [sym__string_content] = ACTIONS(1), [sym_raw_string_literal] = ACTIONS(1), [sym_float_literal] = ACTIONS(1), [sym_block_comment] = ACTIONS(3), }, [1] = { [sym_source_file] = STATE(2018), [sym__statement] = STATE(5), [sym_empty_statement] = STATE(5), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(5), [sym_expression_statement] = STATE(5), [sym_attribute_item] = STATE(5), [sym_inner_attribute_item] = STATE(5), [sym_mod_item] = STATE(5), [sym_struct_item] = STATE(5), [sym_enum_item] = STATE(5), [sym_configurable_item] = STATE(5), [sym_storage_item] = STATE(5), [sym_const_item] = STATE(5), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(5), [sym_function_item] = STATE(5), [sym_function_signature_item] = STATE(5), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(5), [sym_abi_item] = STATE(5), [sym_trait_item] = STATE(5), [sym_let_declaration] = STATE(5), [sym_use_declaration] = STATE(5), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(935), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(5), [aux_sym_function_modifiers_repeat1] = STATE(1521), [ts_builtin_sym_end] = ACTIONS(5), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [2] = { [sym__statement] = STATE(8), [sym_empty_statement] = STATE(8), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(8), [sym_expression_statement] = STATE(8), [sym_attribute_item] = STATE(8), [sym_inner_attribute_item] = STATE(8), [sym_mod_item] = STATE(8), [sym_struct_item] = STATE(8), [sym_enum_item] = STATE(8), [sym_configurable_item] = STATE(8), [sym_storage_item] = STATE(8), [sym_const_item] = STATE(8), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(8), [sym_function_item] = STATE(8), [sym_function_signature_item] = STATE(8), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(8), [sym_abi_item] = STATE(8), [sym_trait_item] = STATE(8), [sym_let_declaration] = STATE(8), [sym_use_declaration] = STATE(8), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(846), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(8), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(99), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [3] = { [sym__statement] = STATE(8), [sym_empty_statement] = STATE(8), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(8), [sym_expression_statement] = STATE(8), [sym_attribute_item] = STATE(8), [sym_inner_attribute_item] = STATE(8), [sym_mod_item] = STATE(8), [sym_struct_item] = STATE(8), [sym_enum_item] = STATE(8), [sym_configurable_item] = STATE(8), [sym_storage_item] = STATE(8), [sym_const_item] = STATE(8), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(8), [sym_function_item] = STATE(8), [sym_function_signature_item] = STATE(8), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(8), [sym_abi_item] = STATE(8), [sym_trait_item] = STATE(8), [sym_let_declaration] = STATE(8), [sym_use_declaration] = STATE(8), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(888), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(8), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(101), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [4] = { [sym__statement] = STATE(4), [sym_empty_statement] = STATE(4), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(4), [sym_expression_statement] = STATE(4), [sym_attribute_item] = STATE(4), [sym_inner_attribute_item] = STATE(4), [sym_mod_item] = STATE(4), [sym_struct_item] = STATE(4), [sym_enum_item] = STATE(4), [sym_configurable_item] = STATE(4), [sym_storage_item] = STATE(4), [sym_const_item] = STATE(4), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(4), [sym_function_item] = STATE(4), [sym_function_signature_item] = STATE(4), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(4), [sym_abi_item] = STATE(4), [sym_trait_item] = STATE(4), [sym_let_declaration] = STATE(4), [sym_use_declaration] = STATE(4), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(935), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(4), [aux_sym_function_modifiers_repeat1] = STATE(1521), [ts_builtin_sym_end] = ACTIONS(103), [sym_identifier] = ACTIONS(105), [anon_sym_SEMI] = ACTIONS(108), [anon_sym_u8] = ACTIONS(111), [anon_sym_i8] = ACTIONS(111), [anon_sym_u16] = ACTIONS(111), [anon_sym_i16] = ACTIONS(111), [anon_sym_u32] = ACTIONS(111), [anon_sym_i32] = ACTIONS(111), [anon_sym_u64] = ACTIONS(111), [anon_sym_i64] = ACTIONS(111), [anon_sym_u128] = ACTIONS(111), [anon_sym_i128] = ACTIONS(111), [anon_sym_u256] = ACTIONS(111), [anon_sym_i256] = ACTIONS(111), [anon_sym_b256] = ACTIONS(111), [anon_sym_isize] = ACTIONS(111), [anon_sym_usize] = ACTIONS(111), [anon_sym_f32] = ACTIONS(111), [anon_sym_f64] = ACTIONS(111), [anon_sym_bool] = ACTIONS(111), [anon_sym_char] = ACTIONS(111), [anon_sym_str] = ACTIONS(114), [anon_sym_LBRACK] = ACTIONS(117), [anon_sym_contract] = ACTIONS(120), [anon_sym_script] = ACTIONS(120), [anon_sym_predicate] = ACTIONS(120), [anon_sym_library] = ACTIONS(120), [anon_sym_SQUOTE] = ACTIONS(123), [anon_sym_abi] = ACTIONS(126), [anon_sym_break] = ACTIONS(129), [anon_sym_configurable] = ACTIONS(132), [anon_sym_const] = ACTIONS(135), [anon_sym_continue] = ACTIONS(138), [anon_sym_default] = ACTIONS(141), [anon_sym_mod] = ACTIONS(144), [anon_sym_enum] = ACTIONS(147), [anon_sym_fn] = ACTIONS(150), [anon_sym_for] = ACTIONS(153), [anon_sym_if] = ACTIONS(156), [anon_sym_impl] = ACTIONS(159), [anon_sym_let] = ACTIONS(162), [anon_sym_match] = ACTIONS(165), [anon_sym_pub] = ACTIONS(168), [anon_sym_return] = ACTIONS(171), [anon_sym_storage] = ACTIONS(174), [anon_sym_struct] = ACTIONS(177), [anon_sym_trait] = ACTIONS(180), [anon_sym_type] = ACTIONS(183), [anon_sym_use] = ACTIONS(186), [anon_sym_while] = ACTIONS(189), [anon_sym_POUND] = ACTIONS(192), [anon_sym_BANG] = ACTIONS(195), [anon_sym_LBRACE] = ACTIONS(198), [anon_sym_LPAREN] = ACTIONS(201), [anon_sym_asm] = ACTIONS(204), [anon_sym_LT] = ACTIONS(207), [anon_sym_COLON_COLON] = ACTIONS(210), [anon_sym_STAR] = ACTIONS(195), [anon_sym_AMP] = ACTIONS(213), [anon_sym_DOT_DOT] = ACTIONS(216), [anon_sym_DASH] = ACTIONS(195), [anon_sym_PIPE] = ACTIONS(219), [anon_sym_yield] = ACTIONS(222), [anon_sym_move] = ACTIONS(225), [sym_integer_literal] = ACTIONS(228), [aux_sym_string_literal_token1] = ACTIONS(231), [sym_char_literal] = ACTIONS(228), [anon_sym_true] = ACTIONS(234), [anon_sym_false] = ACTIONS(234), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(237), [sym_metavariable] = ACTIONS(240), [sym_raw_string_literal] = ACTIONS(228), [sym_float_literal] = ACTIONS(228), [sym_block_comment] = ACTIONS(3), }, [5] = { [sym__statement] = STATE(4), [sym_empty_statement] = STATE(4), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(4), [sym_expression_statement] = STATE(4), [sym_attribute_item] = STATE(4), [sym_inner_attribute_item] = STATE(4), [sym_mod_item] = STATE(4), [sym_struct_item] = STATE(4), [sym_enum_item] = STATE(4), [sym_configurable_item] = STATE(4), [sym_storage_item] = STATE(4), [sym_const_item] = STATE(4), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(4), [sym_function_item] = STATE(4), [sym_function_signature_item] = STATE(4), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(4), [sym_abi_item] = STATE(4), [sym_trait_item] = STATE(4), [sym_let_declaration] = STATE(4), [sym_use_declaration] = STATE(4), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(935), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(4), [aux_sym_function_modifiers_repeat1] = STATE(1521), [ts_builtin_sym_end] = ACTIONS(243), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [6] = { [sym__statement] = STATE(3), [sym_empty_statement] = STATE(3), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(3), [sym_expression_statement] = STATE(3), [sym_attribute_item] = STATE(3), [sym_inner_attribute_item] = STATE(3), [sym_mod_item] = STATE(3), [sym_struct_item] = STATE(3), [sym_enum_item] = STATE(3), [sym_configurable_item] = STATE(3), [sym_storage_item] = STATE(3), [sym_const_item] = STATE(3), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(3), [sym_function_item] = STATE(3), [sym_function_signature_item] = STATE(3), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(3), [sym_abi_item] = STATE(3), [sym_trait_item] = STATE(3), [sym_let_declaration] = STATE(3), [sym_use_declaration] = STATE(3), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(892), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(3), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(245), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [7] = { [sym__statement] = STATE(12), [sym_empty_statement] = STATE(12), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(12), [sym_expression_statement] = STATE(12), [sym_attribute_item] = STATE(12), [sym_inner_attribute_item] = STATE(12), [sym_mod_item] = STATE(12), [sym_struct_item] = STATE(12), [sym_enum_item] = STATE(12), [sym_configurable_item] = STATE(12), [sym_storage_item] = STATE(12), [sym_const_item] = STATE(12), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(12), [sym_function_item] = STATE(12), [sym_function_signature_item] = STATE(12), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(12), [sym_abi_item] = STATE(12), [sym_trait_item] = STATE(12), [sym_let_declaration] = STATE(12), [sym_use_declaration] = STATE(12), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(852), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(12), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(247), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [8] = { [sym__statement] = STATE(8), [sym_empty_statement] = STATE(8), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(8), [sym_expression_statement] = STATE(8), [sym_attribute_item] = STATE(8), [sym_inner_attribute_item] = STATE(8), [sym_mod_item] = STATE(8), [sym_struct_item] = STATE(8), [sym_enum_item] = STATE(8), [sym_configurable_item] = STATE(8), [sym_storage_item] = STATE(8), [sym_const_item] = STATE(8), [sym_asm_item] = STATE(83), [sym_type_item] = STATE(8), [sym_function_item] = STATE(8), [sym_function_signature_item] = STATE(8), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(8), [sym_abi_item] = STATE(8), [sym_trait_item] = STATE(8), [sym_let_declaration] = STATE(8), [sym_use_declaration] = STATE(8), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(935), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(8), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(105), [anon_sym_SEMI] = ACTIONS(108), [anon_sym_u8] = ACTIONS(111), [anon_sym_i8] = ACTIONS(111), [anon_sym_u16] = ACTIONS(111), [anon_sym_i16] = ACTIONS(111), [anon_sym_u32] = ACTIONS(111), [anon_sym_i32] = ACTIONS(111), [anon_sym_u64] = ACTIONS(111), [anon_sym_i64] = ACTIONS(111), [anon_sym_u128] = ACTIONS(111), [anon_sym_i128] = ACTIONS(111), [anon_sym_u256] = ACTIONS(111), [anon_sym_i256] = ACTIONS(111), [anon_sym_b256] = ACTIONS(111), [anon_sym_isize] = ACTIONS(111), [anon_sym_usize] = ACTIONS(111), [anon_sym_f32] = ACTIONS(111), [anon_sym_f64] = ACTIONS(111), [anon_sym_bool] = ACTIONS(111), [anon_sym_char] = ACTIONS(111), [anon_sym_str] = ACTIONS(114), [anon_sym_LBRACK] = ACTIONS(117), [anon_sym_contract] = ACTIONS(120), [anon_sym_script] = ACTIONS(120), [anon_sym_predicate] = ACTIONS(120), [anon_sym_library] = ACTIONS(120), [anon_sym_SQUOTE] = ACTIONS(123), [anon_sym_abi] = ACTIONS(126), [anon_sym_break] = ACTIONS(129), [anon_sym_configurable] = ACTIONS(132), [anon_sym_const] = ACTIONS(135), [anon_sym_continue] = ACTIONS(138), [anon_sym_default] = ACTIONS(141), [anon_sym_mod] = ACTIONS(144), [anon_sym_enum] = ACTIONS(147), [anon_sym_fn] = ACTIONS(150), [anon_sym_for] = ACTIONS(153), [anon_sym_if] = ACTIONS(156), [anon_sym_impl] = ACTIONS(159), [anon_sym_let] = ACTIONS(162), [anon_sym_match] = ACTIONS(165), [anon_sym_pub] = ACTIONS(168), [anon_sym_return] = ACTIONS(171), [anon_sym_storage] = ACTIONS(174), [anon_sym_struct] = ACTIONS(177), [anon_sym_trait] = ACTIONS(180), [anon_sym_type] = ACTIONS(183), [anon_sym_use] = ACTIONS(186), [anon_sym_while] = ACTIONS(189), [anon_sym_POUND] = ACTIONS(192), [anon_sym_BANG] = ACTIONS(195), [anon_sym_LBRACE] = ACTIONS(198), [anon_sym_RBRACE] = ACTIONS(103), [anon_sym_LPAREN] = ACTIONS(201), [anon_sym_asm] = ACTIONS(204), [anon_sym_LT] = ACTIONS(207), [anon_sym_COLON_COLON] = ACTIONS(210), [anon_sym_STAR] = ACTIONS(195), [anon_sym_AMP] = ACTIONS(213), [anon_sym_DOT_DOT] = ACTIONS(216), [anon_sym_DASH] = ACTIONS(195), [anon_sym_PIPE] = ACTIONS(219), [anon_sym_yield] = ACTIONS(222), [anon_sym_move] = ACTIONS(225), [sym_integer_literal] = ACTIONS(228), [aux_sym_string_literal_token1] = ACTIONS(231), [sym_char_literal] = ACTIONS(228), [anon_sym_true] = ACTIONS(234), [anon_sym_false] = ACTIONS(234), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(237), [sym_metavariable] = ACTIONS(240), [sym_raw_string_literal] = ACTIONS(228), [sym_float_literal] = ACTIONS(228), [sym_block_comment] = ACTIONS(3), }, [9] = { [sym__statement] = STATE(8), [sym_empty_statement] = STATE(8), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(8), [sym_expression_statement] = STATE(8), [sym_attribute_item] = STATE(8), [sym_inner_attribute_item] = STATE(8), [sym_mod_item] = STATE(8), [sym_struct_item] = STATE(8), [sym_enum_item] = STATE(8), [sym_configurable_item] = STATE(8), [sym_storage_item] = STATE(8), [sym_const_item] = STATE(8), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(8), [sym_function_item] = STATE(8), [sym_function_signature_item] = STATE(8), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(8), [sym_abi_item] = STATE(8), [sym_trait_item] = STATE(8), [sym_let_declaration] = STATE(8), [sym_use_declaration] = STATE(8), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(859), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(8), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(249), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [10] = { [sym__statement] = STATE(9), [sym_empty_statement] = STATE(9), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(9), [sym_expression_statement] = STATE(9), [sym_attribute_item] = STATE(9), [sym_inner_attribute_item] = STATE(9), [sym_mod_item] = STATE(9), [sym_struct_item] = STATE(9), [sym_enum_item] = STATE(9), [sym_configurable_item] = STATE(9), [sym_storage_item] = STATE(9), [sym_const_item] = STATE(9), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(9), [sym_function_item] = STATE(9), [sym_function_signature_item] = STATE(9), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(9), [sym_abi_item] = STATE(9), [sym_trait_item] = STATE(9), [sym_let_declaration] = STATE(9), [sym_use_declaration] = STATE(9), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(891), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(9), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(251), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [11] = { [sym__statement] = STATE(2), [sym_empty_statement] = STATE(2), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(2), [sym_expression_statement] = STATE(2), [sym_attribute_item] = STATE(2), [sym_inner_attribute_item] = STATE(2), [sym_mod_item] = STATE(2), [sym_struct_item] = STATE(2), [sym_enum_item] = STATE(2), [sym_configurable_item] = STATE(2), [sym_storage_item] = STATE(2), [sym_const_item] = STATE(2), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(2), [sym_function_item] = STATE(2), [sym_function_signature_item] = STATE(2), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(2), [sym_abi_item] = STATE(2), [sym_trait_item] = STATE(2), [sym_let_declaration] = STATE(2), [sym_use_declaration] = STATE(2), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(843), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(2), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(253), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [12] = { [sym__statement] = STATE(8), [sym_empty_statement] = STATE(8), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(8), [sym_expression_statement] = STATE(8), [sym_attribute_item] = STATE(8), [sym_inner_attribute_item] = STATE(8), [sym_mod_item] = STATE(8), [sym_struct_item] = STATE(8), [sym_enum_item] = STATE(8), [sym_configurable_item] = STATE(8), [sym_storage_item] = STATE(8), [sym_const_item] = STATE(8), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(8), [sym_function_item] = STATE(8), [sym_function_signature_item] = STATE(8), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(8), [sym_abi_item] = STATE(8), [sym_trait_item] = STATE(8), [sym_let_declaration] = STATE(8), [sym_use_declaration] = STATE(8), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(854), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(8), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(255), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [13] = { [sym__statement] = STATE(14), [sym_empty_statement] = STATE(14), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(14), [sym_expression_statement] = STATE(14), [sym_attribute_item] = STATE(14), [sym_inner_attribute_item] = STATE(14), [sym_mod_item] = STATE(14), [sym_struct_item] = STATE(14), [sym_enum_item] = STATE(14), [sym_configurable_item] = STATE(14), [sym_storage_item] = STATE(14), [sym_const_item] = STATE(14), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(14), [sym_function_item] = STATE(14), [sym_function_signature_item] = STATE(14), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(14), [sym_abi_item] = STATE(14), [sym_trait_item] = STATE(14), [sym_let_declaration] = STATE(14), [sym_use_declaration] = STATE(14), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(856), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(14), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(257), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [14] = { [sym__statement] = STATE(8), [sym_empty_statement] = STATE(8), [sym_primitive_type] = STATE(712), [sym_program_type] = STATE(8), [sym_expression_statement] = STATE(8), [sym_attribute_item] = STATE(8), [sym_inner_attribute_item] = STATE(8), [sym_mod_item] = STATE(8), [sym_struct_item] = STATE(8), [sym_enum_item] = STATE(8), [sym_configurable_item] = STATE(8), [sym_storage_item] = STATE(8), [sym_const_item] = STATE(8), [sym_asm_item] = STATE(63), [sym_type_item] = STATE(8), [sym_function_item] = STATE(8), [sym_function_signature_item] = STATE(8), [sym_function_modifiers] = STATE(2187), [sym_impl_item] = STATE(8), [sym_abi_item] = STATE(8), [sym_trait_item] = STATE(8), [sym_let_declaration] = STATE(8), [sym_use_declaration] = STATE(8), [sym_visibility_modifier] = STATE(1265), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(858), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(65), [sym_match_expression] = STATE(65), [sym_while_expression] = STATE(65), [sym_for_expression] = STATE(65), [sym_const_block] = STATE(65), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2108), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(65), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_source_file_repeat1] = STATE(8), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_contract] = ACTIONS(17), [anon_sym_script] = ACTIONS(17), [anon_sym_predicate] = ACTIONS(17), [anon_sym_library] = ACTIONS(17), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(21), [anon_sym_break] = ACTIONS(23), [anon_sym_configurable] = ACTIONS(25), [anon_sym_const] = ACTIONS(27), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(31), [anon_sym_mod] = ACTIONS(33), [anon_sym_enum] = ACTIONS(35), [anon_sym_fn] = ACTIONS(37), [anon_sym_for] = ACTIONS(39), [anon_sym_if] = ACTIONS(41), [anon_sym_impl] = ACTIONS(43), [anon_sym_let] = ACTIONS(45), [anon_sym_match] = ACTIONS(47), [anon_sym_pub] = ACTIONS(49), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(53), [anon_sym_struct] = ACTIONS(55), [anon_sym_trait] = ACTIONS(57), [anon_sym_type] = ACTIONS(59), [anon_sym_use] = ACTIONS(61), [anon_sym_while] = ACTIONS(63), [anon_sym_POUND] = ACTIONS(65), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(69), [anon_sym_RBRACE] = ACTIONS(259), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(73), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [15] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(769), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(261), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(261), [anon_sym_RBRACK] = ACTIONS(261), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(265), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_COMMA] = ACTIONS(261), [anon_sym_BANG] = ACTIONS(281), [anon_sym_EQ] = ACTIONS(265), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_RBRACE] = ACTIONS(261), [anon_sym_COLON] = ACTIONS(285), [anon_sym_LPAREN] = ACTIONS(261), [anon_sym_RPAREN] = ACTIONS(261), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(265), [anon_sym_QMARK] = ACTIONS(261), [anon_sym_LT] = ACTIONS(265), [anon_sym_GT] = ACTIONS(265), [anon_sym_else] = ACTIONS(265), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(265), [anon_sym_AMP] = ACTIONS(265), [anon_sym_DOT_DOT_DOT] = ACTIONS(261), [anon_sym_DOT_DOT] = ACTIONS(265), [anon_sym_DOT_DOT_EQ] = ACTIONS(261), [anon_sym_DASH] = ACTIONS(265), [anon_sym_AMP_AMP] = ACTIONS(261), [anon_sym_PIPE_PIPE] = ACTIONS(261), [anon_sym_PIPE] = ACTIONS(265), [anon_sym_CARET] = ACTIONS(265), [anon_sym_EQ_EQ] = ACTIONS(261), [anon_sym_BANG_EQ] = ACTIONS(261), [anon_sym_LT_EQ] = ACTIONS(261), [anon_sym_GT_EQ] = ACTIONS(261), [anon_sym_LT_LT] = ACTIONS(265), [anon_sym_GT_GT] = ACTIONS(265), [anon_sym_SLASH] = ACTIONS(265), [anon_sym_PERCENT] = ACTIONS(265), [anon_sym_PLUS_EQ] = ACTIONS(261), [anon_sym_DASH_EQ] = ACTIONS(261), [anon_sym_STAR_EQ] = ACTIONS(261), [anon_sym_SLASH_EQ] = ACTIONS(261), [anon_sym_PERCENT_EQ] = ACTIONS(261), [anon_sym_AMP_EQ] = ACTIONS(261), [anon_sym_PIPE_EQ] = ACTIONS(261), [anon_sym_CARET_EQ] = ACTIONS(261), [anon_sym_LT_LT_EQ] = ACTIONS(261), [anon_sym_GT_GT_EQ] = ACTIONS(261), [anon_sym_yield] = ACTIONS(85), [anon_sym_EQ_GT] = ACTIONS(261), [anon_sym_move] = ACTIONS(87), [anon_sym_DOT] = ACTIONS(265), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [16] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(674), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(289), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(289), [anon_sym_RBRACK] = ACTIONS(289), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(291), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_COMMA] = ACTIONS(289), [anon_sym_BANG] = ACTIONS(281), [anon_sym_EQ] = ACTIONS(291), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_RBRACE] = ACTIONS(289), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(289), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(291), [anon_sym_QMARK] = ACTIONS(289), [anon_sym_LT] = ACTIONS(291), [anon_sym_GT] = ACTIONS(291), [anon_sym_else] = ACTIONS(291), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(291), [anon_sym_AMP] = ACTIONS(291), [anon_sym_DOT_DOT_DOT] = ACTIONS(289), [anon_sym_DOT_DOT] = ACTIONS(291), [anon_sym_DOT_DOT_EQ] = ACTIONS(289), [anon_sym_DASH] = ACTIONS(291), [anon_sym_AMP_AMP] = ACTIONS(289), [anon_sym_PIPE_PIPE] = ACTIONS(289), [anon_sym_PIPE] = ACTIONS(291), [anon_sym_CARET] = ACTIONS(291), [anon_sym_EQ_EQ] = ACTIONS(289), [anon_sym_BANG_EQ] = ACTIONS(289), [anon_sym_LT_EQ] = ACTIONS(289), [anon_sym_GT_EQ] = ACTIONS(289), [anon_sym_LT_LT] = ACTIONS(291), [anon_sym_GT_GT] = ACTIONS(291), [anon_sym_SLASH] = ACTIONS(291), [anon_sym_PERCENT] = ACTIONS(291), [anon_sym_PLUS_EQ] = ACTIONS(289), [anon_sym_DASH_EQ] = ACTIONS(289), [anon_sym_STAR_EQ] = ACTIONS(289), [anon_sym_SLASH_EQ] = ACTIONS(289), [anon_sym_PERCENT_EQ] = ACTIONS(289), [anon_sym_AMP_EQ] = ACTIONS(289), [anon_sym_PIPE_EQ] = ACTIONS(289), [anon_sym_CARET_EQ] = ACTIONS(289), [anon_sym_LT_LT_EQ] = ACTIONS(289), [anon_sym_GT_GT_EQ] = ACTIONS(289), [anon_sym_yield] = ACTIONS(85), [anon_sym_EQ_GT] = ACTIONS(289), [anon_sym_move] = ACTIONS(87), [anon_sym_DOT] = ACTIONS(291), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [17] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(756), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(293), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_RBRACK] = ACTIONS(293), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(295), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_COMMA] = ACTIONS(293), [anon_sym_BANG] = ACTIONS(281), [anon_sym_EQ] = ACTIONS(295), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_RBRACE] = ACTIONS(293), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(293), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(295), [anon_sym_QMARK] = ACTIONS(293), [anon_sym_LT] = ACTIONS(297), [anon_sym_GT] = ACTIONS(295), [anon_sym_else] = ACTIONS(295), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(281), [anon_sym_AMP] = ACTIONS(299), [anon_sym_DOT_DOT_DOT] = ACTIONS(293), [anon_sym_DOT_DOT] = ACTIONS(301), [anon_sym_DOT_DOT_EQ] = ACTIONS(293), [anon_sym_DASH] = ACTIONS(281), [anon_sym_AMP_AMP] = ACTIONS(293), [anon_sym_PIPE_PIPE] = ACTIONS(293), [anon_sym_PIPE] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(295), [anon_sym_EQ_EQ] = ACTIONS(293), [anon_sym_BANG_EQ] = ACTIONS(293), [anon_sym_LT_EQ] = ACTIONS(293), [anon_sym_GT_EQ] = ACTIONS(293), [anon_sym_LT_LT] = ACTIONS(295), [anon_sym_GT_GT] = ACTIONS(295), [anon_sym_SLASH] = ACTIONS(295), [anon_sym_PERCENT] = ACTIONS(295), [anon_sym_PLUS_EQ] = ACTIONS(293), [anon_sym_DASH_EQ] = ACTIONS(293), [anon_sym_STAR_EQ] = ACTIONS(293), [anon_sym_SLASH_EQ] = ACTIONS(293), [anon_sym_PERCENT_EQ] = ACTIONS(293), [anon_sym_AMP_EQ] = ACTIONS(293), [anon_sym_PIPE_EQ] = ACTIONS(293), [anon_sym_CARET_EQ] = ACTIONS(293), [anon_sym_LT_LT_EQ] = ACTIONS(293), [anon_sym_GT_GT_EQ] = ACTIONS(293), [anon_sym_yield] = ACTIONS(85), [anon_sym_EQ_GT] = ACTIONS(293), [anon_sym_move] = ACTIONS(87), [anon_sym_DOT] = ACTIONS(295), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [18] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(775), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(305), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_RBRACK] = ACTIONS(305), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(307), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_COMMA] = ACTIONS(305), [anon_sym_BANG] = ACTIONS(281), [anon_sym_EQ] = ACTIONS(307), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_RBRACE] = ACTIONS(305), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(305), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(307), [anon_sym_QMARK] = ACTIONS(305), [anon_sym_LT] = ACTIONS(297), [anon_sym_GT] = ACTIONS(307), [anon_sym_else] = ACTIONS(307), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(281), [anon_sym_AMP] = ACTIONS(299), [anon_sym_DOT_DOT_DOT] = ACTIONS(305), [anon_sym_DOT_DOT] = ACTIONS(301), [anon_sym_DOT_DOT_EQ] = ACTIONS(305), [anon_sym_DASH] = ACTIONS(281), [anon_sym_AMP_AMP] = ACTIONS(305), [anon_sym_PIPE_PIPE] = ACTIONS(305), [anon_sym_PIPE] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(307), [anon_sym_EQ_EQ] = ACTIONS(305), [anon_sym_BANG_EQ] = ACTIONS(305), [anon_sym_LT_EQ] = ACTIONS(305), [anon_sym_GT_EQ] = ACTIONS(305), [anon_sym_LT_LT] = ACTIONS(307), [anon_sym_GT_GT] = ACTIONS(307), [anon_sym_SLASH] = ACTIONS(307), [anon_sym_PERCENT] = ACTIONS(307), [anon_sym_PLUS_EQ] = ACTIONS(305), [anon_sym_DASH_EQ] = ACTIONS(305), [anon_sym_STAR_EQ] = ACTIONS(305), [anon_sym_SLASH_EQ] = ACTIONS(305), [anon_sym_PERCENT_EQ] = ACTIONS(305), [anon_sym_AMP_EQ] = ACTIONS(305), [anon_sym_PIPE_EQ] = ACTIONS(305), [anon_sym_CARET_EQ] = ACTIONS(305), [anon_sym_LT_LT_EQ] = ACTIONS(305), [anon_sym_GT_GT_EQ] = ACTIONS(305), [anon_sym_yield] = ACTIONS(85), [anon_sym_EQ_GT] = ACTIONS(305), [anon_sym_move] = ACTIONS(87), [anon_sym_DOT] = ACTIONS(307), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [19] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(706), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(309), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(309), [anon_sym_RBRACK] = ACTIONS(309), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(311), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_COMMA] = ACTIONS(309), [anon_sym_BANG] = ACTIONS(281), [anon_sym_EQ] = ACTIONS(311), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_RBRACE] = ACTIONS(309), [anon_sym_LPAREN] = ACTIONS(309), [anon_sym_RPAREN] = ACTIONS(309), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(311), [anon_sym_QMARK] = ACTIONS(309), [anon_sym_LT] = ACTIONS(311), [anon_sym_GT] = ACTIONS(311), [anon_sym_else] = ACTIONS(311), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(311), [anon_sym_AMP] = ACTIONS(311), [anon_sym_DOT_DOT_DOT] = ACTIONS(309), [anon_sym_DOT_DOT] = ACTIONS(311), [anon_sym_DOT_DOT_EQ] = ACTIONS(309), [anon_sym_DASH] = ACTIONS(311), [anon_sym_AMP_AMP] = ACTIONS(309), [anon_sym_PIPE_PIPE] = ACTIONS(309), [anon_sym_PIPE] = ACTIONS(311), [anon_sym_CARET] = ACTIONS(311), [anon_sym_EQ_EQ] = ACTIONS(309), [anon_sym_BANG_EQ] = ACTIONS(309), [anon_sym_LT_EQ] = ACTIONS(309), [anon_sym_GT_EQ] = ACTIONS(309), [anon_sym_LT_LT] = ACTIONS(311), [anon_sym_GT_GT] = ACTIONS(311), [anon_sym_SLASH] = ACTIONS(311), [anon_sym_PERCENT] = ACTIONS(311), [anon_sym_PLUS_EQ] = ACTIONS(309), [anon_sym_DASH_EQ] = ACTIONS(309), [anon_sym_STAR_EQ] = ACTIONS(309), [anon_sym_SLASH_EQ] = ACTIONS(309), [anon_sym_PERCENT_EQ] = ACTIONS(309), [anon_sym_AMP_EQ] = ACTIONS(309), [anon_sym_PIPE_EQ] = ACTIONS(309), [anon_sym_CARET_EQ] = ACTIONS(309), [anon_sym_LT_LT_EQ] = ACTIONS(309), [anon_sym_GT_GT_EQ] = ACTIONS(309), [anon_sym_yield] = ACTIONS(85), [anon_sym_EQ_GT] = ACTIONS(309), [anon_sym_move] = ACTIONS(87), [anon_sym_DOT] = ACTIONS(311), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [20] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(674), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(289), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(289), [anon_sym_RBRACK] = ACTIONS(289), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(291), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_COMMA] = ACTIONS(289), [anon_sym_BANG] = ACTIONS(281), [anon_sym_EQ] = ACTIONS(291), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_RBRACE] = ACTIONS(289), [anon_sym_LPAREN] = ACTIONS(289), [anon_sym_RPAREN] = ACTIONS(289), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(291), [anon_sym_QMARK] = ACTIONS(289), [anon_sym_LT] = ACTIONS(291), [anon_sym_GT] = ACTIONS(291), [anon_sym_else] = ACTIONS(291), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(291), [anon_sym_AMP] = ACTIONS(291), [anon_sym_DOT_DOT_DOT] = ACTIONS(289), [anon_sym_DOT_DOT] = ACTIONS(291), [anon_sym_DOT_DOT_EQ] = ACTIONS(289), [anon_sym_DASH] = ACTIONS(291), [anon_sym_AMP_AMP] = ACTIONS(289), [anon_sym_PIPE_PIPE] = ACTIONS(289), [anon_sym_PIPE] = ACTIONS(291), [anon_sym_CARET] = ACTIONS(291), [anon_sym_EQ_EQ] = ACTIONS(289), [anon_sym_BANG_EQ] = ACTIONS(289), [anon_sym_LT_EQ] = ACTIONS(289), [anon_sym_GT_EQ] = ACTIONS(289), [anon_sym_LT_LT] = ACTIONS(291), [anon_sym_GT_GT] = ACTIONS(291), [anon_sym_SLASH] = ACTIONS(291), [anon_sym_PERCENT] = ACTIONS(291), [anon_sym_PLUS_EQ] = ACTIONS(289), [anon_sym_DASH_EQ] = ACTIONS(289), [anon_sym_STAR_EQ] = ACTIONS(289), [anon_sym_SLASH_EQ] = ACTIONS(289), [anon_sym_PERCENT_EQ] = ACTIONS(289), [anon_sym_AMP_EQ] = ACTIONS(289), [anon_sym_PIPE_EQ] = ACTIONS(289), [anon_sym_CARET_EQ] = ACTIONS(289), [anon_sym_LT_LT_EQ] = ACTIONS(289), [anon_sym_GT_GT_EQ] = ACTIONS(289), [anon_sym_yield] = ACTIONS(85), [anon_sym_EQ_GT] = ACTIONS(289), [anon_sym_move] = ACTIONS(87), [anon_sym_DOT] = ACTIONS(291), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [21] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(771), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(15), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(313), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(313), [anon_sym_RBRACK] = ACTIONS(313), [anon_sym_SQUOTE] = ACTIONS(315), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(317), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_COMMA] = ACTIONS(313), [anon_sym_BANG] = ACTIONS(281), [anon_sym_EQ] = ACTIONS(317), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_RBRACE] = ACTIONS(313), [anon_sym_LPAREN] = ACTIONS(313), [anon_sym_RPAREN] = ACTIONS(313), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(317), [anon_sym_QMARK] = ACTIONS(313), [anon_sym_LT] = ACTIONS(317), [anon_sym_GT] = ACTIONS(317), [anon_sym_else] = ACTIONS(317), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(317), [anon_sym_AMP] = ACTIONS(317), [anon_sym_DOT_DOT_DOT] = ACTIONS(313), [anon_sym_DOT_DOT] = ACTIONS(317), [anon_sym_DOT_DOT_EQ] = ACTIONS(313), [anon_sym_DASH] = ACTIONS(317), [anon_sym_AMP_AMP] = ACTIONS(313), [anon_sym_PIPE_PIPE] = ACTIONS(313), [anon_sym_PIPE] = ACTIONS(317), [anon_sym_CARET] = ACTIONS(317), [anon_sym_EQ_EQ] = ACTIONS(313), [anon_sym_BANG_EQ] = ACTIONS(313), [anon_sym_LT_EQ] = ACTIONS(313), [anon_sym_GT_EQ] = ACTIONS(313), [anon_sym_LT_LT] = ACTIONS(317), [anon_sym_GT_GT] = ACTIONS(317), [anon_sym_SLASH] = ACTIONS(317), [anon_sym_PERCENT] = ACTIONS(317), [anon_sym_PLUS_EQ] = ACTIONS(313), [anon_sym_DASH_EQ] = ACTIONS(313), [anon_sym_STAR_EQ] = ACTIONS(313), [anon_sym_SLASH_EQ] = ACTIONS(313), [anon_sym_PERCENT_EQ] = ACTIONS(313), [anon_sym_AMP_EQ] = ACTIONS(313), [anon_sym_PIPE_EQ] = ACTIONS(313), [anon_sym_CARET_EQ] = ACTIONS(313), [anon_sym_LT_LT_EQ] = ACTIONS(313), [anon_sym_GT_GT_EQ] = ACTIONS(313), [anon_sym_yield] = ACTIONS(85), [anon_sym_EQ_GT] = ACTIONS(313), [anon_sym_move] = ACTIONS(87), [anon_sym_DOT] = ACTIONS(317), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [22] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(706), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(309), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(309), [anon_sym_RBRACK] = ACTIONS(309), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(311), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_COMMA] = ACTIONS(309), [anon_sym_BANG] = ACTIONS(281), [anon_sym_EQ] = ACTIONS(311), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_RBRACE] = ACTIONS(309), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(309), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(311), [anon_sym_QMARK] = ACTIONS(309), [anon_sym_LT] = ACTIONS(311), [anon_sym_GT] = ACTIONS(311), [anon_sym_else] = ACTIONS(311), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(311), [anon_sym_AMP] = ACTIONS(311), [anon_sym_DOT_DOT_DOT] = ACTIONS(309), [anon_sym_DOT_DOT] = ACTIONS(311), [anon_sym_DOT_DOT_EQ] = ACTIONS(309), [anon_sym_DASH] = ACTIONS(311), [anon_sym_AMP_AMP] = ACTIONS(309), [anon_sym_PIPE_PIPE] = ACTIONS(309), [anon_sym_PIPE] = ACTIONS(311), [anon_sym_CARET] = ACTIONS(311), [anon_sym_EQ_EQ] = ACTIONS(309), [anon_sym_BANG_EQ] = ACTIONS(309), [anon_sym_LT_EQ] = ACTIONS(309), [anon_sym_GT_EQ] = ACTIONS(309), [anon_sym_LT_LT] = ACTIONS(311), [anon_sym_GT_GT] = ACTIONS(311), [anon_sym_SLASH] = ACTIONS(311), [anon_sym_PERCENT] = ACTIONS(311), [anon_sym_PLUS_EQ] = ACTIONS(309), [anon_sym_DASH_EQ] = ACTIONS(309), [anon_sym_STAR_EQ] = ACTIONS(309), [anon_sym_SLASH_EQ] = ACTIONS(309), [anon_sym_PERCENT_EQ] = ACTIONS(309), [anon_sym_AMP_EQ] = ACTIONS(309), [anon_sym_PIPE_EQ] = ACTIONS(309), [anon_sym_CARET_EQ] = ACTIONS(309), [anon_sym_LT_LT_EQ] = ACTIONS(309), [anon_sym_GT_GT_EQ] = ACTIONS(309), [anon_sym_yield] = ACTIONS(85), [anon_sym_EQ_GT] = ACTIONS(309), [anon_sym_move] = ACTIONS(87), [anon_sym_DOT] = ACTIONS(311), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [23] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(893), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(261), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(265), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(327), [anon_sym_EQ] = ACTIONS(265), [anon_sym_LBRACE] = ACTIONS(261), [anon_sym_COLON] = ACTIONS(285), [anon_sym_LPAREN] = ACTIONS(261), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(265), [anon_sym_QMARK] = ACTIONS(261), [anon_sym_LT] = ACTIONS(265), [anon_sym_GT] = ACTIONS(265), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(265), [anon_sym_AMP] = ACTIONS(265), [anon_sym_DOT_DOT_DOT] = ACTIONS(261), [anon_sym_DOT_DOT] = ACTIONS(265), [anon_sym_DOT_DOT_EQ] = ACTIONS(261), [anon_sym_DASH] = ACTIONS(265), [anon_sym_AMP_AMP] = ACTIONS(261), [anon_sym_PIPE_PIPE] = ACTIONS(261), [anon_sym_PIPE] = ACTIONS(265), [anon_sym_CARET] = ACTIONS(265), [anon_sym_EQ_EQ] = ACTIONS(261), [anon_sym_BANG_EQ] = ACTIONS(261), [anon_sym_LT_EQ] = ACTIONS(261), [anon_sym_GT_EQ] = ACTIONS(261), [anon_sym_LT_LT] = ACTIONS(265), [anon_sym_GT_GT] = ACTIONS(265), [anon_sym_SLASH] = ACTIONS(265), [anon_sym_PERCENT] = ACTIONS(265), [anon_sym_PLUS_EQ] = ACTIONS(261), [anon_sym_DASH_EQ] = ACTIONS(261), [anon_sym_STAR_EQ] = ACTIONS(261), [anon_sym_SLASH_EQ] = ACTIONS(261), [anon_sym_PERCENT_EQ] = ACTIONS(261), [anon_sym_AMP_EQ] = ACTIONS(261), [anon_sym_PIPE_EQ] = ACTIONS(261), [anon_sym_CARET_EQ] = ACTIONS(261), [anon_sym_LT_LT_EQ] = ACTIONS(261), [anon_sym_GT_GT_EQ] = ACTIONS(261), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [anon_sym_DOT] = ACTIONS(265), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [24] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(848), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(307), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(327), [anon_sym_EQ] = ACTIONS(307), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(307), [anon_sym_QMARK] = ACTIONS(305), [anon_sym_LT] = ACTIONS(297), [anon_sym_GT] = ACTIONS(307), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(327), [anon_sym_AMP] = ACTIONS(339), [anon_sym_DOT_DOT_DOT] = ACTIONS(305), [anon_sym_DOT_DOT] = ACTIONS(341), [anon_sym_DOT_DOT_EQ] = ACTIONS(305), [anon_sym_DASH] = ACTIONS(327), [anon_sym_AMP_AMP] = ACTIONS(305), [anon_sym_PIPE_PIPE] = ACTIONS(305), [anon_sym_PIPE] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(307), [anon_sym_EQ_EQ] = ACTIONS(305), [anon_sym_BANG_EQ] = ACTIONS(305), [anon_sym_LT_EQ] = ACTIONS(305), [anon_sym_GT_EQ] = ACTIONS(305), [anon_sym_LT_LT] = ACTIONS(307), [anon_sym_GT_GT] = ACTIONS(307), [anon_sym_SLASH] = ACTIONS(307), [anon_sym_PERCENT] = ACTIONS(307), [anon_sym_PLUS_EQ] = ACTIONS(305), [anon_sym_DASH_EQ] = ACTIONS(305), [anon_sym_STAR_EQ] = ACTIONS(305), [anon_sym_SLASH_EQ] = ACTIONS(305), [anon_sym_PERCENT_EQ] = ACTIONS(305), [anon_sym_AMP_EQ] = ACTIONS(305), [anon_sym_PIPE_EQ] = ACTIONS(305), [anon_sym_CARET_EQ] = ACTIONS(305), [anon_sym_LT_LT_EQ] = ACTIONS(305), [anon_sym_GT_GT_EQ] = ACTIONS(305), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [anon_sym_DOT] = ACTIONS(307), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [25] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(875), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(23), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(313), [anon_sym_SQUOTE] = ACTIONS(315), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(317), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(327), [anon_sym_EQ] = ACTIONS(317), [anon_sym_LBRACE] = ACTIONS(313), [anon_sym_LPAREN] = ACTIONS(313), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(317), [anon_sym_QMARK] = ACTIONS(313), [anon_sym_LT] = ACTIONS(317), [anon_sym_GT] = ACTIONS(317), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(317), [anon_sym_AMP] = ACTIONS(317), [anon_sym_DOT_DOT_DOT] = ACTIONS(313), [anon_sym_DOT_DOT] = ACTIONS(317), [anon_sym_DOT_DOT_EQ] = ACTIONS(313), [anon_sym_DASH] = ACTIONS(317), [anon_sym_AMP_AMP] = ACTIONS(313), [anon_sym_PIPE_PIPE] = ACTIONS(313), [anon_sym_PIPE] = ACTIONS(317), [anon_sym_CARET] = ACTIONS(317), [anon_sym_EQ_EQ] = ACTIONS(313), [anon_sym_BANG_EQ] = ACTIONS(313), [anon_sym_LT_EQ] = ACTIONS(313), [anon_sym_GT_EQ] = ACTIONS(313), [anon_sym_LT_LT] = ACTIONS(317), [anon_sym_GT_GT] = ACTIONS(317), [anon_sym_SLASH] = ACTIONS(317), [anon_sym_PERCENT] = ACTIONS(317), [anon_sym_PLUS_EQ] = ACTIONS(313), [anon_sym_DASH_EQ] = ACTIONS(313), [anon_sym_STAR_EQ] = ACTIONS(313), [anon_sym_SLASH_EQ] = ACTIONS(313), [anon_sym_PERCENT_EQ] = ACTIONS(313), [anon_sym_AMP_EQ] = ACTIONS(313), [anon_sym_PIPE_EQ] = ACTIONS(313), [anon_sym_CARET_EQ] = ACTIONS(313), [anon_sym_LT_LT_EQ] = ACTIONS(313), [anon_sym_GT_GT_EQ] = ACTIONS(313), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [anon_sym_DOT] = ACTIONS(317), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [26] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(907), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(295), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(327), [anon_sym_EQ] = ACTIONS(295), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(295), [anon_sym_QMARK] = ACTIONS(293), [anon_sym_LT] = ACTIONS(297), [anon_sym_GT] = ACTIONS(295), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(327), [anon_sym_AMP] = ACTIONS(339), [anon_sym_DOT_DOT_DOT] = ACTIONS(293), [anon_sym_DOT_DOT] = ACTIONS(341), [anon_sym_DOT_DOT_EQ] = ACTIONS(293), [anon_sym_DASH] = ACTIONS(327), [anon_sym_AMP_AMP] = ACTIONS(293), [anon_sym_PIPE_PIPE] = ACTIONS(293), [anon_sym_PIPE] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(295), [anon_sym_EQ_EQ] = ACTIONS(293), [anon_sym_BANG_EQ] = ACTIONS(293), [anon_sym_LT_EQ] = ACTIONS(293), [anon_sym_GT_EQ] = ACTIONS(293), [anon_sym_LT_LT] = ACTIONS(295), [anon_sym_GT_GT] = ACTIONS(295), [anon_sym_SLASH] = ACTIONS(295), [anon_sym_PERCENT] = ACTIONS(295), [anon_sym_PLUS_EQ] = ACTIONS(293), [anon_sym_DASH_EQ] = ACTIONS(293), [anon_sym_STAR_EQ] = ACTIONS(293), [anon_sym_SLASH_EQ] = ACTIONS(293), [anon_sym_PERCENT_EQ] = ACTIONS(293), [anon_sym_AMP_EQ] = ACTIONS(293), [anon_sym_PIPE_EQ] = ACTIONS(293), [anon_sym_CARET_EQ] = ACTIONS(293), [anon_sym_LT_LT_EQ] = ACTIONS(293), [anon_sym_GT_GT_EQ] = ACTIONS(293), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [anon_sym_DOT] = ACTIONS(295), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [27] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(674), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(289), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(291), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(327), [anon_sym_EQ] = ACTIONS(291), [anon_sym_LBRACE] = ACTIONS(289), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(291), [anon_sym_QMARK] = ACTIONS(289), [anon_sym_LT] = ACTIONS(291), [anon_sym_GT] = ACTIONS(291), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(291), [anon_sym_AMP] = ACTIONS(291), [anon_sym_DOT_DOT_DOT] = ACTIONS(289), [anon_sym_DOT_DOT] = ACTIONS(291), [anon_sym_DOT_DOT_EQ] = ACTIONS(289), [anon_sym_DASH] = ACTIONS(291), [anon_sym_AMP_AMP] = ACTIONS(289), [anon_sym_PIPE_PIPE] = ACTIONS(289), [anon_sym_PIPE] = ACTIONS(291), [anon_sym_CARET] = ACTIONS(291), [anon_sym_EQ_EQ] = ACTIONS(289), [anon_sym_BANG_EQ] = ACTIONS(289), [anon_sym_LT_EQ] = ACTIONS(289), [anon_sym_GT_EQ] = ACTIONS(289), [anon_sym_LT_LT] = ACTIONS(291), [anon_sym_GT_GT] = ACTIONS(291), [anon_sym_SLASH] = ACTIONS(291), [anon_sym_PERCENT] = ACTIONS(291), [anon_sym_PLUS_EQ] = ACTIONS(289), [anon_sym_DASH_EQ] = ACTIONS(289), [anon_sym_STAR_EQ] = ACTIONS(289), [anon_sym_SLASH_EQ] = ACTIONS(289), [anon_sym_PERCENT_EQ] = ACTIONS(289), [anon_sym_AMP_EQ] = ACTIONS(289), [anon_sym_PIPE_EQ] = ACTIONS(289), [anon_sym_CARET_EQ] = ACTIONS(289), [anon_sym_LT_LT_EQ] = ACTIONS(289), [anon_sym_GT_GT_EQ] = ACTIONS(289), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [anon_sym_DOT] = ACTIONS(291), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [28] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(674), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(289), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(291), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(327), [anon_sym_EQ] = ACTIONS(291), [anon_sym_LBRACE] = ACTIONS(289), [anon_sym_LPAREN] = ACTIONS(289), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(291), [anon_sym_QMARK] = ACTIONS(289), [anon_sym_LT] = ACTIONS(291), [anon_sym_GT] = ACTIONS(291), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(291), [anon_sym_AMP] = ACTIONS(291), [anon_sym_DOT_DOT_DOT] = ACTIONS(289), [anon_sym_DOT_DOT] = ACTIONS(291), [anon_sym_DOT_DOT_EQ] = ACTIONS(289), [anon_sym_DASH] = ACTIONS(291), [anon_sym_AMP_AMP] = ACTIONS(289), [anon_sym_PIPE_PIPE] = ACTIONS(289), [anon_sym_PIPE] = ACTIONS(291), [anon_sym_CARET] = ACTIONS(291), [anon_sym_EQ_EQ] = ACTIONS(289), [anon_sym_BANG_EQ] = ACTIONS(289), [anon_sym_LT_EQ] = ACTIONS(289), [anon_sym_GT_EQ] = ACTIONS(289), [anon_sym_LT_LT] = ACTIONS(291), [anon_sym_GT_GT] = ACTIONS(291), [anon_sym_SLASH] = ACTIONS(291), [anon_sym_PERCENT] = ACTIONS(291), [anon_sym_PLUS_EQ] = ACTIONS(289), [anon_sym_DASH_EQ] = ACTIONS(289), [anon_sym_STAR_EQ] = ACTIONS(289), [anon_sym_SLASH_EQ] = ACTIONS(289), [anon_sym_PERCENT_EQ] = ACTIONS(289), [anon_sym_AMP_EQ] = ACTIONS(289), [anon_sym_PIPE_EQ] = ACTIONS(289), [anon_sym_CARET_EQ] = ACTIONS(289), [anon_sym_LT_LT_EQ] = ACTIONS(289), [anon_sym_GT_GT_EQ] = ACTIONS(289), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [anon_sym_DOT] = ACTIONS(291), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [29] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(706), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(309), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(311), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(327), [anon_sym_EQ] = ACTIONS(311), [anon_sym_LBRACE] = ACTIONS(309), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(311), [anon_sym_QMARK] = ACTIONS(309), [anon_sym_LT] = ACTIONS(311), [anon_sym_GT] = ACTIONS(311), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(311), [anon_sym_AMP] = ACTIONS(311), [anon_sym_DOT_DOT_DOT] = ACTIONS(309), [anon_sym_DOT_DOT] = ACTIONS(311), [anon_sym_DOT_DOT_EQ] = ACTIONS(309), [anon_sym_DASH] = ACTIONS(311), [anon_sym_AMP_AMP] = ACTIONS(309), [anon_sym_PIPE_PIPE] = ACTIONS(309), [anon_sym_PIPE] = ACTIONS(311), [anon_sym_CARET] = ACTIONS(311), [anon_sym_EQ_EQ] = ACTIONS(309), [anon_sym_BANG_EQ] = ACTIONS(309), [anon_sym_LT_EQ] = ACTIONS(309), [anon_sym_GT_EQ] = ACTIONS(309), [anon_sym_LT_LT] = ACTIONS(311), [anon_sym_GT_GT] = ACTIONS(311), [anon_sym_SLASH] = ACTIONS(311), [anon_sym_PERCENT] = ACTIONS(311), [anon_sym_PLUS_EQ] = ACTIONS(309), [anon_sym_DASH_EQ] = ACTIONS(309), [anon_sym_STAR_EQ] = ACTIONS(309), [anon_sym_SLASH_EQ] = ACTIONS(309), [anon_sym_PERCENT_EQ] = ACTIONS(309), [anon_sym_AMP_EQ] = ACTIONS(309), [anon_sym_PIPE_EQ] = ACTIONS(309), [anon_sym_CARET_EQ] = ACTIONS(309), [anon_sym_LT_LT_EQ] = ACTIONS(309), [anon_sym_GT_GT_EQ] = ACTIONS(309), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [anon_sym_DOT] = ACTIONS(311), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [30] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(706), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(309), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_as] = ACTIONS(311), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(327), [anon_sym_EQ] = ACTIONS(311), [anon_sym_LBRACE] = ACTIONS(309), [anon_sym_LPAREN] = ACTIONS(309), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(311), [anon_sym_QMARK] = ACTIONS(309), [anon_sym_LT] = ACTIONS(311), [anon_sym_GT] = ACTIONS(311), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(311), [anon_sym_AMP] = ACTIONS(311), [anon_sym_DOT_DOT_DOT] = ACTIONS(309), [anon_sym_DOT_DOT] = ACTIONS(311), [anon_sym_DOT_DOT_EQ] = ACTIONS(309), [anon_sym_DASH] = ACTIONS(311), [anon_sym_AMP_AMP] = ACTIONS(309), [anon_sym_PIPE_PIPE] = ACTIONS(309), [anon_sym_PIPE] = ACTIONS(311), [anon_sym_CARET] = ACTIONS(311), [anon_sym_EQ_EQ] = ACTIONS(309), [anon_sym_BANG_EQ] = ACTIONS(309), [anon_sym_LT_EQ] = ACTIONS(309), [anon_sym_GT_EQ] = ACTIONS(309), [anon_sym_LT_LT] = ACTIONS(311), [anon_sym_GT_GT] = ACTIONS(311), [anon_sym_SLASH] = ACTIONS(311), [anon_sym_PERCENT] = ACTIONS(311), [anon_sym_PLUS_EQ] = ACTIONS(309), [anon_sym_DASH_EQ] = ACTIONS(309), [anon_sym_STAR_EQ] = ACTIONS(309), [anon_sym_SLASH_EQ] = ACTIONS(309), [anon_sym_PERCENT_EQ] = ACTIONS(309), [anon_sym_AMP_EQ] = ACTIONS(309), [anon_sym_PIPE_EQ] = ACTIONS(309), [anon_sym_CARET_EQ] = ACTIONS(309), [anon_sym_LT_LT_EQ] = ACTIONS(309), [anon_sym_GT_GT_EQ] = ACTIONS(309), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [anon_sym_DOT] = ACTIONS(311), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [31] = { [sym_primitive_type] = STATE(802), [sym_attribute_item] = STATE(47), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1776), [sym_bracketed_type] = STATE(2166), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1427), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(812), [sym_scoped_identifier] = STATE(803), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(47), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(343), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_RBRACK] = ACTIONS(347), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(351), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_COMMA] = ACTIONS(359), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(363), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(365), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(369), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(371), [sym_metavariable] = ACTIONS(373), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [32] = { [sym_primitive_type] = STATE(809), [sym_attribute_item] = STATE(84), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1489), [sym_bracketed_type] = STATE(2167), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1433), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(896), [sym_scoped_identifier] = STATE(815), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(84), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(375), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(377), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(379), [anon_sym_RPAREN] = ACTIONS(381), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(383), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(385), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(387), [sym_metavariable] = ACTIONS(389), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [33] = { [sym_primitive_type] = STATE(809), [sym_attribute_item] = STATE(84), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1489), [sym_bracketed_type] = STATE(2167), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1433), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(896), [sym_scoped_identifier] = STATE(815), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(84), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(375), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(377), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(379), [anon_sym_RPAREN] = ACTIONS(391), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(383), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(385), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(387), [sym_metavariable] = ACTIONS(389), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [34] = { [sym_primitive_type] = STATE(809), [sym_attribute_item] = STATE(84), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1489), [sym_bracketed_type] = STATE(2167), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1433), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(896), [sym_scoped_identifier] = STATE(815), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(84), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(375), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(377), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(379), [anon_sym_RPAREN] = ACTIONS(393), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(383), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(385), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(387), [sym_metavariable] = ACTIONS(389), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [35] = { [sym_primitive_type] = STATE(809), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1186), [sym_bracketed_type] = STATE(2167), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1433), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(772), [sym_scoped_identifier] = STATE(815), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(375), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(377), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(379), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(383), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(385), [sym_mutable_specifier] = ACTIONS(395), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(387), [sym_metavariable] = ACTIONS(389), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [36] = { [sym_primitive_type] = STATE(802), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1186), [sym_bracketed_type] = STATE(2166), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1427), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(772), [sym_scoped_identifier] = STATE(803), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(343), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(351), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(363), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(365), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(369), [sym_mutable_specifier] = ACTIONS(399), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(371), [sym_metavariable] = ACTIONS(373), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [37] = { [sym_primitive_type] = STATE(814), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1186), [sym_bracketed_type] = STATE(2165), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1371), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(772), [sym_scoped_identifier] = STATE(898), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(401), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(403), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(405), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(407), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(409), [sym_mutable_specifier] = ACTIONS(411), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(413), [sym_metavariable] = ACTIONS(415), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [38] = { [sym_primitive_type] = STATE(809), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1189), [sym_bracketed_type] = STATE(2167), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1433), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(773), [sym_scoped_identifier] = STATE(815), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(375), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(377), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(379), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(383), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(385), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(387), [sym_metavariable] = ACTIONS(389), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [39] = { [sym_primitive_type] = STATE(814), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1189), [sym_bracketed_type] = STATE(2165), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1371), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(773), [sym_scoped_identifier] = STATE(898), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(401), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(403), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(405), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(407), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(409), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(413), [sym_metavariable] = ACTIONS(415), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [40] = { [sym_primitive_type] = STATE(802), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1189), [sym_bracketed_type] = STATE(2166), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1427), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(773), [sym_scoped_identifier] = STATE(803), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(343), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(351), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(363), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(365), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(369), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(371), [sym_metavariable] = ACTIONS(373), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [41] = { [sym_primitive_type] = STATE(814), [sym_asm_item] = STATE(751), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1618), [sym_bracketed_type] = STATE(2165), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_function] = STATE(653), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1371), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(941), [sym_scoped_identifier] = STATE(898), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_scoped_type_identifier] = STATE(1170), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(819), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(819), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(401), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(345), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(349), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(403), [anon_sym_fn] = ACTIONS(353), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_impl] = ACTIONS(355), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(361), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(405), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(407), [anon_sym_STAR] = ACTIONS(367), [anon_sym_AMP] = ACTIONS(409), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(417), [sym_metavariable] = ACTIONS(415), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [42] = { [sym_else_clause] = STATE(79), [ts_builtin_sym_end] = ACTIONS(419), [sym_identifier] = ACTIONS(421), [anon_sym_SEMI] = ACTIONS(419), [anon_sym_u8] = ACTIONS(421), [anon_sym_i8] = ACTIONS(421), [anon_sym_u16] = ACTIONS(421), [anon_sym_i16] = ACTIONS(421), [anon_sym_u32] = ACTIONS(421), [anon_sym_i32] = ACTIONS(421), [anon_sym_u64] = ACTIONS(421), [anon_sym_i64] = ACTIONS(421), [anon_sym_u128] = ACTIONS(421), [anon_sym_i128] = ACTIONS(421), [anon_sym_u256] = ACTIONS(421), [anon_sym_i256] = ACTIONS(421), [anon_sym_b256] = ACTIONS(421), [anon_sym_isize] = ACTIONS(421), [anon_sym_usize] = ACTIONS(421), [anon_sym_f32] = ACTIONS(421), [anon_sym_f64] = ACTIONS(421), [anon_sym_bool] = ACTIONS(421), [anon_sym_char] = ACTIONS(421), [anon_sym_str] = ACTIONS(421), [anon_sym_LBRACK] = ACTIONS(419), [anon_sym_contract] = ACTIONS(421), [anon_sym_script] = ACTIONS(421), [anon_sym_predicate] = ACTIONS(421), [anon_sym_library] = ACTIONS(421), [anon_sym_SQUOTE] = ACTIONS(421), [anon_sym_abi] = ACTIONS(421), [anon_sym_as] = ACTIONS(421), [anon_sym_break] = ACTIONS(421), [anon_sym_configurable] = ACTIONS(421), [anon_sym_const] = ACTIONS(421), [anon_sym_continue] = ACTIONS(421), [anon_sym_default] = ACTIONS(421), [anon_sym_mod] = ACTIONS(421), [anon_sym_enum] = ACTIONS(421), [anon_sym_fn] = ACTIONS(421), [anon_sym_for] = ACTIONS(421), [anon_sym_if] = ACTIONS(421), [anon_sym_impl] = ACTIONS(421), [anon_sym_let] = ACTIONS(421), [anon_sym_match] = ACTIONS(421), [anon_sym_pub] = ACTIONS(421), [anon_sym_return] = ACTIONS(421), [anon_sym_storage] = ACTIONS(421), [anon_sym_struct] = ACTIONS(421), [anon_sym_trait] = ACTIONS(421), [anon_sym_type] = ACTIONS(421), [anon_sym_use] = ACTIONS(421), [anon_sym_while] = ACTIONS(421), [anon_sym_POUND] = ACTIONS(419), [anon_sym_BANG] = ACTIONS(421), [anon_sym_EQ] = ACTIONS(421), [anon_sym_LBRACE] = ACTIONS(419), [anon_sym_RBRACE] = ACTIONS(419), [anon_sym_LPAREN] = ACTIONS(419), [anon_sym_asm] = ACTIONS(421), [anon_sym_PLUS] = ACTIONS(421), [anon_sym_QMARK] = ACTIONS(419), [anon_sym_LT] = ACTIONS(421), [anon_sym_GT] = ACTIONS(421), [anon_sym_else] = ACTIONS(423), [anon_sym_COLON_COLON] = ACTIONS(419), [anon_sym_STAR] = ACTIONS(421), [anon_sym_AMP] = ACTIONS(421), [anon_sym_DOT_DOT_DOT] = ACTIONS(419), [anon_sym_DOT_DOT] = ACTIONS(421), [anon_sym_DOT_DOT_EQ] = ACTIONS(419), [anon_sym_DASH] = ACTIONS(421), [anon_sym_AMP_AMP] = ACTIONS(419), [anon_sym_PIPE_PIPE] = ACTIONS(419), [anon_sym_PIPE] = ACTIONS(421), [anon_sym_CARET] = ACTIONS(421), [anon_sym_EQ_EQ] = ACTIONS(419), [anon_sym_BANG_EQ] = ACTIONS(419), [anon_sym_LT_EQ] = ACTIONS(419), [anon_sym_GT_EQ] = ACTIONS(419), [anon_sym_LT_LT] = ACTIONS(421), [anon_sym_GT_GT] = ACTIONS(421), [anon_sym_SLASH] = ACTIONS(421), [anon_sym_PERCENT] = ACTIONS(421), [anon_sym_PLUS_EQ] = ACTIONS(419), [anon_sym_DASH_EQ] = ACTIONS(419), [anon_sym_STAR_EQ] = ACTIONS(419), [anon_sym_SLASH_EQ] = ACTIONS(419), [anon_sym_PERCENT_EQ] = ACTIONS(419), [anon_sym_AMP_EQ] = ACTIONS(419), [anon_sym_PIPE_EQ] = ACTIONS(419), [anon_sym_CARET_EQ] = ACTIONS(419), [anon_sym_LT_LT_EQ] = ACTIONS(419), [anon_sym_GT_GT_EQ] = ACTIONS(419), [anon_sym_yield] = ACTIONS(421), [anon_sym_move] = ACTIONS(421), [anon_sym_DOT] = ACTIONS(421), [sym_integer_literal] = ACTIONS(419), [aux_sym_string_literal_token1] = ACTIONS(419), [sym_char_literal] = ACTIONS(419), [anon_sym_true] = ACTIONS(421), [anon_sym_false] = ACTIONS(421), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(421), [sym_metavariable] = ACTIONS(419), [sym_raw_string_literal] = ACTIONS(419), [sym_float_literal] = ACTIONS(419), [sym_block_comment] = ACTIONS(3), }, [43] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(757), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(425), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_RBRACK] = ACTIONS(425), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_COMMA] = ACTIONS(425), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(425), [anon_sym_asm] = ACTIONS(287), [anon_sym_PLUS] = ACTIONS(425), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [44] = { [ts_builtin_sym_end] = ACTIONS(427), [sym_identifier] = ACTIONS(429), [anon_sym_SEMI] = ACTIONS(427), [anon_sym_u8] = ACTIONS(429), [anon_sym_i8] = ACTIONS(429), [anon_sym_u16] = ACTIONS(429), [anon_sym_i16] = ACTIONS(429), [anon_sym_u32] = ACTIONS(429), [anon_sym_i32] = ACTIONS(429), [anon_sym_u64] = ACTIONS(429), [anon_sym_i64] = ACTIONS(429), [anon_sym_u128] = ACTIONS(429), [anon_sym_i128] = ACTIONS(429), [anon_sym_u256] = ACTIONS(429), [anon_sym_i256] = ACTIONS(429), [anon_sym_b256] = ACTIONS(429), [anon_sym_isize] = ACTIONS(429), [anon_sym_usize] = ACTIONS(429), [anon_sym_f32] = ACTIONS(429), [anon_sym_f64] = ACTIONS(429), [anon_sym_bool] = ACTIONS(429), [anon_sym_char] = ACTIONS(429), [anon_sym_str] = ACTIONS(429), [anon_sym_LBRACK] = ACTIONS(427), [anon_sym_contract] = ACTIONS(429), [anon_sym_script] = ACTIONS(429), [anon_sym_predicate] = ACTIONS(429), [anon_sym_library] = ACTIONS(429), [anon_sym_SQUOTE] = ACTIONS(429), [anon_sym_abi] = ACTIONS(429), [anon_sym_as] = ACTIONS(429), [anon_sym_break] = ACTIONS(429), [anon_sym_configurable] = ACTIONS(429), [anon_sym_const] = ACTIONS(429), [anon_sym_continue] = ACTIONS(429), [anon_sym_default] = ACTIONS(429), [anon_sym_mod] = ACTIONS(429), [anon_sym_enum] = ACTIONS(429), [anon_sym_fn] = ACTIONS(429), [anon_sym_for] = ACTIONS(429), [anon_sym_if] = ACTIONS(429), [anon_sym_impl] = ACTIONS(429), [anon_sym_let] = ACTIONS(429), [anon_sym_match] = ACTIONS(429), [anon_sym_pub] = ACTIONS(429), [anon_sym_return] = ACTIONS(429), [anon_sym_storage] = ACTIONS(429), [anon_sym_struct] = ACTIONS(429), [anon_sym_trait] = ACTIONS(429), [anon_sym_type] = ACTIONS(429), [anon_sym_use] = ACTIONS(429), [anon_sym_while] = ACTIONS(429), [anon_sym_POUND] = ACTIONS(427), [anon_sym_BANG] = ACTIONS(429), [anon_sym_EQ] = ACTIONS(429), [anon_sym_LBRACE] = ACTIONS(427), [anon_sym_RBRACE] = ACTIONS(427), [anon_sym_LPAREN] = ACTIONS(427), [anon_sym_asm] = ACTIONS(429), [anon_sym_PLUS] = ACTIONS(429), [anon_sym_QMARK] = ACTIONS(427), [anon_sym_LT] = ACTIONS(429), [anon_sym_GT] = ACTIONS(429), [anon_sym_else] = ACTIONS(429), [anon_sym_COLON_COLON] = ACTIONS(427), [anon_sym_STAR] = ACTIONS(429), [anon_sym_AMP] = ACTIONS(429), [anon_sym_DOT_DOT_DOT] = ACTIONS(427), [anon_sym_DOT_DOT] = ACTIONS(429), [anon_sym_DOT_DOT_EQ] = ACTIONS(427), [anon_sym_DASH] = ACTIONS(429), [anon_sym_AMP_AMP] = ACTIONS(427), [anon_sym_PIPE_PIPE] = ACTIONS(427), [anon_sym_PIPE] = ACTIONS(429), [anon_sym_CARET] = ACTIONS(429), [anon_sym_EQ_EQ] = ACTIONS(427), [anon_sym_BANG_EQ] = ACTIONS(427), [anon_sym_LT_EQ] = ACTIONS(427), [anon_sym_GT_EQ] = ACTIONS(427), [anon_sym_LT_LT] = ACTIONS(429), [anon_sym_GT_GT] = ACTIONS(429), [anon_sym_SLASH] = ACTIONS(429), [anon_sym_PERCENT] = ACTIONS(429), [anon_sym_PLUS_EQ] = ACTIONS(427), [anon_sym_DASH_EQ] = ACTIONS(427), [anon_sym_STAR_EQ] = ACTIONS(427), [anon_sym_SLASH_EQ] = ACTIONS(427), [anon_sym_PERCENT_EQ] = ACTIONS(427), [anon_sym_AMP_EQ] = ACTIONS(427), [anon_sym_PIPE_EQ] = ACTIONS(427), [anon_sym_CARET_EQ] = ACTIONS(427), [anon_sym_LT_LT_EQ] = ACTIONS(427), [anon_sym_GT_GT_EQ] = ACTIONS(427), [anon_sym_yield] = ACTIONS(429), [anon_sym_move] = ACTIONS(429), [anon_sym_DOT] = ACTIONS(429), [sym_integer_literal] = ACTIONS(427), [aux_sym_string_literal_token1] = ACTIONS(427), [sym_char_literal] = ACTIONS(427), [anon_sym_true] = ACTIONS(429), [anon_sym_false] = ACTIONS(429), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(429), [sym_metavariable] = ACTIONS(427), [sym_raw_string_literal] = ACTIONS(427), [sym_float_literal] = ACTIONS(427), [sym_block_comment] = ACTIONS(3), }, [45] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(80), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(830), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(80), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_COMMA] = ACTIONS(431), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(433), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [46] = { [ts_builtin_sym_end] = ACTIONS(435), [sym_identifier] = ACTIONS(437), [anon_sym_SEMI] = ACTIONS(435), [anon_sym_u8] = ACTIONS(437), [anon_sym_i8] = ACTIONS(437), [anon_sym_u16] = ACTIONS(437), [anon_sym_i16] = ACTIONS(437), [anon_sym_u32] = ACTIONS(437), [anon_sym_i32] = ACTIONS(437), [anon_sym_u64] = ACTIONS(437), [anon_sym_i64] = ACTIONS(437), [anon_sym_u128] = ACTIONS(437), [anon_sym_i128] = ACTIONS(437), [anon_sym_u256] = ACTIONS(437), [anon_sym_i256] = ACTIONS(437), [anon_sym_b256] = ACTIONS(437), [anon_sym_isize] = ACTIONS(437), [anon_sym_usize] = ACTIONS(437), [anon_sym_f32] = ACTIONS(437), [anon_sym_f64] = ACTIONS(437), [anon_sym_bool] = ACTIONS(437), [anon_sym_char] = ACTIONS(437), [anon_sym_str] = ACTIONS(437), [anon_sym_LBRACK] = ACTIONS(435), [anon_sym_contract] = ACTIONS(437), [anon_sym_script] = ACTIONS(437), [anon_sym_predicate] = ACTIONS(437), [anon_sym_library] = ACTIONS(437), [anon_sym_SQUOTE] = ACTIONS(437), [anon_sym_abi] = ACTIONS(437), [anon_sym_as] = ACTIONS(437), [anon_sym_break] = ACTIONS(437), [anon_sym_configurable] = ACTIONS(437), [anon_sym_const] = ACTIONS(437), [anon_sym_continue] = ACTIONS(437), [anon_sym_default] = ACTIONS(437), [anon_sym_mod] = ACTIONS(437), [anon_sym_enum] = ACTIONS(437), [anon_sym_fn] = ACTIONS(437), [anon_sym_for] = ACTIONS(437), [anon_sym_if] = ACTIONS(437), [anon_sym_impl] = ACTIONS(437), [anon_sym_let] = ACTIONS(437), [anon_sym_match] = ACTIONS(437), [anon_sym_pub] = ACTIONS(437), [anon_sym_return] = ACTIONS(437), [anon_sym_storage] = ACTIONS(437), [anon_sym_struct] = ACTIONS(437), [anon_sym_trait] = ACTIONS(437), [anon_sym_type] = ACTIONS(437), [anon_sym_use] = ACTIONS(437), [anon_sym_while] = ACTIONS(437), [anon_sym_POUND] = ACTIONS(435), [anon_sym_BANG] = ACTIONS(437), [anon_sym_EQ] = ACTIONS(437), [anon_sym_LBRACE] = ACTIONS(435), [anon_sym_RBRACE] = ACTIONS(435), [anon_sym_LPAREN] = ACTIONS(435), [anon_sym_asm] = ACTIONS(437), [anon_sym_PLUS] = ACTIONS(437), [anon_sym_QMARK] = ACTIONS(435), [anon_sym_LT] = ACTIONS(437), [anon_sym_GT] = ACTIONS(437), [anon_sym_else] = ACTIONS(437), [anon_sym_COLON_COLON] = ACTIONS(435), [anon_sym_STAR] = ACTIONS(437), [anon_sym_AMP] = ACTIONS(437), [anon_sym_DOT_DOT_DOT] = ACTIONS(435), [anon_sym_DOT_DOT] = ACTIONS(437), [anon_sym_DOT_DOT_EQ] = ACTIONS(435), [anon_sym_DASH] = ACTIONS(437), [anon_sym_AMP_AMP] = ACTIONS(435), [anon_sym_PIPE_PIPE] = ACTIONS(435), [anon_sym_PIPE] = ACTIONS(437), [anon_sym_CARET] = ACTIONS(437), [anon_sym_EQ_EQ] = ACTIONS(435), [anon_sym_BANG_EQ] = ACTIONS(435), [anon_sym_LT_EQ] = ACTIONS(435), [anon_sym_GT_EQ] = ACTIONS(435), [anon_sym_LT_LT] = ACTIONS(437), [anon_sym_GT_GT] = ACTIONS(437), [anon_sym_SLASH] = ACTIONS(437), [anon_sym_PERCENT] = ACTIONS(437), [anon_sym_PLUS_EQ] = ACTIONS(435), [anon_sym_DASH_EQ] = ACTIONS(435), [anon_sym_STAR_EQ] = ACTIONS(435), [anon_sym_SLASH_EQ] = ACTIONS(435), [anon_sym_PERCENT_EQ] = ACTIONS(435), [anon_sym_AMP_EQ] = ACTIONS(435), [anon_sym_PIPE_EQ] = ACTIONS(435), [anon_sym_CARET_EQ] = ACTIONS(435), [anon_sym_LT_LT_EQ] = ACTIONS(435), [anon_sym_GT_GT_EQ] = ACTIONS(435), [anon_sym_yield] = ACTIONS(437), [anon_sym_move] = ACTIONS(437), [anon_sym_DOT] = ACTIONS(437), [sym_integer_literal] = ACTIONS(435), [aux_sym_string_literal_token1] = ACTIONS(435), [sym_char_literal] = ACTIONS(435), [anon_sym_true] = ACTIONS(437), [anon_sym_false] = ACTIONS(437), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(437), [sym_metavariable] = ACTIONS(435), [sym_raw_string_literal] = ACTIONS(435), [sym_float_literal] = ACTIONS(435), [sym_block_comment] = ACTIONS(3), }, [47] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(474), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(816), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(474), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_RBRACK] = ACTIONS(439), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_COMMA] = ACTIONS(441), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [48] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(47), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(812), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(47), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_RBRACK] = ACTIONS(347), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_COMMA] = ACTIONS(359), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [49] = { [ts_builtin_sym_end] = ACTIONS(443), [sym_identifier] = ACTIONS(445), [anon_sym_SEMI] = ACTIONS(443), [anon_sym_u8] = ACTIONS(445), [anon_sym_i8] = ACTIONS(445), [anon_sym_u16] = ACTIONS(445), [anon_sym_i16] = ACTIONS(445), [anon_sym_u32] = ACTIONS(445), [anon_sym_i32] = ACTIONS(445), [anon_sym_u64] = ACTIONS(445), [anon_sym_i64] = ACTIONS(445), [anon_sym_u128] = ACTIONS(445), [anon_sym_i128] = ACTIONS(445), [anon_sym_u256] = ACTIONS(445), [anon_sym_i256] = ACTIONS(445), [anon_sym_b256] = ACTIONS(445), [anon_sym_isize] = ACTIONS(445), [anon_sym_usize] = ACTIONS(445), [anon_sym_f32] = ACTIONS(445), [anon_sym_f64] = ACTIONS(445), [anon_sym_bool] = ACTIONS(445), [anon_sym_char] = ACTIONS(445), [anon_sym_str] = ACTIONS(445), [anon_sym_LBRACK] = ACTIONS(443), [anon_sym_contract] = ACTIONS(445), [anon_sym_script] = ACTIONS(445), [anon_sym_predicate] = ACTIONS(445), [anon_sym_library] = ACTIONS(445), [anon_sym_SQUOTE] = ACTIONS(445), [anon_sym_abi] = ACTIONS(445), [anon_sym_as] = ACTIONS(445), [anon_sym_break] = ACTIONS(445), [anon_sym_configurable] = ACTIONS(445), [anon_sym_const] = ACTIONS(445), [anon_sym_continue] = ACTIONS(445), [anon_sym_default] = ACTIONS(445), [anon_sym_mod] = ACTIONS(445), [anon_sym_enum] = ACTIONS(445), [anon_sym_fn] = ACTIONS(445), [anon_sym_for] = ACTIONS(445), [anon_sym_if] = ACTIONS(445), [anon_sym_impl] = ACTIONS(445), [anon_sym_let] = ACTIONS(445), [anon_sym_match] = ACTIONS(445), [anon_sym_pub] = ACTIONS(445), [anon_sym_return] = ACTIONS(445), [anon_sym_storage] = ACTIONS(445), [anon_sym_struct] = ACTIONS(445), [anon_sym_trait] = ACTIONS(445), [anon_sym_type] = ACTIONS(445), [anon_sym_use] = ACTIONS(445), [anon_sym_while] = ACTIONS(445), [anon_sym_POUND] = ACTIONS(443), [anon_sym_BANG] = ACTIONS(445), [anon_sym_EQ] = ACTIONS(445), [anon_sym_LBRACE] = ACTIONS(443), [anon_sym_RBRACE] = ACTIONS(443), [anon_sym_LPAREN] = ACTIONS(443), [anon_sym_asm] = ACTIONS(445), [anon_sym_PLUS] = ACTIONS(445), [anon_sym_QMARK] = ACTIONS(443), [anon_sym_LT] = ACTIONS(445), [anon_sym_GT] = ACTIONS(445), [anon_sym_else] = ACTIONS(445), [anon_sym_COLON_COLON] = ACTIONS(443), [anon_sym_STAR] = ACTIONS(445), [anon_sym_AMP] = ACTIONS(445), [anon_sym_DOT_DOT_DOT] = ACTIONS(443), [anon_sym_DOT_DOT] = ACTIONS(445), [anon_sym_DOT_DOT_EQ] = ACTIONS(443), [anon_sym_DASH] = ACTIONS(445), [anon_sym_AMP_AMP] = ACTIONS(443), [anon_sym_PIPE_PIPE] = ACTIONS(443), [anon_sym_PIPE] = ACTIONS(445), [anon_sym_CARET] = ACTIONS(445), [anon_sym_EQ_EQ] = ACTIONS(443), [anon_sym_BANG_EQ] = ACTIONS(443), [anon_sym_LT_EQ] = ACTIONS(443), [anon_sym_GT_EQ] = ACTIONS(443), [anon_sym_LT_LT] = ACTIONS(445), [anon_sym_GT_GT] = ACTIONS(445), [anon_sym_SLASH] = ACTIONS(445), [anon_sym_PERCENT] = ACTIONS(445), [anon_sym_PLUS_EQ] = ACTIONS(443), [anon_sym_DASH_EQ] = ACTIONS(443), [anon_sym_STAR_EQ] = ACTIONS(443), [anon_sym_SLASH_EQ] = ACTIONS(443), [anon_sym_PERCENT_EQ] = ACTIONS(443), [anon_sym_AMP_EQ] = ACTIONS(443), [anon_sym_PIPE_EQ] = ACTIONS(443), [anon_sym_CARET_EQ] = ACTIONS(443), [anon_sym_LT_LT_EQ] = ACTIONS(443), [anon_sym_GT_GT_EQ] = ACTIONS(443), [anon_sym_yield] = ACTIONS(445), [anon_sym_move] = ACTIONS(445), [anon_sym_DOT] = ACTIONS(445), [sym_integer_literal] = ACTIONS(443), [aux_sym_string_literal_token1] = ACTIONS(443), [sym_char_literal] = ACTIONS(443), [anon_sym_true] = ACTIONS(445), [anon_sym_false] = ACTIONS(445), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(445), [sym_metavariable] = ACTIONS(443), [sym_raw_string_literal] = ACTIONS(443), [sym_float_literal] = ACTIONS(443), [sym_block_comment] = ACTIONS(3), }, [50] = { [ts_builtin_sym_end] = ACTIONS(447), [sym_identifier] = ACTIONS(449), [anon_sym_SEMI] = ACTIONS(447), [anon_sym_u8] = ACTIONS(449), [anon_sym_i8] = ACTIONS(449), [anon_sym_u16] = ACTIONS(449), [anon_sym_i16] = ACTIONS(449), [anon_sym_u32] = ACTIONS(449), [anon_sym_i32] = ACTIONS(449), [anon_sym_u64] = ACTIONS(449), [anon_sym_i64] = ACTIONS(449), [anon_sym_u128] = ACTIONS(449), [anon_sym_i128] = ACTIONS(449), [anon_sym_u256] = ACTIONS(449), [anon_sym_i256] = ACTIONS(449), [anon_sym_b256] = ACTIONS(449), [anon_sym_isize] = ACTIONS(449), [anon_sym_usize] = ACTIONS(449), [anon_sym_f32] = ACTIONS(449), [anon_sym_f64] = ACTIONS(449), [anon_sym_bool] = ACTIONS(449), [anon_sym_char] = ACTIONS(449), [anon_sym_str] = ACTIONS(449), [anon_sym_LBRACK] = ACTIONS(447), [anon_sym_contract] = ACTIONS(449), [anon_sym_script] = ACTIONS(449), [anon_sym_predicate] = ACTIONS(449), [anon_sym_library] = ACTIONS(449), [anon_sym_SQUOTE] = ACTIONS(449), [anon_sym_abi] = ACTIONS(449), [anon_sym_as] = ACTIONS(449), [anon_sym_break] = ACTIONS(449), [anon_sym_configurable] = ACTIONS(449), [anon_sym_const] = ACTIONS(449), [anon_sym_continue] = ACTIONS(449), [anon_sym_default] = ACTIONS(449), [anon_sym_mod] = ACTIONS(449), [anon_sym_enum] = ACTIONS(449), [anon_sym_fn] = ACTIONS(449), [anon_sym_for] = ACTIONS(449), [anon_sym_if] = ACTIONS(449), [anon_sym_impl] = ACTIONS(449), [anon_sym_let] = ACTIONS(449), [anon_sym_match] = ACTIONS(449), [anon_sym_pub] = ACTIONS(449), [anon_sym_return] = ACTIONS(449), [anon_sym_storage] = ACTIONS(449), [anon_sym_struct] = ACTIONS(449), [anon_sym_trait] = ACTIONS(449), [anon_sym_type] = ACTIONS(449), [anon_sym_use] = ACTIONS(449), [anon_sym_while] = ACTIONS(449), [anon_sym_POUND] = ACTIONS(447), [anon_sym_BANG] = ACTIONS(449), [anon_sym_EQ] = ACTIONS(449), [anon_sym_LBRACE] = ACTIONS(447), [anon_sym_RBRACE] = ACTIONS(447), [anon_sym_LPAREN] = ACTIONS(447), [anon_sym_asm] = ACTIONS(449), [anon_sym_PLUS] = ACTIONS(449), [anon_sym_QMARK] = ACTIONS(447), [anon_sym_LT] = ACTIONS(449), [anon_sym_GT] = ACTIONS(449), [anon_sym_COLON_COLON] = ACTIONS(447), [anon_sym_STAR] = ACTIONS(449), [anon_sym_AMP] = ACTIONS(449), [anon_sym_DOT_DOT_DOT] = ACTIONS(447), [anon_sym_DOT_DOT] = ACTIONS(449), [anon_sym_DOT_DOT_EQ] = ACTIONS(447), [anon_sym_DASH] = ACTIONS(449), [anon_sym_AMP_AMP] = ACTIONS(447), [anon_sym_PIPE_PIPE] = ACTIONS(447), [anon_sym_PIPE] = ACTIONS(449), [anon_sym_CARET] = ACTIONS(449), [anon_sym_EQ_EQ] = ACTIONS(447), [anon_sym_BANG_EQ] = ACTIONS(447), [anon_sym_LT_EQ] = ACTIONS(447), [anon_sym_GT_EQ] = ACTIONS(447), [anon_sym_LT_LT] = ACTIONS(449), [anon_sym_GT_GT] = ACTIONS(449), [anon_sym_SLASH] = ACTIONS(449), [anon_sym_PERCENT] = ACTIONS(449), [anon_sym_PLUS_EQ] = ACTIONS(447), [anon_sym_DASH_EQ] = ACTIONS(447), [anon_sym_STAR_EQ] = ACTIONS(447), [anon_sym_SLASH_EQ] = ACTIONS(447), [anon_sym_PERCENT_EQ] = ACTIONS(447), [anon_sym_AMP_EQ] = ACTIONS(447), [anon_sym_PIPE_EQ] = ACTIONS(447), [anon_sym_CARET_EQ] = ACTIONS(447), [anon_sym_LT_LT_EQ] = ACTIONS(447), [anon_sym_GT_GT_EQ] = ACTIONS(447), [anon_sym_yield] = ACTIONS(449), [anon_sym_move] = ACTIONS(449), [anon_sym_DOT] = ACTIONS(449), [sym_integer_literal] = ACTIONS(447), [aux_sym_string_literal_token1] = ACTIONS(447), [sym_char_literal] = ACTIONS(447), [anon_sym_true] = ACTIONS(449), [anon_sym_false] = ACTIONS(449), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(449), [sym_metavariable] = ACTIONS(447), [sym_raw_string_literal] = ACTIONS(447), [sym_float_literal] = ACTIONS(447), [sym_block_comment] = ACTIONS(3), }, [51] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(82), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(868), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(82), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(451), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [52] = { [ts_builtin_sym_end] = ACTIONS(453), [sym_identifier] = ACTIONS(455), [anon_sym_SEMI] = ACTIONS(453), [anon_sym_u8] = ACTIONS(455), [anon_sym_i8] = ACTIONS(455), [anon_sym_u16] = ACTIONS(455), [anon_sym_i16] = ACTIONS(455), [anon_sym_u32] = ACTIONS(455), [anon_sym_i32] = ACTIONS(455), [anon_sym_u64] = ACTIONS(455), [anon_sym_i64] = ACTIONS(455), [anon_sym_u128] = ACTIONS(455), [anon_sym_i128] = ACTIONS(455), [anon_sym_u256] = ACTIONS(455), [anon_sym_i256] = ACTIONS(455), [anon_sym_b256] = ACTIONS(455), [anon_sym_isize] = ACTIONS(455), [anon_sym_usize] = ACTIONS(455), [anon_sym_f32] = ACTIONS(455), [anon_sym_f64] = ACTIONS(455), [anon_sym_bool] = ACTIONS(455), [anon_sym_char] = ACTIONS(455), [anon_sym_str] = ACTIONS(455), [anon_sym_LBRACK] = ACTIONS(453), [anon_sym_contract] = ACTIONS(455), [anon_sym_script] = ACTIONS(455), [anon_sym_predicate] = ACTIONS(455), [anon_sym_library] = ACTIONS(455), [anon_sym_SQUOTE] = ACTIONS(455), [anon_sym_abi] = ACTIONS(455), [anon_sym_as] = ACTIONS(455), [anon_sym_break] = ACTIONS(455), [anon_sym_configurable] = ACTIONS(455), [anon_sym_const] = ACTIONS(455), [anon_sym_continue] = ACTIONS(455), [anon_sym_default] = ACTIONS(455), [anon_sym_mod] = ACTIONS(455), [anon_sym_enum] = ACTIONS(455), [anon_sym_fn] = ACTIONS(455), [anon_sym_for] = ACTIONS(455), [anon_sym_if] = ACTIONS(455), [anon_sym_impl] = ACTIONS(455), [anon_sym_let] = ACTIONS(455), [anon_sym_match] = ACTIONS(455), [anon_sym_pub] = ACTIONS(455), [anon_sym_return] = ACTIONS(455), [anon_sym_storage] = ACTIONS(455), [anon_sym_struct] = ACTIONS(455), [anon_sym_trait] = ACTIONS(455), [anon_sym_type] = ACTIONS(455), [anon_sym_use] = ACTIONS(455), [anon_sym_while] = ACTIONS(455), [anon_sym_POUND] = ACTIONS(453), [anon_sym_BANG] = ACTIONS(455), [anon_sym_EQ] = ACTIONS(455), [anon_sym_LBRACE] = ACTIONS(453), [anon_sym_RBRACE] = ACTIONS(453), [anon_sym_LPAREN] = ACTIONS(453), [anon_sym_asm] = ACTIONS(455), [anon_sym_PLUS] = ACTIONS(455), [anon_sym_QMARK] = ACTIONS(453), [anon_sym_LT] = ACTIONS(455), [anon_sym_GT] = ACTIONS(455), [anon_sym_COLON_COLON] = ACTIONS(453), [anon_sym_STAR] = ACTIONS(455), [anon_sym_AMP] = ACTIONS(455), [anon_sym_DOT_DOT_DOT] = ACTIONS(453), [anon_sym_DOT_DOT] = ACTIONS(455), [anon_sym_DOT_DOT_EQ] = ACTIONS(453), [anon_sym_DASH] = ACTIONS(455), [anon_sym_AMP_AMP] = ACTIONS(453), [anon_sym_PIPE_PIPE] = ACTIONS(453), [anon_sym_PIPE] = ACTIONS(455), [anon_sym_CARET] = ACTIONS(455), [anon_sym_EQ_EQ] = ACTIONS(453), [anon_sym_BANG_EQ] = ACTIONS(453), [anon_sym_LT_EQ] = ACTIONS(453), [anon_sym_GT_EQ] = ACTIONS(453), [anon_sym_LT_LT] = ACTIONS(455), [anon_sym_GT_GT] = ACTIONS(455), [anon_sym_SLASH] = ACTIONS(455), [anon_sym_PERCENT] = ACTIONS(455), [anon_sym_PLUS_EQ] = ACTIONS(453), [anon_sym_DASH_EQ] = ACTIONS(453), [anon_sym_STAR_EQ] = ACTIONS(453), [anon_sym_SLASH_EQ] = ACTIONS(453), [anon_sym_PERCENT_EQ] = ACTIONS(453), [anon_sym_AMP_EQ] = ACTIONS(453), [anon_sym_PIPE_EQ] = ACTIONS(453), [anon_sym_CARET_EQ] = ACTIONS(453), [anon_sym_LT_LT_EQ] = ACTIONS(453), [anon_sym_GT_GT_EQ] = ACTIONS(453), [anon_sym_yield] = ACTIONS(455), [anon_sym_move] = ACTIONS(455), [anon_sym_DOT] = ACTIONS(455), [sym_integer_literal] = ACTIONS(453), [aux_sym_string_literal_token1] = ACTIONS(453), [sym_char_literal] = ACTIONS(453), [anon_sym_true] = ACTIONS(455), [anon_sym_false] = ACTIONS(455), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(455), [sym_metavariable] = ACTIONS(453), [sym_raw_string_literal] = ACTIONS(453), [sym_float_literal] = ACTIONS(453), [sym_block_comment] = ACTIONS(3), }, [53] = { [ts_builtin_sym_end] = ACTIONS(457), [sym_identifier] = ACTIONS(459), [anon_sym_SEMI] = ACTIONS(457), [anon_sym_u8] = ACTIONS(459), [anon_sym_i8] = ACTIONS(459), [anon_sym_u16] = ACTIONS(459), [anon_sym_i16] = ACTIONS(459), [anon_sym_u32] = ACTIONS(459), [anon_sym_i32] = ACTIONS(459), [anon_sym_u64] = ACTIONS(459), [anon_sym_i64] = ACTIONS(459), [anon_sym_u128] = ACTIONS(459), [anon_sym_i128] = ACTIONS(459), [anon_sym_u256] = ACTIONS(459), [anon_sym_i256] = ACTIONS(459), [anon_sym_b256] = ACTIONS(459), [anon_sym_isize] = ACTIONS(459), [anon_sym_usize] = ACTIONS(459), [anon_sym_f32] = ACTIONS(459), [anon_sym_f64] = ACTIONS(459), [anon_sym_bool] = ACTIONS(459), [anon_sym_char] = ACTIONS(459), [anon_sym_str] = ACTIONS(459), [anon_sym_LBRACK] = ACTIONS(457), [anon_sym_contract] = ACTIONS(459), [anon_sym_script] = ACTIONS(459), [anon_sym_predicate] = ACTIONS(459), [anon_sym_library] = ACTIONS(459), [anon_sym_SQUOTE] = ACTIONS(459), [anon_sym_abi] = ACTIONS(459), [anon_sym_as] = ACTIONS(459), [anon_sym_break] = ACTIONS(459), [anon_sym_configurable] = ACTIONS(459), [anon_sym_const] = ACTIONS(459), [anon_sym_continue] = ACTIONS(459), [anon_sym_default] = ACTIONS(459), [anon_sym_mod] = ACTIONS(459), [anon_sym_enum] = ACTIONS(459), [anon_sym_fn] = ACTIONS(459), [anon_sym_for] = ACTIONS(459), [anon_sym_if] = ACTIONS(459), [anon_sym_impl] = ACTIONS(459), [anon_sym_let] = ACTIONS(459), [anon_sym_match] = ACTIONS(459), [anon_sym_pub] = ACTIONS(459), [anon_sym_return] = ACTIONS(459), [anon_sym_storage] = ACTIONS(459), [anon_sym_struct] = ACTIONS(459), [anon_sym_trait] = ACTIONS(459), [anon_sym_type] = ACTIONS(459), [anon_sym_use] = ACTIONS(459), [anon_sym_while] = ACTIONS(459), [anon_sym_POUND] = ACTIONS(457), [anon_sym_BANG] = ACTIONS(459), [anon_sym_EQ] = ACTIONS(459), [anon_sym_LBRACE] = ACTIONS(457), [anon_sym_RBRACE] = ACTIONS(457), [anon_sym_LPAREN] = ACTIONS(457), [anon_sym_asm] = ACTIONS(459), [anon_sym_PLUS] = ACTIONS(459), [anon_sym_QMARK] = ACTIONS(457), [anon_sym_LT] = ACTIONS(459), [anon_sym_GT] = ACTIONS(459), [anon_sym_COLON_COLON] = ACTIONS(457), [anon_sym_STAR] = ACTIONS(459), [anon_sym_AMP] = ACTIONS(459), [anon_sym_DOT_DOT_DOT] = ACTIONS(457), [anon_sym_DOT_DOT] = ACTIONS(459), [anon_sym_DOT_DOT_EQ] = ACTIONS(457), [anon_sym_DASH] = ACTIONS(459), [anon_sym_AMP_AMP] = ACTIONS(457), [anon_sym_PIPE_PIPE] = ACTIONS(457), [anon_sym_PIPE] = ACTIONS(459), [anon_sym_CARET] = ACTIONS(459), [anon_sym_EQ_EQ] = ACTIONS(457), [anon_sym_BANG_EQ] = ACTIONS(457), [anon_sym_LT_EQ] = ACTIONS(457), [anon_sym_GT_EQ] = ACTIONS(457), [anon_sym_LT_LT] = ACTIONS(459), [anon_sym_GT_GT] = ACTIONS(459), [anon_sym_SLASH] = ACTIONS(459), [anon_sym_PERCENT] = ACTIONS(459), [anon_sym_PLUS_EQ] = ACTIONS(457), [anon_sym_DASH_EQ] = ACTIONS(457), [anon_sym_STAR_EQ] = ACTIONS(457), [anon_sym_SLASH_EQ] = ACTIONS(457), [anon_sym_PERCENT_EQ] = ACTIONS(457), [anon_sym_AMP_EQ] = ACTIONS(457), [anon_sym_PIPE_EQ] = ACTIONS(457), [anon_sym_CARET_EQ] = ACTIONS(457), [anon_sym_LT_LT_EQ] = ACTIONS(457), [anon_sym_GT_GT_EQ] = ACTIONS(457), [anon_sym_yield] = ACTIONS(459), [anon_sym_move] = ACTIONS(459), [anon_sym_DOT] = ACTIONS(459), [sym_integer_literal] = ACTIONS(457), [aux_sym_string_literal_token1] = ACTIONS(457), [sym_char_literal] = ACTIONS(457), [anon_sym_true] = ACTIONS(459), [anon_sym_false] = ACTIONS(459), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(459), [sym_metavariable] = ACTIONS(457), [sym_raw_string_literal] = ACTIONS(457), [sym_float_literal] = ACTIONS(457), [sym_block_comment] = ACTIONS(3), }, [54] = { [ts_builtin_sym_end] = ACTIONS(461), [sym_identifier] = ACTIONS(463), [anon_sym_SEMI] = ACTIONS(461), [anon_sym_u8] = ACTIONS(463), [anon_sym_i8] = ACTIONS(463), [anon_sym_u16] = ACTIONS(463), [anon_sym_i16] = ACTIONS(463), [anon_sym_u32] = ACTIONS(463), [anon_sym_i32] = ACTIONS(463), [anon_sym_u64] = ACTIONS(463), [anon_sym_i64] = ACTIONS(463), [anon_sym_u128] = ACTIONS(463), [anon_sym_i128] = ACTIONS(463), [anon_sym_u256] = ACTIONS(463), [anon_sym_i256] = ACTIONS(463), [anon_sym_b256] = ACTIONS(463), [anon_sym_isize] = ACTIONS(463), [anon_sym_usize] = ACTIONS(463), [anon_sym_f32] = ACTIONS(463), [anon_sym_f64] = ACTIONS(463), [anon_sym_bool] = ACTIONS(463), [anon_sym_char] = ACTIONS(463), [anon_sym_str] = ACTIONS(463), [anon_sym_LBRACK] = ACTIONS(461), [anon_sym_contract] = ACTIONS(463), [anon_sym_script] = ACTIONS(463), [anon_sym_predicate] = ACTIONS(463), [anon_sym_library] = ACTIONS(463), [anon_sym_SQUOTE] = ACTIONS(463), [anon_sym_abi] = ACTIONS(463), [anon_sym_as] = ACTIONS(463), [anon_sym_break] = ACTIONS(463), [anon_sym_configurable] = ACTIONS(463), [anon_sym_const] = ACTIONS(463), [anon_sym_continue] = ACTIONS(463), [anon_sym_default] = ACTIONS(463), [anon_sym_mod] = ACTIONS(463), [anon_sym_enum] = ACTIONS(463), [anon_sym_fn] = ACTIONS(463), [anon_sym_for] = ACTIONS(463), [anon_sym_if] = ACTIONS(463), [anon_sym_impl] = ACTIONS(463), [anon_sym_let] = ACTIONS(463), [anon_sym_match] = ACTIONS(463), [anon_sym_pub] = ACTIONS(463), [anon_sym_return] = ACTIONS(463), [anon_sym_storage] = ACTIONS(463), [anon_sym_struct] = ACTIONS(463), [anon_sym_trait] = ACTIONS(463), [anon_sym_type] = ACTIONS(463), [anon_sym_use] = ACTIONS(463), [anon_sym_while] = ACTIONS(463), [anon_sym_POUND] = ACTIONS(461), [anon_sym_BANG] = ACTIONS(463), [anon_sym_EQ] = ACTIONS(463), [anon_sym_LBRACE] = ACTIONS(461), [anon_sym_RBRACE] = ACTIONS(461), [anon_sym_LPAREN] = ACTIONS(461), [anon_sym_asm] = ACTIONS(463), [anon_sym_PLUS] = ACTIONS(463), [anon_sym_QMARK] = ACTIONS(461), [anon_sym_LT] = ACTIONS(463), [anon_sym_GT] = ACTIONS(463), [anon_sym_COLON_COLON] = ACTIONS(461), [anon_sym_STAR] = ACTIONS(463), [anon_sym_AMP] = ACTIONS(463), [anon_sym_DOT_DOT_DOT] = ACTIONS(461), [anon_sym_DOT_DOT] = ACTIONS(463), [anon_sym_DOT_DOT_EQ] = ACTIONS(461), [anon_sym_DASH] = ACTIONS(463), [anon_sym_AMP_AMP] = ACTIONS(461), [anon_sym_PIPE_PIPE] = ACTIONS(461), [anon_sym_PIPE] = ACTIONS(463), [anon_sym_CARET] = ACTIONS(463), [anon_sym_EQ_EQ] = ACTIONS(461), [anon_sym_BANG_EQ] = ACTIONS(461), [anon_sym_LT_EQ] = ACTIONS(461), [anon_sym_GT_EQ] = ACTIONS(461), [anon_sym_LT_LT] = ACTIONS(463), [anon_sym_GT_GT] = ACTIONS(463), [anon_sym_SLASH] = ACTIONS(463), [anon_sym_PERCENT] = ACTIONS(463), [anon_sym_PLUS_EQ] = ACTIONS(461), [anon_sym_DASH_EQ] = ACTIONS(461), [anon_sym_STAR_EQ] = ACTIONS(461), [anon_sym_SLASH_EQ] = ACTIONS(461), [anon_sym_PERCENT_EQ] = ACTIONS(461), [anon_sym_AMP_EQ] = ACTIONS(461), [anon_sym_PIPE_EQ] = ACTIONS(461), [anon_sym_CARET_EQ] = ACTIONS(461), [anon_sym_LT_LT_EQ] = ACTIONS(461), [anon_sym_GT_GT_EQ] = ACTIONS(461), [anon_sym_yield] = ACTIONS(463), [anon_sym_move] = ACTIONS(463), [anon_sym_DOT] = ACTIONS(463), [sym_integer_literal] = ACTIONS(461), [aux_sym_string_literal_token1] = ACTIONS(461), [sym_char_literal] = ACTIONS(461), [anon_sym_true] = ACTIONS(463), [anon_sym_false] = ACTIONS(463), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(463), [sym_metavariable] = ACTIONS(461), [sym_raw_string_literal] = ACTIONS(461), [sym_float_literal] = ACTIONS(461), [sym_block_comment] = ACTIONS(3), }, [55] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(82), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(868), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(82), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(465), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [56] = { [ts_builtin_sym_end] = ACTIONS(467), [sym_identifier] = ACTIONS(469), [anon_sym_SEMI] = ACTIONS(467), [anon_sym_u8] = ACTIONS(469), [anon_sym_i8] = ACTIONS(469), [anon_sym_u16] = ACTIONS(469), [anon_sym_i16] = ACTIONS(469), [anon_sym_u32] = ACTIONS(469), [anon_sym_i32] = ACTIONS(469), [anon_sym_u64] = ACTIONS(469), [anon_sym_i64] = ACTIONS(469), [anon_sym_u128] = ACTIONS(469), [anon_sym_i128] = ACTIONS(469), [anon_sym_u256] = ACTIONS(469), [anon_sym_i256] = ACTIONS(469), [anon_sym_b256] = ACTIONS(469), [anon_sym_isize] = ACTIONS(469), [anon_sym_usize] = ACTIONS(469), [anon_sym_f32] = ACTIONS(469), [anon_sym_f64] = ACTIONS(469), [anon_sym_bool] = ACTIONS(469), [anon_sym_char] = ACTIONS(469), [anon_sym_str] = ACTIONS(469), [anon_sym_LBRACK] = ACTIONS(467), [anon_sym_contract] = ACTIONS(469), [anon_sym_script] = ACTIONS(469), [anon_sym_predicate] = ACTIONS(469), [anon_sym_library] = ACTIONS(469), [anon_sym_SQUOTE] = ACTIONS(469), [anon_sym_abi] = ACTIONS(469), [anon_sym_as] = ACTIONS(469), [anon_sym_break] = ACTIONS(469), [anon_sym_configurable] = ACTIONS(469), [anon_sym_const] = ACTIONS(469), [anon_sym_continue] = ACTIONS(469), [anon_sym_default] = ACTIONS(469), [anon_sym_mod] = ACTIONS(469), [anon_sym_enum] = ACTIONS(469), [anon_sym_fn] = ACTIONS(469), [anon_sym_for] = ACTIONS(469), [anon_sym_if] = ACTIONS(469), [anon_sym_impl] = ACTIONS(469), [anon_sym_let] = ACTIONS(469), [anon_sym_match] = ACTIONS(469), [anon_sym_pub] = ACTIONS(469), [anon_sym_return] = ACTIONS(469), [anon_sym_storage] = ACTIONS(469), [anon_sym_struct] = ACTIONS(469), [anon_sym_trait] = ACTIONS(469), [anon_sym_type] = ACTIONS(469), [anon_sym_use] = ACTIONS(469), [anon_sym_while] = ACTIONS(469), [anon_sym_POUND] = ACTIONS(467), [anon_sym_BANG] = ACTIONS(469), [anon_sym_EQ] = ACTIONS(469), [anon_sym_LBRACE] = ACTIONS(467), [anon_sym_RBRACE] = ACTIONS(467), [anon_sym_LPAREN] = ACTIONS(467), [anon_sym_asm] = ACTIONS(469), [anon_sym_PLUS] = ACTIONS(469), [anon_sym_QMARK] = ACTIONS(467), [anon_sym_LT] = ACTIONS(469), [anon_sym_GT] = ACTIONS(469), [anon_sym_COLON_COLON] = ACTIONS(467), [anon_sym_STAR] = ACTIONS(469), [anon_sym_AMP] = ACTIONS(469), [anon_sym_DOT_DOT_DOT] = ACTIONS(467), [anon_sym_DOT_DOT] = ACTIONS(469), [anon_sym_DOT_DOT_EQ] = ACTIONS(467), [anon_sym_DASH] = ACTIONS(469), [anon_sym_AMP_AMP] = ACTIONS(467), [anon_sym_PIPE_PIPE] = ACTIONS(467), [anon_sym_PIPE] = ACTIONS(469), [anon_sym_CARET] = ACTIONS(469), [anon_sym_EQ_EQ] = ACTIONS(467), [anon_sym_BANG_EQ] = ACTIONS(467), [anon_sym_LT_EQ] = ACTIONS(467), [anon_sym_GT_EQ] = ACTIONS(467), [anon_sym_LT_LT] = ACTIONS(469), [anon_sym_GT_GT] = ACTIONS(469), [anon_sym_SLASH] = ACTIONS(469), [anon_sym_PERCENT] = ACTIONS(469), [anon_sym_PLUS_EQ] = ACTIONS(467), [anon_sym_DASH_EQ] = ACTIONS(467), [anon_sym_STAR_EQ] = ACTIONS(467), [anon_sym_SLASH_EQ] = ACTIONS(467), [anon_sym_PERCENT_EQ] = ACTIONS(467), [anon_sym_AMP_EQ] = ACTIONS(467), [anon_sym_PIPE_EQ] = ACTIONS(467), [anon_sym_CARET_EQ] = ACTIONS(467), [anon_sym_LT_LT_EQ] = ACTIONS(467), [anon_sym_GT_GT_EQ] = ACTIONS(467), [anon_sym_yield] = ACTIONS(469), [anon_sym_move] = ACTIONS(469), [anon_sym_DOT] = ACTIONS(469), [sym_integer_literal] = ACTIONS(467), [aux_sym_string_literal_token1] = ACTIONS(467), [sym_char_literal] = ACTIONS(467), [anon_sym_true] = ACTIONS(469), [anon_sym_false] = ACTIONS(469), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(469), [sym_metavariable] = ACTIONS(467), [sym_raw_string_literal] = ACTIONS(467), [sym_float_literal] = ACTIONS(467), [sym_block_comment] = ACTIONS(3), }, [57] = { [ts_builtin_sym_end] = ACTIONS(471), [sym_identifier] = ACTIONS(473), [anon_sym_SEMI] = ACTIONS(471), [anon_sym_u8] = ACTIONS(473), [anon_sym_i8] = ACTIONS(473), [anon_sym_u16] = ACTIONS(473), [anon_sym_i16] = ACTIONS(473), [anon_sym_u32] = ACTIONS(473), [anon_sym_i32] = ACTIONS(473), [anon_sym_u64] = ACTIONS(473), [anon_sym_i64] = ACTIONS(473), [anon_sym_u128] = ACTIONS(473), [anon_sym_i128] = ACTIONS(473), [anon_sym_u256] = ACTIONS(473), [anon_sym_i256] = ACTIONS(473), [anon_sym_b256] = ACTIONS(473), [anon_sym_isize] = ACTIONS(473), [anon_sym_usize] = ACTIONS(473), [anon_sym_f32] = ACTIONS(473), [anon_sym_f64] = ACTIONS(473), [anon_sym_bool] = ACTIONS(473), [anon_sym_char] = ACTIONS(473), [anon_sym_str] = ACTIONS(473), [anon_sym_LBRACK] = ACTIONS(471), [anon_sym_contract] = ACTIONS(473), [anon_sym_script] = ACTIONS(473), [anon_sym_predicate] = ACTIONS(473), [anon_sym_library] = ACTIONS(473), [anon_sym_SQUOTE] = ACTIONS(473), [anon_sym_abi] = ACTIONS(473), [anon_sym_as] = ACTIONS(473), [anon_sym_break] = ACTIONS(473), [anon_sym_configurable] = ACTIONS(473), [anon_sym_const] = ACTIONS(473), [anon_sym_continue] = ACTIONS(473), [anon_sym_default] = ACTIONS(473), [anon_sym_mod] = ACTIONS(473), [anon_sym_enum] = ACTIONS(473), [anon_sym_fn] = ACTIONS(473), [anon_sym_for] = ACTIONS(473), [anon_sym_if] = ACTIONS(473), [anon_sym_impl] = ACTIONS(473), [anon_sym_let] = ACTIONS(473), [anon_sym_match] = ACTIONS(473), [anon_sym_pub] = ACTIONS(473), [anon_sym_return] = ACTIONS(473), [anon_sym_storage] = ACTIONS(473), [anon_sym_struct] = ACTIONS(473), [anon_sym_trait] = ACTIONS(473), [anon_sym_type] = ACTIONS(473), [anon_sym_use] = ACTIONS(473), [anon_sym_while] = ACTIONS(473), [anon_sym_POUND] = ACTIONS(471), [anon_sym_BANG] = ACTIONS(473), [anon_sym_EQ] = ACTIONS(473), [anon_sym_LBRACE] = ACTIONS(471), [anon_sym_RBRACE] = ACTIONS(471), [anon_sym_LPAREN] = ACTIONS(471), [anon_sym_asm] = ACTIONS(473), [anon_sym_PLUS] = ACTIONS(473), [anon_sym_QMARK] = ACTIONS(471), [anon_sym_LT] = ACTIONS(473), [anon_sym_GT] = ACTIONS(473), [anon_sym_COLON_COLON] = ACTIONS(471), [anon_sym_STAR] = ACTIONS(473), [anon_sym_AMP] = ACTIONS(473), [anon_sym_DOT_DOT_DOT] = ACTIONS(471), [anon_sym_DOT_DOT] = ACTIONS(473), [anon_sym_DOT_DOT_EQ] = ACTIONS(471), [anon_sym_DASH] = ACTIONS(473), [anon_sym_AMP_AMP] = ACTIONS(471), [anon_sym_PIPE_PIPE] = ACTIONS(471), [anon_sym_PIPE] = ACTIONS(473), [anon_sym_CARET] = ACTIONS(473), [anon_sym_EQ_EQ] = ACTIONS(471), [anon_sym_BANG_EQ] = ACTIONS(471), [anon_sym_LT_EQ] = ACTIONS(471), [anon_sym_GT_EQ] = ACTIONS(471), [anon_sym_LT_LT] = ACTIONS(473), [anon_sym_GT_GT] = ACTIONS(473), [anon_sym_SLASH] = ACTIONS(473), [anon_sym_PERCENT] = ACTIONS(473), [anon_sym_PLUS_EQ] = ACTIONS(471), [anon_sym_DASH_EQ] = ACTIONS(471), [anon_sym_STAR_EQ] = ACTIONS(471), [anon_sym_SLASH_EQ] = ACTIONS(471), [anon_sym_PERCENT_EQ] = ACTIONS(471), [anon_sym_AMP_EQ] = ACTIONS(471), [anon_sym_PIPE_EQ] = ACTIONS(471), [anon_sym_CARET_EQ] = ACTIONS(471), [anon_sym_LT_LT_EQ] = ACTIONS(471), [anon_sym_GT_GT_EQ] = ACTIONS(471), [anon_sym_yield] = ACTIONS(473), [anon_sym_move] = ACTIONS(473), [anon_sym_DOT] = ACTIONS(473), [sym_integer_literal] = ACTIONS(471), [aux_sym_string_literal_token1] = ACTIONS(471), [sym_char_literal] = ACTIONS(471), [anon_sym_true] = ACTIONS(473), [anon_sym_false] = ACTIONS(473), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(473), [sym_metavariable] = ACTIONS(471), [sym_raw_string_literal] = ACTIONS(471), [sym_float_literal] = ACTIONS(471), [sym_block_comment] = ACTIONS(3), }, [58] = { [ts_builtin_sym_end] = ACTIONS(475), [sym_identifier] = ACTIONS(477), [anon_sym_SEMI] = ACTIONS(475), [anon_sym_u8] = ACTIONS(477), [anon_sym_i8] = ACTIONS(477), [anon_sym_u16] = ACTIONS(477), [anon_sym_i16] = ACTIONS(477), [anon_sym_u32] = ACTIONS(477), [anon_sym_i32] = ACTIONS(477), [anon_sym_u64] = ACTIONS(477), [anon_sym_i64] = ACTIONS(477), [anon_sym_u128] = ACTIONS(477), [anon_sym_i128] = ACTIONS(477), [anon_sym_u256] = ACTIONS(477), [anon_sym_i256] = ACTIONS(477), [anon_sym_b256] = ACTIONS(477), [anon_sym_isize] = ACTIONS(477), [anon_sym_usize] = ACTIONS(477), [anon_sym_f32] = ACTIONS(477), [anon_sym_f64] = ACTIONS(477), [anon_sym_bool] = ACTIONS(477), [anon_sym_char] = ACTIONS(477), [anon_sym_str] = ACTIONS(477), [anon_sym_LBRACK] = ACTIONS(475), [anon_sym_contract] = ACTIONS(477), [anon_sym_script] = ACTIONS(477), [anon_sym_predicate] = ACTIONS(477), [anon_sym_library] = ACTIONS(477), [anon_sym_SQUOTE] = ACTIONS(477), [anon_sym_abi] = ACTIONS(477), [anon_sym_as] = ACTIONS(477), [anon_sym_break] = ACTIONS(477), [anon_sym_configurable] = ACTIONS(477), [anon_sym_const] = ACTIONS(477), [anon_sym_continue] = ACTIONS(477), [anon_sym_default] = ACTIONS(477), [anon_sym_mod] = ACTIONS(477), [anon_sym_enum] = ACTIONS(477), [anon_sym_fn] = ACTIONS(477), [anon_sym_for] = ACTIONS(477), [anon_sym_if] = ACTIONS(477), [anon_sym_impl] = ACTIONS(477), [anon_sym_let] = ACTIONS(477), [anon_sym_match] = ACTIONS(477), [anon_sym_pub] = ACTIONS(477), [anon_sym_return] = ACTIONS(477), [anon_sym_storage] = ACTIONS(477), [anon_sym_struct] = ACTIONS(477), [anon_sym_trait] = ACTIONS(477), [anon_sym_type] = ACTIONS(477), [anon_sym_use] = ACTIONS(477), [anon_sym_while] = ACTIONS(477), [anon_sym_POUND] = ACTIONS(475), [anon_sym_BANG] = ACTIONS(477), [anon_sym_EQ] = ACTIONS(477), [anon_sym_LBRACE] = ACTIONS(475), [anon_sym_RBRACE] = ACTIONS(475), [anon_sym_LPAREN] = ACTIONS(475), [anon_sym_asm] = ACTIONS(477), [anon_sym_PLUS] = ACTIONS(477), [anon_sym_QMARK] = ACTIONS(475), [anon_sym_LT] = ACTIONS(477), [anon_sym_GT] = ACTIONS(477), [anon_sym_COLON_COLON] = ACTIONS(475), [anon_sym_STAR] = ACTIONS(477), [anon_sym_AMP] = ACTIONS(477), [anon_sym_DOT_DOT_DOT] = ACTIONS(475), [anon_sym_DOT_DOT] = ACTIONS(477), [anon_sym_DOT_DOT_EQ] = ACTIONS(475), [anon_sym_DASH] = ACTIONS(477), [anon_sym_AMP_AMP] = ACTIONS(475), [anon_sym_PIPE_PIPE] = ACTIONS(475), [anon_sym_PIPE] = ACTIONS(477), [anon_sym_CARET] = ACTIONS(477), [anon_sym_EQ_EQ] = ACTIONS(475), [anon_sym_BANG_EQ] = ACTIONS(475), [anon_sym_LT_EQ] = ACTIONS(475), [anon_sym_GT_EQ] = ACTIONS(475), [anon_sym_LT_LT] = ACTIONS(477), [anon_sym_GT_GT] = ACTIONS(477), [anon_sym_SLASH] = ACTIONS(477), [anon_sym_PERCENT] = ACTIONS(477), [anon_sym_PLUS_EQ] = ACTIONS(475), [anon_sym_DASH_EQ] = ACTIONS(475), [anon_sym_STAR_EQ] = ACTIONS(475), [anon_sym_SLASH_EQ] = ACTIONS(475), [anon_sym_PERCENT_EQ] = ACTIONS(475), [anon_sym_AMP_EQ] = ACTIONS(475), [anon_sym_PIPE_EQ] = ACTIONS(475), [anon_sym_CARET_EQ] = ACTIONS(475), [anon_sym_LT_LT_EQ] = ACTIONS(475), [anon_sym_GT_GT_EQ] = ACTIONS(475), [anon_sym_yield] = ACTIONS(477), [anon_sym_move] = ACTIONS(477), [anon_sym_DOT] = ACTIONS(477), [sym_integer_literal] = ACTIONS(475), [aux_sym_string_literal_token1] = ACTIONS(475), [sym_char_literal] = ACTIONS(475), [anon_sym_true] = ACTIONS(477), [anon_sym_false] = ACTIONS(477), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(477), [sym_metavariable] = ACTIONS(475), [sym_raw_string_literal] = ACTIONS(475), [sym_float_literal] = ACTIONS(475), [sym_block_comment] = ACTIONS(3), }, [59] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(927), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1830), [sym__let_chain] = STATE(1831), [sym__condition] = STATE(1987), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [60] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(927), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1830), [sym__let_chain] = STATE(1831), [sym__condition] = STATE(1833), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [61] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(84), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(896), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(84), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(487), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [62] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(82), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(868), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(82), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(489), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [63] = { [ts_builtin_sym_end] = ACTIONS(491), [sym_identifier] = ACTIONS(493), [anon_sym_SEMI] = ACTIONS(495), [anon_sym_u8] = ACTIONS(493), [anon_sym_i8] = ACTIONS(493), [anon_sym_u16] = ACTIONS(493), [anon_sym_i16] = ACTIONS(493), [anon_sym_u32] = ACTIONS(493), [anon_sym_i32] = ACTIONS(493), [anon_sym_u64] = ACTIONS(493), [anon_sym_i64] = ACTIONS(493), [anon_sym_u128] = ACTIONS(493), [anon_sym_i128] = ACTIONS(493), [anon_sym_u256] = ACTIONS(493), [anon_sym_i256] = ACTIONS(493), [anon_sym_b256] = ACTIONS(493), [anon_sym_isize] = ACTIONS(493), [anon_sym_usize] = ACTIONS(493), [anon_sym_f32] = ACTIONS(493), [anon_sym_f64] = ACTIONS(493), [anon_sym_bool] = ACTIONS(493), [anon_sym_char] = ACTIONS(493), [anon_sym_str] = ACTIONS(493), [anon_sym_LBRACK] = ACTIONS(495), [anon_sym_contract] = ACTIONS(493), [anon_sym_script] = ACTIONS(493), [anon_sym_predicate] = ACTIONS(493), [anon_sym_library] = ACTIONS(493), [anon_sym_SQUOTE] = ACTIONS(493), [anon_sym_abi] = ACTIONS(493), [anon_sym_as] = ACTIONS(498), [anon_sym_break] = ACTIONS(493), [anon_sym_configurable] = ACTIONS(493), [anon_sym_const] = ACTIONS(493), [anon_sym_continue] = ACTIONS(493), [anon_sym_default] = ACTIONS(493), [anon_sym_mod] = ACTIONS(493), [anon_sym_enum] = ACTIONS(493), [anon_sym_fn] = ACTIONS(493), [anon_sym_for] = ACTIONS(493), [anon_sym_if] = ACTIONS(493), [anon_sym_impl] = ACTIONS(493), [anon_sym_let] = ACTIONS(493), [anon_sym_match] = ACTIONS(493), [anon_sym_pub] = ACTIONS(493), [anon_sym_return] = ACTIONS(493), [anon_sym_storage] = ACTIONS(493), [anon_sym_struct] = ACTIONS(493), [anon_sym_trait] = ACTIONS(493), [anon_sym_type] = ACTIONS(493), [anon_sym_use] = ACTIONS(493), [anon_sym_while] = ACTIONS(493), [anon_sym_POUND] = ACTIONS(491), [anon_sym_BANG] = ACTIONS(493), [anon_sym_EQ] = ACTIONS(498), [anon_sym_LBRACE] = ACTIONS(491), [anon_sym_RBRACE] = ACTIONS(495), [anon_sym_LPAREN] = ACTIONS(495), [anon_sym_asm] = ACTIONS(493), [anon_sym_PLUS] = ACTIONS(498), [anon_sym_QMARK] = ACTIONS(500), [anon_sym_LT] = ACTIONS(502), [anon_sym_GT] = ACTIONS(498), [anon_sym_COLON_COLON] = ACTIONS(491), [anon_sym_STAR] = ACTIONS(502), [anon_sym_AMP] = ACTIONS(502), [anon_sym_DOT_DOT_DOT] = ACTIONS(500), [anon_sym_DOT_DOT] = ACTIONS(502), [anon_sym_DOT_DOT_EQ] = ACTIONS(500), [anon_sym_DASH] = ACTIONS(502), [anon_sym_AMP_AMP] = ACTIONS(500), [anon_sym_PIPE_PIPE] = ACTIONS(500), [anon_sym_PIPE] = ACTIONS(502), [anon_sym_CARET] = ACTIONS(498), [anon_sym_EQ_EQ] = ACTIONS(500), [anon_sym_BANG_EQ] = ACTIONS(500), [anon_sym_LT_EQ] = ACTIONS(500), [anon_sym_GT_EQ] = ACTIONS(500), [anon_sym_LT_LT] = ACTIONS(498), [anon_sym_GT_GT] = ACTIONS(498), [anon_sym_SLASH] = ACTIONS(498), [anon_sym_PERCENT] = ACTIONS(498), [anon_sym_PLUS_EQ] = ACTIONS(500), [anon_sym_DASH_EQ] = ACTIONS(500), [anon_sym_STAR_EQ] = ACTIONS(500), [anon_sym_SLASH_EQ] = ACTIONS(500), [anon_sym_PERCENT_EQ] = ACTIONS(500), [anon_sym_AMP_EQ] = ACTIONS(500), [anon_sym_PIPE_EQ] = ACTIONS(500), [anon_sym_CARET_EQ] = ACTIONS(500), [anon_sym_LT_LT_EQ] = ACTIONS(500), [anon_sym_GT_GT_EQ] = ACTIONS(500), [anon_sym_yield] = ACTIONS(493), [anon_sym_move] = ACTIONS(493), [anon_sym_DOT] = ACTIONS(498), [sym_integer_literal] = ACTIONS(491), [aux_sym_string_literal_token1] = ACTIONS(491), [sym_char_literal] = ACTIONS(491), [anon_sym_true] = ACTIONS(493), [anon_sym_false] = ACTIONS(493), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(493), [sym_metavariable] = ACTIONS(491), [sym_raw_string_literal] = ACTIONS(491), [sym_float_literal] = ACTIONS(491), [sym_block_comment] = ACTIONS(3), }, [64] = { [ts_builtin_sym_end] = ACTIONS(505), [sym_identifier] = ACTIONS(507), [anon_sym_SEMI] = ACTIONS(505), [anon_sym_u8] = ACTIONS(507), [anon_sym_i8] = ACTIONS(507), [anon_sym_u16] = ACTIONS(507), [anon_sym_i16] = ACTIONS(507), [anon_sym_u32] = ACTIONS(507), [anon_sym_i32] = ACTIONS(507), [anon_sym_u64] = ACTIONS(507), [anon_sym_i64] = ACTIONS(507), [anon_sym_u128] = ACTIONS(507), [anon_sym_i128] = ACTIONS(507), [anon_sym_u256] = ACTIONS(507), [anon_sym_i256] = ACTIONS(507), [anon_sym_b256] = ACTIONS(507), [anon_sym_isize] = ACTIONS(507), [anon_sym_usize] = ACTIONS(507), [anon_sym_f32] = ACTIONS(507), [anon_sym_f64] = ACTIONS(507), [anon_sym_bool] = ACTIONS(507), [anon_sym_char] = ACTIONS(507), [anon_sym_str] = ACTIONS(507), [anon_sym_LBRACK] = ACTIONS(505), [anon_sym_contract] = ACTIONS(507), [anon_sym_script] = ACTIONS(507), [anon_sym_predicate] = ACTIONS(507), [anon_sym_library] = ACTIONS(507), [anon_sym_SQUOTE] = ACTIONS(507), [anon_sym_abi] = ACTIONS(507), [anon_sym_as] = ACTIONS(507), [anon_sym_break] = ACTIONS(507), [anon_sym_configurable] = ACTIONS(507), [anon_sym_const] = ACTIONS(507), [anon_sym_continue] = ACTIONS(507), [anon_sym_default] = ACTIONS(507), [anon_sym_mod] = ACTIONS(507), [anon_sym_enum] = ACTIONS(507), [anon_sym_fn] = ACTIONS(507), [anon_sym_for] = ACTIONS(507), [anon_sym_if] = ACTIONS(507), [anon_sym_impl] = ACTIONS(507), [anon_sym_let] = ACTIONS(507), [anon_sym_match] = ACTIONS(507), [anon_sym_pub] = ACTIONS(507), [anon_sym_return] = ACTIONS(507), [anon_sym_storage] = ACTIONS(507), [anon_sym_struct] = ACTIONS(507), [anon_sym_trait] = ACTIONS(507), [anon_sym_type] = ACTIONS(507), [anon_sym_use] = ACTIONS(507), [anon_sym_while] = ACTIONS(507), [anon_sym_POUND] = ACTIONS(505), [anon_sym_BANG] = ACTIONS(507), [anon_sym_EQ] = ACTIONS(507), [anon_sym_LBRACE] = ACTIONS(505), [anon_sym_RBRACE] = ACTIONS(505), [anon_sym_LPAREN] = ACTIONS(505), [anon_sym_asm] = ACTIONS(507), [anon_sym_PLUS] = ACTIONS(507), [anon_sym_QMARK] = ACTIONS(505), [anon_sym_LT] = ACTIONS(507), [anon_sym_GT] = ACTIONS(507), [anon_sym_COLON_COLON] = ACTIONS(505), [anon_sym_STAR] = ACTIONS(507), [anon_sym_AMP] = ACTIONS(507), [anon_sym_DOT_DOT_DOT] = ACTIONS(505), [anon_sym_DOT_DOT] = ACTIONS(507), [anon_sym_DOT_DOT_EQ] = ACTIONS(505), [anon_sym_DASH] = ACTIONS(507), [anon_sym_AMP_AMP] = ACTIONS(505), [anon_sym_PIPE_PIPE] = ACTIONS(505), [anon_sym_PIPE] = ACTIONS(507), [anon_sym_CARET] = ACTIONS(507), [anon_sym_EQ_EQ] = ACTIONS(505), [anon_sym_BANG_EQ] = ACTIONS(505), [anon_sym_LT_EQ] = ACTIONS(505), [anon_sym_GT_EQ] = ACTIONS(505), [anon_sym_LT_LT] = ACTIONS(507), [anon_sym_GT_GT] = ACTIONS(507), [anon_sym_SLASH] = ACTIONS(507), [anon_sym_PERCENT] = ACTIONS(507), [anon_sym_PLUS_EQ] = ACTIONS(505), [anon_sym_DASH_EQ] = ACTIONS(505), [anon_sym_STAR_EQ] = ACTIONS(505), [anon_sym_SLASH_EQ] = ACTIONS(505), [anon_sym_PERCENT_EQ] = ACTIONS(505), [anon_sym_AMP_EQ] = ACTIONS(505), [anon_sym_PIPE_EQ] = ACTIONS(505), [anon_sym_CARET_EQ] = ACTIONS(505), [anon_sym_LT_LT_EQ] = ACTIONS(505), [anon_sym_GT_GT_EQ] = ACTIONS(505), [anon_sym_yield] = ACTIONS(507), [anon_sym_move] = ACTIONS(507), [anon_sym_DOT] = ACTIONS(507), [sym_integer_literal] = ACTIONS(505), [aux_sym_string_literal_token1] = ACTIONS(505), [sym_char_literal] = ACTIONS(505), [anon_sym_true] = ACTIONS(507), [anon_sym_false] = ACTIONS(507), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(507), [sym_metavariable] = ACTIONS(505), [sym_raw_string_literal] = ACTIONS(505), [sym_float_literal] = ACTIONS(505), [sym_block_comment] = ACTIONS(3), }, [65] = { [ts_builtin_sym_end] = ACTIONS(509), [sym_identifier] = ACTIONS(511), [anon_sym_SEMI] = ACTIONS(509), [anon_sym_u8] = ACTIONS(511), [anon_sym_i8] = ACTIONS(511), [anon_sym_u16] = ACTIONS(511), [anon_sym_i16] = ACTIONS(511), [anon_sym_u32] = ACTIONS(511), [anon_sym_i32] = ACTIONS(511), [anon_sym_u64] = ACTIONS(511), [anon_sym_i64] = ACTIONS(511), [anon_sym_u128] = ACTIONS(511), [anon_sym_i128] = ACTIONS(511), [anon_sym_u256] = ACTIONS(511), [anon_sym_i256] = ACTIONS(511), [anon_sym_b256] = ACTIONS(511), [anon_sym_isize] = ACTIONS(511), [anon_sym_usize] = ACTIONS(511), [anon_sym_f32] = ACTIONS(511), [anon_sym_f64] = ACTIONS(511), [anon_sym_bool] = ACTIONS(511), [anon_sym_char] = ACTIONS(511), [anon_sym_str] = ACTIONS(511), [anon_sym_LBRACK] = ACTIONS(509), [anon_sym_contract] = ACTIONS(511), [anon_sym_script] = ACTIONS(511), [anon_sym_predicate] = ACTIONS(511), [anon_sym_library] = ACTIONS(511), [anon_sym_SQUOTE] = ACTIONS(511), [anon_sym_abi] = ACTIONS(511), [anon_sym_as] = ACTIONS(513), [anon_sym_break] = ACTIONS(511), [anon_sym_configurable] = ACTIONS(511), [anon_sym_const] = ACTIONS(511), [anon_sym_continue] = ACTIONS(511), [anon_sym_default] = ACTIONS(511), [anon_sym_mod] = ACTIONS(511), [anon_sym_enum] = ACTIONS(511), [anon_sym_fn] = ACTIONS(511), [anon_sym_for] = ACTIONS(511), [anon_sym_if] = ACTIONS(511), [anon_sym_impl] = ACTIONS(511), [anon_sym_let] = ACTIONS(511), [anon_sym_match] = ACTIONS(511), [anon_sym_pub] = ACTIONS(511), [anon_sym_return] = ACTIONS(511), [anon_sym_storage] = ACTIONS(511), [anon_sym_struct] = ACTIONS(511), [anon_sym_trait] = ACTIONS(511), [anon_sym_type] = ACTIONS(511), [anon_sym_use] = ACTIONS(511), [anon_sym_while] = ACTIONS(511), [anon_sym_POUND] = ACTIONS(509), [anon_sym_BANG] = ACTIONS(511), [anon_sym_EQ] = ACTIONS(513), [anon_sym_LBRACE] = ACTIONS(509), [anon_sym_RBRACE] = ACTIONS(509), [anon_sym_LPAREN] = ACTIONS(509), [anon_sym_asm] = ACTIONS(511), [anon_sym_PLUS] = ACTIONS(513), [anon_sym_QMARK] = ACTIONS(515), [anon_sym_LT] = ACTIONS(511), [anon_sym_GT] = ACTIONS(513), [anon_sym_COLON_COLON] = ACTIONS(509), [anon_sym_STAR] = ACTIONS(511), [anon_sym_AMP] = ACTIONS(511), [anon_sym_DOT_DOT_DOT] = ACTIONS(515), [anon_sym_DOT_DOT] = ACTIONS(511), [anon_sym_DOT_DOT_EQ] = ACTIONS(515), [anon_sym_DASH] = ACTIONS(511), [anon_sym_AMP_AMP] = ACTIONS(515), [anon_sym_PIPE_PIPE] = ACTIONS(515), [anon_sym_PIPE] = ACTIONS(511), [anon_sym_CARET] = ACTIONS(513), [anon_sym_EQ_EQ] = ACTIONS(515), [anon_sym_BANG_EQ] = ACTIONS(515), [anon_sym_LT_EQ] = ACTIONS(515), [anon_sym_GT_EQ] = ACTIONS(515), [anon_sym_LT_LT] = ACTIONS(513), [anon_sym_GT_GT] = ACTIONS(513), [anon_sym_SLASH] = ACTIONS(513), [anon_sym_PERCENT] = ACTIONS(513), [anon_sym_PLUS_EQ] = ACTIONS(515), [anon_sym_DASH_EQ] = ACTIONS(515), [anon_sym_STAR_EQ] = ACTIONS(515), [anon_sym_SLASH_EQ] = ACTIONS(515), [anon_sym_PERCENT_EQ] = ACTIONS(515), [anon_sym_AMP_EQ] = ACTIONS(515), [anon_sym_PIPE_EQ] = ACTIONS(515), [anon_sym_CARET_EQ] = ACTIONS(515), [anon_sym_LT_LT_EQ] = ACTIONS(515), [anon_sym_GT_GT_EQ] = ACTIONS(515), [anon_sym_yield] = ACTIONS(511), [anon_sym_move] = ACTIONS(511), [anon_sym_DOT] = ACTIONS(513), [sym_integer_literal] = ACTIONS(509), [aux_sym_string_literal_token1] = ACTIONS(509), [sym_char_literal] = ACTIONS(509), [anon_sym_true] = ACTIONS(511), [anon_sym_false] = ACTIONS(511), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(511), [sym_metavariable] = ACTIONS(509), [sym_raw_string_literal] = ACTIONS(509), [sym_float_literal] = ACTIONS(509), [sym_block_comment] = ACTIONS(3), }, [66] = { [ts_builtin_sym_end] = ACTIONS(517), [sym_identifier] = ACTIONS(519), [anon_sym_SEMI] = ACTIONS(517), [anon_sym_u8] = ACTIONS(519), [anon_sym_i8] = ACTIONS(519), [anon_sym_u16] = ACTIONS(519), [anon_sym_i16] = ACTIONS(519), [anon_sym_u32] = ACTIONS(519), [anon_sym_i32] = ACTIONS(519), [anon_sym_u64] = ACTIONS(519), [anon_sym_i64] = ACTIONS(519), [anon_sym_u128] = ACTIONS(519), [anon_sym_i128] = ACTIONS(519), [anon_sym_u256] = ACTIONS(519), [anon_sym_i256] = ACTIONS(519), [anon_sym_b256] = ACTIONS(519), [anon_sym_isize] = ACTIONS(519), [anon_sym_usize] = ACTIONS(519), [anon_sym_f32] = ACTIONS(519), [anon_sym_f64] = ACTIONS(519), [anon_sym_bool] = ACTIONS(519), [anon_sym_char] = ACTIONS(519), [anon_sym_str] = ACTIONS(519), [anon_sym_LBRACK] = ACTIONS(517), [anon_sym_contract] = ACTIONS(519), [anon_sym_script] = ACTIONS(519), [anon_sym_predicate] = ACTIONS(519), [anon_sym_library] = ACTIONS(519), [anon_sym_SQUOTE] = ACTIONS(519), [anon_sym_abi] = ACTIONS(519), [anon_sym_as] = ACTIONS(519), [anon_sym_break] = ACTIONS(519), [anon_sym_configurable] = ACTIONS(519), [anon_sym_const] = ACTIONS(519), [anon_sym_continue] = ACTIONS(519), [anon_sym_default] = ACTIONS(519), [anon_sym_mod] = ACTIONS(519), [anon_sym_enum] = ACTIONS(519), [anon_sym_fn] = ACTIONS(519), [anon_sym_for] = ACTIONS(519), [anon_sym_if] = ACTIONS(519), [anon_sym_impl] = ACTIONS(519), [anon_sym_let] = ACTIONS(519), [anon_sym_match] = ACTIONS(519), [anon_sym_pub] = ACTIONS(519), [anon_sym_return] = ACTIONS(519), [anon_sym_storage] = ACTIONS(519), [anon_sym_struct] = ACTIONS(519), [anon_sym_trait] = ACTIONS(519), [anon_sym_type] = ACTIONS(519), [anon_sym_use] = ACTIONS(519), [anon_sym_while] = ACTIONS(519), [anon_sym_POUND] = ACTIONS(517), [anon_sym_BANG] = ACTIONS(519), [anon_sym_EQ] = ACTIONS(519), [anon_sym_LBRACE] = ACTIONS(517), [anon_sym_RBRACE] = ACTIONS(517), [anon_sym_LPAREN] = ACTIONS(517), [anon_sym_asm] = ACTIONS(519), [anon_sym_PLUS] = ACTIONS(519), [anon_sym_QMARK] = ACTIONS(517), [anon_sym_LT] = ACTIONS(519), [anon_sym_GT] = ACTIONS(519), [anon_sym_COLON_COLON] = ACTIONS(517), [anon_sym_STAR] = ACTIONS(519), [anon_sym_AMP] = ACTIONS(519), [anon_sym_DOT_DOT_DOT] = ACTIONS(517), [anon_sym_DOT_DOT] = ACTIONS(519), [anon_sym_DOT_DOT_EQ] = ACTIONS(517), [anon_sym_DASH] = ACTIONS(519), [anon_sym_AMP_AMP] = ACTIONS(517), [anon_sym_PIPE_PIPE] = ACTIONS(517), [anon_sym_PIPE] = ACTIONS(519), [anon_sym_CARET] = ACTIONS(519), [anon_sym_EQ_EQ] = ACTIONS(517), [anon_sym_BANG_EQ] = ACTIONS(517), [anon_sym_LT_EQ] = ACTIONS(517), [anon_sym_GT_EQ] = ACTIONS(517), [anon_sym_LT_LT] = ACTIONS(519), [anon_sym_GT_GT] = ACTIONS(519), [anon_sym_SLASH] = ACTIONS(519), [anon_sym_PERCENT] = ACTIONS(519), [anon_sym_PLUS_EQ] = ACTIONS(517), [anon_sym_DASH_EQ] = ACTIONS(517), [anon_sym_STAR_EQ] = ACTIONS(517), [anon_sym_SLASH_EQ] = ACTIONS(517), [anon_sym_PERCENT_EQ] = ACTIONS(517), [anon_sym_AMP_EQ] = ACTIONS(517), [anon_sym_PIPE_EQ] = ACTIONS(517), [anon_sym_CARET_EQ] = ACTIONS(517), [anon_sym_LT_LT_EQ] = ACTIONS(517), [anon_sym_GT_GT_EQ] = ACTIONS(517), [anon_sym_yield] = ACTIONS(519), [anon_sym_move] = ACTIONS(519), [anon_sym_DOT] = ACTIONS(519), [sym_integer_literal] = ACTIONS(517), [aux_sym_string_literal_token1] = ACTIONS(517), [sym_char_literal] = ACTIONS(517), [anon_sym_true] = ACTIONS(519), [anon_sym_false] = ACTIONS(519), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(519), [sym_metavariable] = ACTIONS(517), [sym_raw_string_literal] = ACTIONS(517), [sym_float_literal] = ACTIONS(517), [sym_block_comment] = ACTIONS(3), }, [67] = { [ts_builtin_sym_end] = ACTIONS(521), [sym_identifier] = ACTIONS(523), [anon_sym_SEMI] = ACTIONS(521), [anon_sym_u8] = ACTIONS(523), [anon_sym_i8] = ACTIONS(523), [anon_sym_u16] = ACTIONS(523), [anon_sym_i16] = ACTIONS(523), [anon_sym_u32] = ACTIONS(523), [anon_sym_i32] = ACTIONS(523), [anon_sym_u64] = ACTIONS(523), [anon_sym_i64] = ACTIONS(523), [anon_sym_u128] = ACTIONS(523), [anon_sym_i128] = ACTIONS(523), [anon_sym_u256] = ACTIONS(523), [anon_sym_i256] = ACTIONS(523), [anon_sym_b256] = ACTIONS(523), [anon_sym_isize] = ACTIONS(523), [anon_sym_usize] = ACTIONS(523), [anon_sym_f32] = ACTIONS(523), [anon_sym_f64] = ACTIONS(523), [anon_sym_bool] = ACTIONS(523), [anon_sym_char] = ACTIONS(523), [anon_sym_str] = ACTIONS(523), [anon_sym_LBRACK] = ACTIONS(521), [anon_sym_contract] = ACTIONS(523), [anon_sym_script] = ACTIONS(523), [anon_sym_predicate] = ACTIONS(523), [anon_sym_library] = ACTIONS(523), [anon_sym_SQUOTE] = ACTIONS(523), [anon_sym_abi] = ACTIONS(523), [anon_sym_as] = ACTIONS(523), [anon_sym_break] = ACTIONS(523), [anon_sym_configurable] = ACTIONS(523), [anon_sym_const] = ACTIONS(523), [anon_sym_continue] = ACTIONS(523), [anon_sym_default] = ACTIONS(523), [anon_sym_mod] = ACTIONS(523), [anon_sym_enum] = ACTIONS(523), [anon_sym_fn] = ACTIONS(523), [anon_sym_for] = ACTIONS(523), [anon_sym_if] = ACTIONS(523), [anon_sym_impl] = ACTIONS(523), [anon_sym_let] = ACTIONS(523), [anon_sym_match] = ACTIONS(523), [anon_sym_pub] = ACTIONS(523), [anon_sym_return] = ACTIONS(523), [anon_sym_storage] = ACTIONS(523), [anon_sym_struct] = ACTIONS(523), [anon_sym_trait] = ACTIONS(523), [anon_sym_type] = ACTIONS(523), [anon_sym_use] = ACTIONS(523), [anon_sym_while] = ACTIONS(523), [anon_sym_POUND] = ACTIONS(521), [anon_sym_BANG] = ACTIONS(523), [anon_sym_EQ] = ACTIONS(523), [anon_sym_LBRACE] = ACTIONS(521), [anon_sym_RBRACE] = ACTIONS(521), [anon_sym_LPAREN] = ACTIONS(521), [anon_sym_asm] = ACTIONS(523), [anon_sym_PLUS] = ACTIONS(523), [anon_sym_QMARK] = ACTIONS(521), [anon_sym_LT] = ACTIONS(523), [anon_sym_GT] = ACTIONS(523), [anon_sym_COLON_COLON] = ACTIONS(521), [anon_sym_STAR] = ACTIONS(523), [anon_sym_AMP] = ACTIONS(523), [anon_sym_DOT_DOT_DOT] = ACTIONS(521), [anon_sym_DOT_DOT] = ACTIONS(523), [anon_sym_DOT_DOT_EQ] = ACTIONS(521), [anon_sym_DASH] = ACTIONS(523), [anon_sym_AMP_AMP] = ACTIONS(521), [anon_sym_PIPE_PIPE] = ACTIONS(521), [anon_sym_PIPE] = ACTIONS(523), [anon_sym_CARET] = ACTIONS(523), [anon_sym_EQ_EQ] = ACTIONS(521), [anon_sym_BANG_EQ] = ACTIONS(521), [anon_sym_LT_EQ] = ACTIONS(521), [anon_sym_GT_EQ] = ACTIONS(521), [anon_sym_LT_LT] = ACTIONS(523), [anon_sym_GT_GT] = ACTIONS(523), [anon_sym_SLASH] = ACTIONS(523), [anon_sym_PERCENT] = ACTIONS(523), [anon_sym_PLUS_EQ] = ACTIONS(521), [anon_sym_DASH_EQ] = ACTIONS(521), [anon_sym_STAR_EQ] = ACTIONS(521), [anon_sym_SLASH_EQ] = ACTIONS(521), [anon_sym_PERCENT_EQ] = ACTIONS(521), [anon_sym_AMP_EQ] = ACTIONS(521), [anon_sym_PIPE_EQ] = ACTIONS(521), [anon_sym_CARET_EQ] = ACTIONS(521), [anon_sym_LT_LT_EQ] = ACTIONS(521), [anon_sym_GT_GT_EQ] = ACTIONS(521), [anon_sym_yield] = ACTIONS(523), [anon_sym_move] = ACTIONS(523), [anon_sym_DOT] = ACTIONS(523), [sym_integer_literal] = ACTIONS(521), [aux_sym_string_literal_token1] = ACTIONS(521), [sym_char_literal] = ACTIONS(521), [anon_sym_true] = ACTIONS(523), [anon_sym_false] = ACTIONS(523), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(523), [sym_metavariable] = ACTIONS(521), [sym_raw_string_literal] = ACTIONS(521), [sym_float_literal] = ACTIONS(521), [sym_block_comment] = ACTIONS(3), }, [68] = { [ts_builtin_sym_end] = ACTIONS(525), [sym_identifier] = ACTIONS(527), [anon_sym_SEMI] = ACTIONS(525), [anon_sym_u8] = ACTIONS(527), [anon_sym_i8] = ACTIONS(527), [anon_sym_u16] = ACTIONS(527), [anon_sym_i16] = ACTIONS(527), [anon_sym_u32] = ACTIONS(527), [anon_sym_i32] = ACTIONS(527), [anon_sym_u64] = ACTIONS(527), [anon_sym_i64] = ACTIONS(527), [anon_sym_u128] = ACTIONS(527), [anon_sym_i128] = ACTIONS(527), [anon_sym_u256] = ACTIONS(527), [anon_sym_i256] = ACTIONS(527), [anon_sym_b256] = ACTIONS(527), [anon_sym_isize] = ACTIONS(527), [anon_sym_usize] = ACTIONS(527), [anon_sym_f32] = ACTIONS(527), [anon_sym_f64] = ACTIONS(527), [anon_sym_bool] = ACTIONS(527), [anon_sym_char] = ACTIONS(527), [anon_sym_str] = ACTIONS(527), [anon_sym_LBRACK] = ACTIONS(525), [anon_sym_contract] = ACTIONS(527), [anon_sym_script] = ACTIONS(527), [anon_sym_predicate] = ACTIONS(527), [anon_sym_library] = ACTIONS(527), [anon_sym_SQUOTE] = ACTIONS(527), [anon_sym_abi] = ACTIONS(527), [anon_sym_as] = ACTIONS(527), [anon_sym_break] = ACTIONS(527), [anon_sym_configurable] = ACTIONS(527), [anon_sym_const] = ACTIONS(527), [anon_sym_continue] = ACTIONS(527), [anon_sym_default] = ACTIONS(527), [anon_sym_mod] = ACTIONS(527), [anon_sym_enum] = ACTIONS(527), [anon_sym_fn] = ACTIONS(527), [anon_sym_for] = ACTIONS(527), [anon_sym_if] = ACTIONS(527), [anon_sym_impl] = ACTIONS(527), [anon_sym_let] = ACTIONS(527), [anon_sym_match] = ACTIONS(527), [anon_sym_pub] = ACTIONS(527), [anon_sym_return] = ACTIONS(527), [anon_sym_storage] = ACTIONS(527), [anon_sym_struct] = ACTIONS(527), [anon_sym_trait] = ACTIONS(527), [anon_sym_type] = ACTIONS(527), [anon_sym_use] = ACTIONS(527), [anon_sym_while] = ACTIONS(527), [anon_sym_POUND] = ACTIONS(525), [anon_sym_BANG] = ACTIONS(527), [anon_sym_EQ] = ACTIONS(527), [anon_sym_LBRACE] = ACTIONS(525), [anon_sym_RBRACE] = ACTIONS(525), [anon_sym_LPAREN] = ACTIONS(525), [anon_sym_asm] = ACTIONS(527), [anon_sym_PLUS] = ACTIONS(527), [anon_sym_QMARK] = ACTIONS(525), [anon_sym_LT] = ACTIONS(527), [anon_sym_GT] = ACTIONS(527), [anon_sym_COLON_COLON] = ACTIONS(525), [anon_sym_STAR] = ACTIONS(527), [anon_sym_AMP] = ACTIONS(527), [anon_sym_DOT_DOT_DOT] = ACTIONS(525), [anon_sym_DOT_DOT] = ACTIONS(527), [anon_sym_DOT_DOT_EQ] = ACTIONS(525), [anon_sym_DASH] = ACTIONS(527), [anon_sym_AMP_AMP] = ACTIONS(525), [anon_sym_PIPE_PIPE] = ACTIONS(525), [anon_sym_PIPE] = ACTIONS(527), [anon_sym_CARET] = ACTIONS(527), [anon_sym_EQ_EQ] = ACTIONS(525), [anon_sym_BANG_EQ] = ACTIONS(525), [anon_sym_LT_EQ] = ACTIONS(525), [anon_sym_GT_EQ] = ACTIONS(525), [anon_sym_LT_LT] = ACTIONS(527), [anon_sym_GT_GT] = ACTIONS(527), [anon_sym_SLASH] = ACTIONS(527), [anon_sym_PERCENT] = ACTIONS(527), [anon_sym_PLUS_EQ] = ACTIONS(525), [anon_sym_DASH_EQ] = ACTIONS(525), [anon_sym_STAR_EQ] = ACTIONS(525), [anon_sym_SLASH_EQ] = ACTIONS(525), [anon_sym_PERCENT_EQ] = ACTIONS(525), [anon_sym_AMP_EQ] = ACTIONS(525), [anon_sym_PIPE_EQ] = ACTIONS(525), [anon_sym_CARET_EQ] = ACTIONS(525), [anon_sym_LT_LT_EQ] = ACTIONS(525), [anon_sym_GT_GT_EQ] = ACTIONS(525), [anon_sym_yield] = ACTIONS(527), [anon_sym_move] = ACTIONS(527), [anon_sym_DOT] = ACTIONS(527), [sym_integer_literal] = ACTIONS(525), [aux_sym_string_literal_token1] = ACTIONS(525), [sym_char_literal] = ACTIONS(525), [anon_sym_true] = ACTIONS(527), [anon_sym_false] = ACTIONS(527), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(527), [sym_metavariable] = ACTIONS(525), [sym_raw_string_literal] = ACTIONS(525), [sym_float_literal] = ACTIONS(525), [sym_block_comment] = ACTIONS(3), }, [69] = { [ts_builtin_sym_end] = ACTIONS(529), [sym_identifier] = ACTIONS(531), [anon_sym_SEMI] = ACTIONS(529), [anon_sym_u8] = ACTIONS(531), [anon_sym_i8] = ACTIONS(531), [anon_sym_u16] = ACTIONS(531), [anon_sym_i16] = ACTIONS(531), [anon_sym_u32] = ACTIONS(531), [anon_sym_i32] = ACTIONS(531), [anon_sym_u64] = ACTIONS(531), [anon_sym_i64] = ACTIONS(531), [anon_sym_u128] = ACTIONS(531), [anon_sym_i128] = ACTIONS(531), [anon_sym_u256] = ACTIONS(531), [anon_sym_i256] = ACTIONS(531), [anon_sym_b256] = ACTIONS(531), [anon_sym_isize] = ACTIONS(531), [anon_sym_usize] = ACTIONS(531), [anon_sym_f32] = ACTIONS(531), [anon_sym_f64] = ACTIONS(531), [anon_sym_bool] = ACTIONS(531), [anon_sym_char] = ACTIONS(531), [anon_sym_str] = ACTIONS(531), [anon_sym_LBRACK] = ACTIONS(529), [anon_sym_contract] = ACTIONS(531), [anon_sym_script] = ACTIONS(531), [anon_sym_predicate] = ACTIONS(531), [anon_sym_library] = ACTIONS(531), [anon_sym_SQUOTE] = ACTIONS(531), [anon_sym_abi] = ACTIONS(531), [anon_sym_as] = ACTIONS(531), [anon_sym_break] = ACTIONS(531), [anon_sym_configurable] = ACTIONS(531), [anon_sym_const] = ACTIONS(531), [anon_sym_continue] = ACTIONS(531), [anon_sym_default] = ACTIONS(531), [anon_sym_mod] = ACTIONS(531), [anon_sym_enum] = ACTIONS(531), [anon_sym_fn] = ACTIONS(531), [anon_sym_for] = ACTIONS(531), [anon_sym_if] = ACTIONS(531), [anon_sym_impl] = ACTIONS(531), [anon_sym_let] = ACTIONS(531), [anon_sym_match] = ACTIONS(531), [anon_sym_pub] = ACTIONS(531), [anon_sym_return] = ACTIONS(531), [anon_sym_storage] = ACTIONS(531), [anon_sym_struct] = ACTIONS(531), [anon_sym_trait] = ACTIONS(531), [anon_sym_type] = ACTIONS(531), [anon_sym_use] = ACTIONS(531), [anon_sym_while] = ACTIONS(531), [anon_sym_POUND] = ACTIONS(529), [anon_sym_BANG] = ACTIONS(531), [anon_sym_EQ] = ACTIONS(531), [anon_sym_LBRACE] = ACTIONS(529), [anon_sym_RBRACE] = ACTIONS(529), [anon_sym_LPAREN] = ACTIONS(529), [anon_sym_asm] = ACTIONS(531), [anon_sym_PLUS] = ACTIONS(531), [anon_sym_QMARK] = ACTIONS(529), [anon_sym_LT] = ACTIONS(531), [anon_sym_GT] = ACTIONS(531), [anon_sym_COLON_COLON] = ACTIONS(529), [anon_sym_STAR] = ACTIONS(531), [anon_sym_AMP] = ACTIONS(531), [anon_sym_DOT_DOT_DOT] = ACTIONS(529), [anon_sym_DOT_DOT] = ACTIONS(531), [anon_sym_DOT_DOT_EQ] = ACTIONS(529), [anon_sym_DASH] = ACTIONS(531), [anon_sym_AMP_AMP] = ACTIONS(529), [anon_sym_PIPE_PIPE] = ACTIONS(529), [anon_sym_PIPE] = ACTIONS(531), [anon_sym_CARET] = ACTIONS(531), [anon_sym_EQ_EQ] = ACTIONS(529), [anon_sym_BANG_EQ] = ACTIONS(529), [anon_sym_LT_EQ] = ACTIONS(529), [anon_sym_GT_EQ] = ACTIONS(529), [anon_sym_LT_LT] = ACTIONS(531), [anon_sym_GT_GT] = ACTIONS(531), [anon_sym_SLASH] = ACTIONS(531), [anon_sym_PERCENT] = ACTIONS(531), [anon_sym_PLUS_EQ] = ACTIONS(529), [anon_sym_DASH_EQ] = ACTIONS(529), [anon_sym_STAR_EQ] = ACTIONS(529), [anon_sym_SLASH_EQ] = ACTIONS(529), [anon_sym_PERCENT_EQ] = ACTIONS(529), [anon_sym_AMP_EQ] = ACTIONS(529), [anon_sym_PIPE_EQ] = ACTIONS(529), [anon_sym_CARET_EQ] = ACTIONS(529), [anon_sym_LT_LT_EQ] = ACTIONS(529), [anon_sym_GT_GT_EQ] = ACTIONS(529), [anon_sym_yield] = ACTIONS(531), [anon_sym_move] = ACTIONS(531), [anon_sym_DOT] = ACTIONS(531), [sym_integer_literal] = ACTIONS(529), [aux_sym_string_literal_token1] = ACTIONS(529), [sym_char_literal] = ACTIONS(529), [anon_sym_true] = ACTIONS(531), [anon_sym_false] = ACTIONS(531), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(531), [sym_metavariable] = ACTIONS(529), [sym_raw_string_literal] = ACTIONS(529), [sym_float_literal] = ACTIONS(529), [sym_block_comment] = ACTIONS(3), }, [70] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(916), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1914), [sym__let_chain] = STATE(1917), [sym__condition] = STATE(2072), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(533), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [71] = { [ts_builtin_sym_end] = ACTIONS(535), [sym_identifier] = ACTIONS(537), [anon_sym_SEMI] = ACTIONS(535), [anon_sym_u8] = ACTIONS(537), [anon_sym_i8] = ACTIONS(537), [anon_sym_u16] = ACTIONS(537), [anon_sym_i16] = ACTIONS(537), [anon_sym_u32] = ACTIONS(537), [anon_sym_i32] = ACTIONS(537), [anon_sym_u64] = ACTIONS(537), [anon_sym_i64] = ACTIONS(537), [anon_sym_u128] = ACTIONS(537), [anon_sym_i128] = ACTIONS(537), [anon_sym_u256] = ACTIONS(537), [anon_sym_i256] = ACTIONS(537), [anon_sym_b256] = ACTIONS(537), [anon_sym_isize] = ACTIONS(537), [anon_sym_usize] = ACTIONS(537), [anon_sym_f32] = ACTIONS(537), [anon_sym_f64] = ACTIONS(537), [anon_sym_bool] = ACTIONS(537), [anon_sym_char] = ACTIONS(537), [anon_sym_str] = ACTIONS(537), [anon_sym_LBRACK] = ACTIONS(535), [anon_sym_contract] = ACTIONS(537), [anon_sym_script] = ACTIONS(537), [anon_sym_predicate] = ACTIONS(537), [anon_sym_library] = ACTIONS(537), [anon_sym_SQUOTE] = ACTIONS(537), [anon_sym_abi] = ACTIONS(537), [anon_sym_as] = ACTIONS(537), [anon_sym_break] = ACTIONS(537), [anon_sym_configurable] = ACTIONS(537), [anon_sym_const] = ACTIONS(537), [anon_sym_continue] = ACTIONS(537), [anon_sym_default] = ACTIONS(537), [anon_sym_mod] = ACTIONS(537), [anon_sym_enum] = ACTIONS(537), [anon_sym_fn] = ACTIONS(537), [anon_sym_for] = ACTIONS(537), [anon_sym_if] = ACTIONS(537), [anon_sym_impl] = ACTIONS(537), [anon_sym_let] = ACTIONS(537), [anon_sym_match] = ACTIONS(537), [anon_sym_pub] = ACTIONS(537), [anon_sym_return] = ACTIONS(537), [anon_sym_storage] = ACTIONS(537), [anon_sym_struct] = ACTIONS(537), [anon_sym_trait] = ACTIONS(537), [anon_sym_type] = ACTIONS(537), [anon_sym_use] = ACTIONS(537), [anon_sym_while] = ACTIONS(537), [anon_sym_POUND] = ACTIONS(535), [anon_sym_BANG] = ACTIONS(537), [anon_sym_EQ] = ACTIONS(537), [anon_sym_LBRACE] = ACTIONS(535), [anon_sym_RBRACE] = ACTIONS(535), [anon_sym_LPAREN] = ACTIONS(535), [anon_sym_asm] = ACTIONS(537), [anon_sym_PLUS] = ACTIONS(537), [anon_sym_QMARK] = ACTIONS(535), [anon_sym_LT] = ACTIONS(537), [anon_sym_GT] = ACTIONS(537), [anon_sym_COLON_COLON] = ACTIONS(535), [anon_sym_STAR] = ACTIONS(537), [anon_sym_AMP] = ACTIONS(537), [anon_sym_DOT_DOT_DOT] = ACTIONS(535), [anon_sym_DOT_DOT] = ACTIONS(537), [anon_sym_DOT_DOT_EQ] = ACTIONS(535), [anon_sym_DASH] = ACTIONS(537), [anon_sym_AMP_AMP] = ACTIONS(535), [anon_sym_PIPE_PIPE] = ACTIONS(535), [anon_sym_PIPE] = ACTIONS(537), [anon_sym_CARET] = ACTIONS(537), [anon_sym_EQ_EQ] = ACTIONS(535), [anon_sym_BANG_EQ] = ACTIONS(535), [anon_sym_LT_EQ] = ACTIONS(535), [anon_sym_GT_EQ] = ACTIONS(535), [anon_sym_LT_LT] = ACTIONS(537), [anon_sym_GT_GT] = ACTIONS(537), [anon_sym_SLASH] = ACTIONS(537), [anon_sym_PERCENT] = ACTIONS(537), [anon_sym_PLUS_EQ] = ACTIONS(535), [anon_sym_DASH_EQ] = ACTIONS(535), [anon_sym_STAR_EQ] = ACTIONS(535), [anon_sym_SLASH_EQ] = ACTIONS(535), [anon_sym_PERCENT_EQ] = ACTIONS(535), [anon_sym_AMP_EQ] = ACTIONS(535), [anon_sym_PIPE_EQ] = ACTIONS(535), [anon_sym_CARET_EQ] = ACTIONS(535), [anon_sym_LT_LT_EQ] = ACTIONS(535), [anon_sym_GT_GT_EQ] = ACTIONS(535), [anon_sym_yield] = ACTIONS(537), [anon_sym_move] = ACTIONS(537), [anon_sym_DOT] = ACTIONS(537), [sym_integer_literal] = ACTIONS(535), [aux_sym_string_literal_token1] = ACTIONS(535), [sym_char_literal] = ACTIONS(535), [anon_sym_true] = ACTIONS(537), [anon_sym_false] = ACTIONS(537), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(537), [sym_metavariable] = ACTIONS(535), [sym_raw_string_literal] = ACTIONS(535), [sym_float_literal] = ACTIONS(535), [sym_block_comment] = ACTIONS(3), }, [72] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(927), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1830), [sym__let_chain] = STATE(1831), [sym__condition] = STATE(1952), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [73] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(927), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1830), [sym__let_chain] = STATE(1831), [sym__condition] = STATE(1918), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [74] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(927), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1830), [sym__let_chain] = STATE(1831), [sym__condition] = STATE(1931), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [75] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(927), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1830), [sym__let_chain] = STATE(1831), [sym__condition] = STATE(1828), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [76] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(927), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1830), [sym__let_chain] = STATE(1831), [sym__condition] = STATE(1887), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [77] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(927), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1830), [sym__let_chain] = STATE(1831), [sym__condition] = STATE(1889), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [78] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(927), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1830), [sym__let_chain] = STATE(1831), [sym__condition] = STATE(1899), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [79] = { [ts_builtin_sym_end] = ACTIONS(539), [sym_identifier] = ACTIONS(541), [anon_sym_SEMI] = ACTIONS(539), [anon_sym_u8] = ACTIONS(541), [anon_sym_i8] = ACTIONS(541), [anon_sym_u16] = ACTIONS(541), [anon_sym_i16] = ACTIONS(541), [anon_sym_u32] = ACTIONS(541), [anon_sym_i32] = ACTIONS(541), [anon_sym_u64] = ACTIONS(541), [anon_sym_i64] = ACTIONS(541), [anon_sym_u128] = ACTIONS(541), [anon_sym_i128] = ACTIONS(541), [anon_sym_u256] = ACTIONS(541), [anon_sym_i256] = ACTIONS(541), [anon_sym_b256] = ACTIONS(541), [anon_sym_isize] = ACTIONS(541), [anon_sym_usize] = ACTIONS(541), [anon_sym_f32] = ACTIONS(541), [anon_sym_f64] = ACTIONS(541), [anon_sym_bool] = ACTIONS(541), [anon_sym_char] = ACTIONS(541), [anon_sym_str] = ACTIONS(541), [anon_sym_LBRACK] = ACTIONS(539), [anon_sym_contract] = ACTIONS(541), [anon_sym_script] = ACTIONS(541), [anon_sym_predicate] = ACTIONS(541), [anon_sym_library] = ACTIONS(541), [anon_sym_SQUOTE] = ACTIONS(541), [anon_sym_abi] = ACTIONS(541), [anon_sym_as] = ACTIONS(541), [anon_sym_break] = ACTIONS(541), [anon_sym_configurable] = ACTIONS(541), [anon_sym_const] = ACTIONS(541), [anon_sym_continue] = ACTIONS(541), [anon_sym_default] = ACTIONS(541), [anon_sym_mod] = ACTIONS(541), [anon_sym_enum] = ACTIONS(541), [anon_sym_fn] = ACTIONS(541), [anon_sym_for] = ACTIONS(541), [anon_sym_if] = ACTIONS(541), [anon_sym_impl] = ACTIONS(541), [anon_sym_let] = ACTIONS(541), [anon_sym_match] = ACTIONS(541), [anon_sym_pub] = ACTIONS(541), [anon_sym_return] = ACTIONS(541), [anon_sym_storage] = ACTIONS(541), [anon_sym_struct] = ACTIONS(541), [anon_sym_trait] = ACTIONS(541), [anon_sym_type] = ACTIONS(541), [anon_sym_use] = ACTIONS(541), [anon_sym_while] = ACTIONS(541), [anon_sym_POUND] = ACTIONS(539), [anon_sym_BANG] = ACTIONS(541), [anon_sym_EQ] = ACTIONS(541), [anon_sym_LBRACE] = ACTIONS(539), [anon_sym_RBRACE] = ACTIONS(539), [anon_sym_LPAREN] = ACTIONS(539), [anon_sym_asm] = ACTIONS(541), [anon_sym_PLUS] = ACTIONS(541), [anon_sym_QMARK] = ACTIONS(539), [anon_sym_LT] = ACTIONS(541), [anon_sym_GT] = ACTIONS(541), [anon_sym_COLON_COLON] = ACTIONS(539), [anon_sym_STAR] = ACTIONS(541), [anon_sym_AMP] = ACTIONS(541), [anon_sym_DOT_DOT_DOT] = ACTIONS(539), [anon_sym_DOT_DOT] = ACTIONS(541), [anon_sym_DOT_DOT_EQ] = ACTIONS(539), [anon_sym_DASH] = ACTIONS(541), [anon_sym_AMP_AMP] = ACTIONS(539), [anon_sym_PIPE_PIPE] = ACTIONS(539), [anon_sym_PIPE] = ACTIONS(541), [anon_sym_CARET] = ACTIONS(541), [anon_sym_EQ_EQ] = ACTIONS(539), [anon_sym_BANG_EQ] = ACTIONS(539), [anon_sym_LT_EQ] = ACTIONS(539), [anon_sym_GT_EQ] = ACTIONS(539), [anon_sym_LT_LT] = ACTIONS(541), [anon_sym_GT_GT] = ACTIONS(541), [anon_sym_SLASH] = ACTIONS(541), [anon_sym_PERCENT] = ACTIONS(541), [anon_sym_PLUS_EQ] = ACTIONS(539), [anon_sym_DASH_EQ] = ACTIONS(539), [anon_sym_STAR_EQ] = ACTIONS(539), [anon_sym_SLASH_EQ] = ACTIONS(539), [anon_sym_PERCENT_EQ] = ACTIONS(539), [anon_sym_AMP_EQ] = ACTIONS(539), [anon_sym_PIPE_EQ] = ACTIONS(539), [anon_sym_CARET_EQ] = ACTIONS(539), [anon_sym_LT_LT_EQ] = ACTIONS(539), [anon_sym_GT_GT_EQ] = ACTIONS(539), [anon_sym_yield] = ACTIONS(541), [anon_sym_move] = ACTIONS(541), [anon_sym_DOT] = ACTIONS(541), [sym_integer_literal] = ACTIONS(539), [aux_sym_string_literal_token1] = ACTIONS(539), [sym_char_literal] = ACTIONS(539), [anon_sym_true] = ACTIONS(541), [anon_sym_false] = ACTIONS(541), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(541), [sym_metavariable] = ACTIONS(539), [sym_raw_string_literal] = ACTIONS(539), [sym_float_literal] = ACTIONS(539), [sym_block_comment] = ACTIONS(3), }, [80] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(474), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(829), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(474), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [81] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(82), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(868), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(82), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [82] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(474), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(869), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(474), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [83] = { [sym_identifier] = ACTIONS(493), [anon_sym_SEMI] = ACTIONS(495), [anon_sym_u8] = ACTIONS(493), [anon_sym_i8] = ACTIONS(493), [anon_sym_u16] = ACTIONS(493), [anon_sym_i16] = ACTIONS(493), [anon_sym_u32] = ACTIONS(493), [anon_sym_i32] = ACTIONS(493), [anon_sym_u64] = ACTIONS(493), [anon_sym_i64] = ACTIONS(493), [anon_sym_u128] = ACTIONS(493), [anon_sym_i128] = ACTIONS(493), [anon_sym_u256] = ACTIONS(493), [anon_sym_i256] = ACTIONS(493), [anon_sym_b256] = ACTIONS(493), [anon_sym_isize] = ACTIONS(493), [anon_sym_usize] = ACTIONS(493), [anon_sym_f32] = ACTIONS(493), [anon_sym_f64] = ACTIONS(493), [anon_sym_bool] = ACTIONS(493), [anon_sym_char] = ACTIONS(493), [anon_sym_str] = ACTIONS(493), [anon_sym_LBRACK] = ACTIONS(495), [anon_sym_contract] = ACTIONS(493), [anon_sym_script] = ACTIONS(493), [anon_sym_predicate] = ACTIONS(493), [anon_sym_library] = ACTIONS(493), [anon_sym_SQUOTE] = ACTIONS(493), [anon_sym_abi] = ACTIONS(493), [anon_sym_as] = ACTIONS(498), [anon_sym_break] = ACTIONS(493), [anon_sym_configurable] = ACTIONS(493), [anon_sym_const] = ACTIONS(493), [anon_sym_continue] = ACTIONS(493), [anon_sym_default] = ACTIONS(493), [anon_sym_mod] = ACTIONS(493), [anon_sym_enum] = ACTIONS(493), [anon_sym_fn] = ACTIONS(493), [anon_sym_for] = ACTIONS(493), [anon_sym_if] = ACTIONS(493), [anon_sym_impl] = ACTIONS(493), [anon_sym_let] = ACTIONS(493), [anon_sym_match] = ACTIONS(493), [anon_sym_pub] = ACTIONS(493), [anon_sym_return] = ACTIONS(493), [anon_sym_storage] = ACTIONS(493), [anon_sym_struct] = ACTIONS(493), [anon_sym_trait] = ACTIONS(493), [anon_sym_type] = ACTIONS(493), [anon_sym_use] = ACTIONS(493), [anon_sym_while] = ACTIONS(493), [anon_sym_POUND] = ACTIONS(491), [anon_sym_BANG] = ACTIONS(493), [anon_sym_EQ] = ACTIONS(498), [anon_sym_LBRACE] = ACTIONS(491), [anon_sym_RBRACE] = ACTIONS(491), [anon_sym_LPAREN] = ACTIONS(495), [anon_sym_asm] = ACTIONS(493), [anon_sym_PLUS] = ACTIONS(498), [anon_sym_QMARK] = ACTIONS(500), [anon_sym_LT] = ACTIONS(502), [anon_sym_GT] = ACTIONS(498), [anon_sym_COLON_COLON] = ACTIONS(491), [anon_sym_STAR] = ACTIONS(502), [anon_sym_AMP] = ACTIONS(502), [anon_sym_DOT_DOT_DOT] = ACTIONS(500), [anon_sym_DOT_DOT] = ACTIONS(502), [anon_sym_DOT_DOT_EQ] = ACTIONS(500), [anon_sym_DASH] = ACTIONS(502), [anon_sym_AMP_AMP] = ACTIONS(500), [anon_sym_PIPE_PIPE] = ACTIONS(500), [anon_sym_PIPE] = ACTIONS(502), [anon_sym_CARET] = ACTIONS(498), [anon_sym_EQ_EQ] = ACTIONS(500), [anon_sym_BANG_EQ] = ACTIONS(500), [anon_sym_LT_EQ] = ACTIONS(500), [anon_sym_GT_EQ] = ACTIONS(500), [anon_sym_LT_LT] = ACTIONS(498), [anon_sym_GT_GT] = ACTIONS(498), [anon_sym_SLASH] = ACTIONS(498), [anon_sym_PERCENT] = ACTIONS(498), [anon_sym_PLUS_EQ] = ACTIONS(500), [anon_sym_DASH_EQ] = ACTIONS(500), [anon_sym_STAR_EQ] = ACTIONS(500), [anon_sym_SLASH_EQ] = ACTIONS(500), [anon_sym_PERCENT_EQ] = ACTIONS(500), [anon_sym_AMP_EQ] = ACTIONS(500), [anon_sym_PIPE_EQ] = ACTIONS(500), [anon_sym_CARET_EQ] = ACTIONS(500), [anon_sym_LT_LT_EQ] = ACTIONS(500), [anon_sym_GT_GT_EQ] = ACTIONS(500), [anon_sym_yield] = ACTIONS(493), [anon_sym_move] = ACTIONS(493), [anon_sym_DOT] = ACTIONS(498), [sym_integer_literal] = ACTIONS(491), [aux_sym_string_literal_token1] = ACTIONS(491), [sym_char_literal] = ACTIONS(491), [anon_sym_true] = ACTIONS(493), [anon_sym_false] = ACTIONS(493), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(493), [sym_metavariable] = ACTIONS(491), [sym_raw_string_literal] = ACTIONS(491), [sym_float_literal] = ACTIONS(491), [sym_block_comment] = ACTIONS(3), }, [84] = { [sym_primitive_type] = STATE(712), [sym_attribute_item] = STATE(474), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(929), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_enum_variant_list_repeat1] = STATE(474), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_POUND] = ACTIONS(357), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [85] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(882), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1758), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [86] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(904), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_tuple_expression_repeat1] = STATE(92), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(545), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [87] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(924), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1758), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(479), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [88] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(910), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1758), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(533), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [89] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(836), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_tuple_expression_repeat1] = STATE(90), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(547), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [90] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(899), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_tuple_expression_repeat1] = STATE(92), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(549), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [91] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(766), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_let_condition] = STATE(1758), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_let] = ACTIONS(533), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [92] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(939), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_tuple_expression_repeat1] = STATE(92), [sym_identifier] = ACTIONS(551), [anon_sym_u8] = ACTIONS(554), [anon_sym_i8] = ACTIONS(554), [anon_sym_u16] = ACTIONS(554), [anon_sym_i16] = ACTIONS(554), [anon_sym_u32] = ACTIONS(554), [anon_sym_i32] = ACTIONS(554), [anon_sym_u64] = ACTIONS(554), [anon_sym_i64] = ACTIONS(554), [anon_sym_u128] = ACTIONS(554), [anon_sym_i128] = ACTIONS(554), [anon_sym_u256] = ACTIONS(554), [anon_sym_i256] = ACTIONS(554), [anon_sym_b256] = ACTIONS(554), [anon_sym_isize] = ACTIONS(554), [anon_sym_usize] = ACTIONS(554), [anon_sym_f32] = ACTIONS(554), [anon_sym_f64] = ACTIONS(554), [anon_sym_bool] = ACTIONS(554), [anon_sym_char] = ACTIONS(554), [anon_sym_str] = ACTIONS(557), [anon_sym_LBRACK] = ACTIONS(560), [anon_sym_SQUOTE] = ACTIONS(563), [anon_sym_abi] = ACTIONS(566), [anon_sym_break] = ACTIONS(569), [anon_sym_const] = ACTIONS(572), [anon_sym_continue] = ACTIONS(575), [anon_sym_default] = ACTIONS(578), [anon_sym_for] = ACTIONS(581), [anon_sym_if] = ACTIONS(584), [anon_sym_match] = ACTIONS(587), [anon_sym_return] = ACTIONS(590), [anon_sym_storage] = ACTIONS(593), [anon_sym_while] = ACTIONS(596), [anon_sym_BANG] = ACTIONS(599), [anon_sym_LBRACE] = ACTIONS(602), [anon_sym_LPAREN] = ACTIONS(605), [anon_sym_RPAREN] = ACTIONS(608), [anon_sym_asm] = ACTIONS(610), [anon_sym_LT] = ACTIONS(613), [anon_sym_COLON_COLON] = ACTIONS(616), [anon_sym_STAR] = ACTIONS(599), [anon_sym_AMP] = ACTIONS(619), [anon_sym_DOT_DOT] = ACTIONS(622), [anon_sym_DASH] = ACTIONS(599), [anon_sym_PIPE] = ACTIONS(625), [anon_sym_yield] = ACTIONS(628), [anon_sym_move] = ACTIONS(631), [sym_integer_literal] = ACTIONS(634), [aux_sym_string_literal_token1] = ACTIONS(637), [sym_char_literal] = ACTIONS(634), [anon_sym_true] = ACTIONS(640), [anon_sym_false] = ACTIONS(640), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(643), [sym_metavariable] = ACTIONS(646), [sym_raw_string_literal] = ACTIONS(634), [sym_float_literal] = ACTIONS(634), [sym_block_comment] = ACTIONS(3), }, [93] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(899), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [aux_sym_tuple_expression_repeat1] = STATE(86), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_RPAREN] = ACTIONS(549), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [94] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(761), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_DASH_GT] = ACTIONS(649), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(281), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [95] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(886), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_RBRACK] = ACTIONS(651), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [96] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(900), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [sym_mutable_specifier] = ACTIONS(653), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [97] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(757), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(655), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [sym_mutable_specifier] = ACTIONS(657), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [98] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(890), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_DASH_GT] = ACTIONS(649), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(327), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [99] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(901), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_DASH_GT] = ACTIONS(659), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(327), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [100] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(772), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [sym_mutable_specifier] = ACTIONS(661), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [101] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(886), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_RBRACK] = ACTIONS(663), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [102] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(777), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_DASH_GT] = ACTIONS(659), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(281), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [103] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(886), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_RBRACK] = ACTIONS(665), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [104] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(866), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [105] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(873), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [106] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(937), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [107] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(774), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [108] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(863), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [109] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(841), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [110] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(850), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(217), [sym_match_expression] = STATE(217), [sym_while_expression] = STATE(217), [sym_for_expression] = STATE(217), [sym_const_block] = STATE(217), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2199), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(217), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(667), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(669), [anon_sym_if] = ACTIONS(671), [anon_sym_match] = ACTIONS(673), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(675), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(677), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [111] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(931), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [112] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(918), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(215), [sym_match_expression] = STATE(215), [sym_while_expression] = STATE(215), [sym_for_expression] = STATE(215), [sym_const_block] = STATE(215), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2199), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(215), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(667), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(669), [anon_sym_if] = ACTIONS(671), [anon_sym_match] = ACTIONS(673), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(675), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(677), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [113] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(940), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(217), [sym_match_expression] = STATE(217), [sym_while_expression] = STATE(217), [sym_for_expression] = STATE(217), [sym_const_block] = STATE(217), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2199), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(217), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(667), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(669), [anon_sym_if] = ACTIONS(671), [anon_sym_match] = ACTIONS(673), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(675), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(677), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [114] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(928), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [115] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(908), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [116] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(776), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [117] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(933), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [118] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(872), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [119] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(773), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [120] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(865), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [121] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(867), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [122] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(860), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [123] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(932), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [124] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(871), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [125] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(877), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [126] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(879), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [127] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(862), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [128] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(881), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [129] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(674), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [130] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(857), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [131] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(882), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [132] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(883), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [133] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(885), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [134] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(887), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [135] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(889), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [136] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(897), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [137] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(925), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [138] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(912), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [139] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(919), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [140] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(906), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [141] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(674), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [142] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(923), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [143] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(886), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [144] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(759), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [145] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(674), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(543), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [146] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(880), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [147] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(760), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [148] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(884), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [149] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(921), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [150] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(763), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [151] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(764), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [152] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(876), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [153] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(870), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [154] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(878), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(215), [sym_match_expression] = STATE(215), [sym_while_expression] = STATE(215), [sym_for_expression] = STATE(215), [sym_const_block] = STATE(215), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2199), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(215), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(667), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(669), [anon_sym_if] = ACTIONS(671), [anon_sym_match] = ACTIONS(673), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(675), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(677), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [155] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(765), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [156] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(674), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [157] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(839), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [158] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(757), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [159] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(938), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [160] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(864), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [161] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(766), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [162] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(767), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [163] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(913), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [164] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(894), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [165] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(909), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [166] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(926), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [167] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(837), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [168] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(838), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [169] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(840), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [170] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(934), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [171] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(842), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [172] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(895), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [173] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(847), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [174] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(768), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [175] = { [sym_primitive_type] = STATE(827), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1703), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(851), [sym_scoped_identifier] = STATE(828), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(98), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(808), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(319), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(321), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(323), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(325), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(481), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(329), [anon_sym_STAR] = ACTIONS(481), [anon_sym_AMP] = ACTIONS(483), [anon_sym_DOT_DOT] = ACTIONS(485), [anon_sym_DASH] = ACTIONS(481), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(331), [anon_sym_move] = ACTIONS(333), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(335), [sym_metavariable] = ACTIONS(337), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [176] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(770), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [177] = { [sym_primitive_type] = STATE(712), [sym_asm_item] = STATE(751), [sym_bracketed_type] = STATE(2000), [sym_generic_function] = STATE(653), [sym_generic_type_with_turbofish] = STATE(1781), [sym__expression_except_range] = STATE(653), [sym__expression] = STATE(874), [sym_scoped_identifier] = STATE(725), [sym_scoped_type_identifier_in_expression_position] = STATE(1970), [sym_range_expression] = STATE(728), [sym_unary_expression] = STATE(653), [sym_try_expression] = STATE(653), [sym_reference_expression] = STATE(653), [sym_binary_expression] = STATE(653), [sym_assignment_expression] = STATE(653), [sym_compound_assignment_expr] = STATE(653), [sym_type_cast_expression] = STATE(653), [sym_return_expression] = STATE(653), [sym_yield_expression] = STATE(653), [sym_call_expression] = STATE(653), [sym_abi_call_expression] = STATE(653), [sym_abi_instance_expression] = STATE(653), [sym_array_expression] = STATE(653), [sym_parenthesized_expression] = STATE(653), [sym_tuple_expression] = STATE(653), [sym_unit_expression] = STATE(653), [sym_struct_expression] = STATE(653), [sym_if_expression] = STATE(653), [sym_match_expression] = STATE(653), [sym_while_expression] = STATE(653), [sym_for_expression] = STATE(653), [sym_const_block] = STATE(653), [sym_closure_expression] = STATE(653), [sym_closure_parameters] = STATE(94), [sym_loop_label] = STATE(2194), [sym_break_expression] = STATE(653), [sym_continue_expression] = STATE(653), [sym_index_expression] = STATE(653), [sym_field_expression] = STATE(629), [sym_block] = STATE(653), [sym__literal] = STATE(653), [sym_string_literal] = STATE(688), [sym_boolean_literal] = STATE(688), [sym_storage] = STATE(653), [sym_identifier] = ACTIONS(7), [anon_sym_u8] = ACTIONS(11), [anon_sym_i8] = ACTIONS(11), [anon_sym_u16] = ACTIONS(11), [anon_sym_i16] = ACTIONS(11), [anon_sym_u32] = ACTIONS(11), [anon_sym_i32] = ACTIONS(11), [anon_sym_u64] = ACTIONS(11), [anon_sym_i64] = ACTIONS(11), [anon_sym_u128] = ACTIONS(11), [anon_sym_i128] = ACTIONS(11), [anon_sym_u256] = ACTIONS(11), [anon_sym_i256] = ACTIONS(11), [anon_sym_b256] = ACTIONS(11), [anon_sym_isize] = ACTIONS(11), [anon_sym_usize] = ACTIONS(11), [anon_sym_f32] = ACTIONS(11), [anon_sym_f64] = ACTIONS(11), [anon_sym_bool] = ACTIONS(11), [anon_sym_char] = ACTIONS(11), [anon_sym_str] = ACTIONS(13), [anon_sym_LBRACK] = ACTIONS(15), [anon_sym_SQUOTE] = ACTIONS(19), [anon_sym_abi] = ACTIONS(263), [anon_sym_break] = ACTIONS(23), [anon_sym_const] = ACTIONS(267), [anon_sym_continue] = ACTIONS(29), [anon_sym_default] = ACTIONS(269), [anon_sym_for] = ACTIONS(271), [anon_sym_if] = ACTIONS(273), [anon_sym_match] = ACTIONS(275), [anon_sym_return] = ACTIONS(51), [anon_sym_storage] = ACTIONS(277), [anon_sym_while] = ACTIONS(279), [anon_sym_BANG] = ACTIONS(67), [anon_sym_LBRACE] = ACTIONS(283), [anon_sym_LPAREN] = ACTIONS(71), [anon_sym_asm] = ACTIONS(287), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(77), [anon_sym_STAR] = ACTIONS(67), [anon_sym_AMP] = ACTIONS(79), [anon_sym_DOT_DOT] = ACTIONS(81), [anon_sym_DASH] = ACTIONS(67), [anon_sym_PIPE] = ACTIONS(83), [anon_sym_yield] = ACTIONS(85), [anon_sym_move] = ACTIONS(87), [sym_integer_literal] = ACTIONS(89), [aux_sym_string_literal_token1] = ACTIONS(91), [sym_char_literal] = ACTIONS(89), [anon_sym_true] = ACTIONS(93), [anon_sym_false] = ACTIONS(93), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(95), [sym_metavariable] = ACTIONS(97), [sym_raw_string_literal] = ACTIONS(89), [sym_float_literal] = ACTIONS(89), [sym_block_comment] = ACTIONS(3), }, [178] = { [sym_identifier] = ACTIONS(679), [anon_sym_SEMI] = ACTIONS(681), [anon_sym_u8] = ACTIONS(679), [anon_sym_i8] = ACTIONS(679), [anon_sym_u16] = ACTIONS(679), [anon_sym_i16] = ACTIONS(679), [anon_sym_u32] = ACTIONS(679), [anon_sym_i32] = ACTIONS(679), [anon_sym_u64] = ACTIONS(679), [anon_sym_i64] = ACTIONS(679), [anon_sym_u128] = ACTIONS(679), [anon_sym_i128] = ACTIONS(679), [anon_sym_u256] = ACTIONS(679), [anon_sym_i256] = ACTIONS(679), [anon_sym_b256] = ACTIONS(679), [anon_sym_isize] = ACTIONS(679), [anon_sym_usize] = ACTIONS(679), [anon_sym_f32] = ACTIONS(679), [anon_sym_f64] = ACTIONS(679), [anon_sym_bool] = ACTIONS(679), [anon_sym_char] = ACTIONS(679), [anon_sym_str] = ACTIONS(679), [anon_sym_LBRACK] = ACTIONS(681), [anon_sym_RBRACK] = ACTIONS(681), [anon_sym_SQUOTE] = ACTIONS(679), [anon_sym_abi] = ACTIONS(679), [anon_sym_as] = ACTIONS(679), [anon_sym_break] = ACTIONS(679), [anon_sym_const] = ACTIONS(679), [anon_sym_continue] = ACTIONS(679), [anon_sym_default] = ACTIONS(679), [anon_sym_for] = ACTIONS(679), [anon_sym_if] = ACTIONS(679), [anon_sym_match] = ACTIONS(679), [anon_sym_return] = ACTIONS(679), [anon_sym_storage] = ACTIONS(679), [anon_sym_while] = ACTIONS(679), [anon_sym_COMMA] = ACTIONS(681), [anon_sym_BANG] = ACTIONS(679), [anon_sym_EQ] = ACTIONS(679), [anon_sym_LBRACE] = ACTIONS(681), [anon_sym_RBRACE] = ACTIONS(681), [anon_sym_COLON] = ACTIONS(679), [anon_sym_LPAREN] = ACTIONS(681), [anon_sym_RPAREN] = ACTIONS(681), [anon_sym_asm] = ACTIONS(679), [anon_sym_PLUS] = ACTIONS(679), [anon_sym_QMARK] = ACTIONS(681), [anon_sym_LT] = ACTIONS(679), [anon_sym_GT] = ACTIONS(679), [anon_sym_else] = ACTIONS(679), [anon_sym_COLON_COLON] = ACTIONS(681), [anon_sym_STAR] = ACTIONS(679), [anon_sym_AMP] = ACTIONS(679), [anon_sym_DOT_DOT_DOT] = ACTIONS(681), [anon_sym_DOT_DOT] = ACTIONS(679), [anon_sym_DOT_DOT_EQ] = ACTIONS(681), [anon_sym_DASH] = ACTIONS(679), [anon_sym_AMP_AMP] = ACTIONS(681), [anon_sym_PIPE_PIPE] = ACTIONS(681), [anon_sym_PIPE] = ACTIONS(679), [anon_sym_CARET] = ACTIONS(679), [anon_sym_EQ_EQ] = ACTIONS(681), [anon_sym_BANG_EQ] = ACTIONS(681), [anon_sym_LT_EQ] = ACTIONS(681), [anon_sym_GT_EQ] = ACTIONS(681), [anon_sym_LT_LT] = ACTIONS(679), [anon_sym_GT_GT] = ACTIONS(679), [anon_sym_SLASH] = ACTIONS(679), [anon_sym_PERCENT] = ACTIONS(679), [anon_sym_PLUS_EQ] = ACTIONS(681), [anon_sym_DASH_EQ] = ACTIONS(681), [anon_sym_STAR_EQ] = ACTIONS(681), [anon_sym_SLASH_EQ] = ACTIONS(681), [anon_sym_PERCENT_EQ] = ACTIONS(681), [anon_sym_AMP_EQ] = ACTIONS(681), [anon_sym_PIPE_EQ] = ACTIONS(681), [anon_sym_CARET_EQ] = ACTIONS(681), [anon_sym_LT_LT_EQ] = ACTIONS(681), [anon_sym_GT_GT_EQ] = ACTIONS(681), [anon_sym_yield] = ACTIONS(679), [anon_sym_EQ_GT] = ACTIONS(681), [anon_sym_move] = ACTIONS(679), [anon_sym_DOT] = ACTIONS(679), [sym_integer_literal] = ACTIONS(681), [aux_sym_string_literal_token1] = ACTIONS(681), [sym_char_literal] = ACTIONS(681), [anon_sym_true] = ACTIONS(679), [anon_sym_false] = ACTIONS(679), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(679), [sym_metavariable] = ACTIONS(681), [sym_raw_string_literal] = ACTIONS(681), [sym_float_literal] = ACTIONS(681), [sym_block_comment] = ACTIONS(3), }, [179] = { [sym_primitive_type] = STATE(1325), [sym_attribute_item] = STATE(193), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1586), [sym_variadic_parameter] = STATE(1586), [sym_parameter] = STATE(1586), [sym__type] = STATE(1506), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_COMMA] = ACTIONS(697), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_RPAREN] = ACTIONS(703), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(709), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [180] = { [sym_primitive_type] = STATE(1325), [sym_attribute_item] = STATE(192), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1766), [sym_variadic_parameter] = STATE(1766), [sym_parameter] = STATE(1766), [sym__type] = STATE(1557), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_COMMA] = ACTIONS(735), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_RPAREN] = ACTIONS(737), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(739), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [181] = { [sym_primitive_type] = STATE(1321), [sym_attribute_item] = STATE(193), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1586), [sym_variadic_parameter] = STATE(1586), [sym_parameter] = STATE(1586), [sym__type] = STATE(1506), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1441), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_COMMA] = ACTIONS(745), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_RPAREN] = ACTIONS(749), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(753), [anon_sym_AMP] = ACTIONS(755), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(757), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [182] = { [sym_primitive_type] = STATE(1321), [sym_attribute_item] = STATE(193), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1586), [sym_variadic_parameter] = STATE(1586), [sym_parameter] = STATE(1586), [sym__type] = STATE(1506), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1441), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_COMMA] = ACTIONS(761), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_RPAREN] = ACTIONS(763), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(753), [anon_sym_AMP] = ACTIONS(755), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(757), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [183] = { [sym_primitive_type] = STATE(1321), [sym_attribute_item] = STATE(193), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1586), [sym_variadic_parameter] = STATE(1586), [sym_parameter] = STATE(1586), [sym__type] = STATE(1506), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1441), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_COMMA] = ACTIONS(765), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_RPAREN] = ACTIONS(767), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(753), [anon_sym_AMP] = ACTIONS(755), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(757), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [184] = { [sym_primitive_type] = STATE(1325), [sym_attribute_item] = STATE(191), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1876), [sym_variadic_parameter] = STATE(1876), [sym_parameter] = STATE(1876), [sym__type] = STATE(1747), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_RPAREN] = ACTIONS(769), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(771), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [185] = { [sym_primitive_type] = STATE(1325), [sym_attribute_item] = STATE(191), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1876), [sym_variadic_parameter] = STATE(1876), [sym_parameter] = STATE(1876), [sym__type] = STATE(1747), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_RPAREN] = ACTIONS(773), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(771), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [186] = { [sym_primitive_type] = STATE(1325), [sym_attribute_item] = STATE(191), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1876), [sym_variadic_parameter] = STATE(1876), [sym_parameter] = STATE(1876), [sym__type] = STATE(1747), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_RPAREN] = ACTIONS(775), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(771), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [187] = { [sym_primitive_type] = STATE(1325), [sym_attribute_item] = STATE(191), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1876), [sym_variadic_parameter] = STATE(1876), [sym_parameter] = STATE(1876), [sym__type] = STATE(1747), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_RPAREN] = ACTIONS(777), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(771), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [188] = { [sym_primitive_type] = STATE(1325), [sym_attribute_item] = STATE(191), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1876), [sym_variadic_parameter] = STATE(1876), [sym_parameter] = STATE(1876), [sym__type] = STATE(1747), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_RPAREN] = ACTIONS(779), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(771), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [189] = { [sym_primitive_type] = STATE(1325), [sym_attribute_item] = STATE(191), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1876), [sym_variadic_parameter] = STATE(1876), [sym_parameter] = STATE(1876), [sym__type] = STATE(1747), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_RPAREN] = ACTIONS(781), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(771), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [190] = { [sym_primitive_type] = STATE(1325), [sym_attribute_item] = STATE(191), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1876), [sym_variadic_parameter] = STATE(1876), [sym_parameter] = STATE(1876), [sym__type] = STATE(1747), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_POUND] = ACTIONS(695), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(771), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [191] = { [sym_primitive_type] = STATE(1325), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1827), [sym_variadic_parameter] = STATE(1827), [sym_parameter] = STATE(1827), [sym__type] = STATE(1730), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(783), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [192] = { [sym_primitive_type] = STATE(1325), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1582), [sym_variadic_parameter] = STATE(1582), [sym_parameter] = STATE(1582), [sym__type] = STATE(1485), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(785), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [193] = { [sym_primitive_type] = STATE(1325), [sym_function_modifiers] = STATE(2059), [sym_self_parameter] = STATE(1635), [sym_variadic_parameter] = STATE(1635), [sym_parameter] = STATE(1635), [sym__type] = STATE(1487), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1862), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(787), [anon_sym_AMP] = ACTIONS(711), [anon_sym_ref] = ACTIONS(713), [anon_sym_DOT_DOT_DOT] = ACTIONS(715), [sym_mutable_specifier] = ACTIONS(717), [anon_sym_DOT_DOT] = ACTIONS(719), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(731), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [194] = { [sym_primitive_type] = STATE(1321), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1489), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1503), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_COMMA] = ACTIONS(789), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_RPAREN] = ACTIONS(791), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(795), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(803), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [195] = { [sym_primitive_type] = STATE(1313), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1776), [sym_bracketed_type] = STATE(2163), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1543), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1359), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1529), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(805), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_RBRACK] = ACTIONS(807), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(809), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_COMMA] = ACTIONS(811), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(813), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(815), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(817), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(819), [sym_metavariable] = ACTIONS(821), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [196] = { [sym_primitive_type] = STATE(1321), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1489), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1503), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_COMMA] = ACTIONS(789), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_RPAREN] = ACTIONS(823), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(795), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(803), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [197] = { [sym_primitive_type] = STATE(1321), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1489), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1503), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_COMMA] = ACTIONS(789), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_RPAREN] = ACTIONS(825), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(795), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(803), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [198] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1218), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(827), [anon_sym_u8] = ACTIONS(827), [anon_sym_i8] = ACTIONS(827), [anon_sym_u16] = ACTIONS(827), [anon_sym_i16] = ACTIONS(827), [anon_sym_u32] = ACTIONS(827), [anon_sym_i32] = ACTIONS(827), [anon_sym_u64] = ACTIONS(827), [anon_sym_i64] = ACTIONS(827), [anon_sym_u128] = ACTIONS(827), [anon_sym_i128] = ACTIONS(827), [anon_sym_u256] = ACTIONS(827), [anon_sym_i256] = ACTIONS(827), [anon_sym_b256] = ACTIONS(827), [anon_sym_isize] = ACTIONS(827), [anon_sym_usize] = ACTIONS(827), [anon_sym_f32] = ACTIONS(827), [anon_sym_f64] = ACTIONS(827), [anon_sym_bool] = ACTIONS(827), [anon_sym_char] = ACTIONS(827), [anon_sym_str] = ACTIONS(827), [anon_sym_LBRACK] = ACTIONS(829), [anon_sym_SQUOTE] = ACTIONS(827), [anon_sym_abi] = ACTIONS(827), [anon_sym_break] = ACTIONS(827), [anon_sym_const] = ACTIONS(827), [anon_sym_continue] = ACTIONS(827), [anon_sym_default] = ACTIONS(827), [anon_sym_for] = ACTIONS(827), [anon_sym_if] = ACTIONS(827), [anon_sym_match] = ACTIONS(827), [anon_sym_return] = ACTIONS(827), [anon_sym_storage] = ACTIONS(827), [anon_sym_while] = ACTIONS(827), [anon_sym_BANG] = ACTIONS(829), [anon_sym_LBRACE] = ACTIONS(829), [anon_sym_LPAREN] = ACTIONS(829), [anon_sym_asm] = ACTIONS(827), [anon_sym_DASH_GT] = ACTIONS(829), [anon_sym_LT] = ACTIONS(829), [anon_sym_COLON_COLON] = ACTIONS(829), [anon_sym_STAR] = ACTIONS(829), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(829), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(829), [anon_sym_DASH] = ACTIONS(827), [anon_sym_PIPE] = ACTIONS(829), [anon_sym_yield] = ACTIONS(827), [anon_sym_move] = ACTIONS(827), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(829), [aux_sym_string_literal_token1] = ACTIONS(829), [sym_char_literal] = ACTIONS(829), [anon_sym_true] = ACTIONS(827), [anon_sym_false] = ACTIONS(827), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(827), [sym_metavariable] = ACTIONS(829), [sym_raw_string_literal] = ACTIONS(829), [sym_float_literal] = ACTIONS(829), [sym_block_comment] = ACTIONS(3), }, [199] = { [sym_primitive_type] = STATE(1325), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1189), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1232), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(831), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(833), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [200] = { [sym_primitive_type] = STATE(1313), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1186), [sym_bracketed_type] = STATE(2163), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1543), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1359), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1235), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(805), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(809), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(813), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(815), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(817), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(835), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(819), [sym_metavariable] = ACTIONS(821), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [201] = { [sym_primitive_type] = STATE(1321), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1186), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1235), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(795), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(837), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(803), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [202] = { [sym_primitive_type] = STATE(1325), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1186), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1235), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(831), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(839), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(841), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [203] = { [sym_primitive_type] = STATE(1321), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1189), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1232), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(795), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(843), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [204] = { [sym_primitive_type] = STATE(1325), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1189), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1232), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(831), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(841), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [205] = { [sym_primitive_type] = STATE(1321), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1189), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1232), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(795), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(803), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [206] = { [sym_primitive_type] = STATE(1325), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1186), [sym_bracketed_type] = STATE(2160), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1511), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1418), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1235), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(683), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(693), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(701), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(705), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(831), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(845), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(847), [sym_metavariable] = ACTIONS(733), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [207] = { [sym_primitive_type] = STATE(1321), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1186), [sym_bracketed_type] = STATE(2164), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1549), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1324), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1235), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(741), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(743), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(747), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(751), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(795), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(849), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(851), [sym_metavariable] = ACTIONS(759), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [208] = { [sym_primitive_type] = STATE(1313), [sym_function_modifiers] = STATE(2059), [sym__type] = STATE(1189), [sym_bracketed_type] = STATE(2163), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1543), [sym_bounded_type] = STATE(1179), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(1359), [sym_scoped_type_identifier] = STATE(1276), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1232), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(805), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(689), [anon_sym_const] = ACTIONS(691), [anon_sym_default] = ACTIONS(809), [anon_sym_fn] = ACTIONS(353), [anon_sym_impl] = ACTIONS(355), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LPAREN] = ACTIONS(813), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(815), [anon_sym_STAR] = ACTIONS(707), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(817), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(819), [sym_metavariable] = ACTIONS(821), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [209] = { [sym_else_clause] = STATE(220), [sym_identifier] = ACTIONS(421), [anon_sym_u8] = ACTIONS(421), [anon_sym_i8] = ACTIONS(421), [anon_sym_u16] = ACTIONS(421), [anon_sym_i16] = ACTIONS(421), [anon_sym_u32] = ACTIONS(421), [anon_sym_i32] = ACTIONS(421), [anon_sym_u64] = ACTIONS(421), [anon_sym_i64] = ACTIONS(421), [anon_sym_u128] = ACTIONS(421), [anon_sym_i128] = ACTIONS(421), [anon_sym_u256] = ACTIONS(421), [anon_sym_i256] = ACTIONS(421), [anon_sym_b256] = ACTIONS(421), [anon_sym_isize] = ACTIONS(421), [anon_sym_usize] = ACTIONS(421), [anon_sym_f32] = ACTIONS(421), [anon_sym_f64] = ACTIONS(421), [anon_sym_bool] = ACTIONS(421), [anon_sym_char] = ACTIONS(421), [anon_sym_str] = ACTIONS(421), [anon_sym_LBRACK] = ACTIONS(419), [anon_sym_as] = ACTIONS(421), [anon_sym_const] = ACTIONS(421), [anon_sym_default] = ACTIONS(421), [anon_sym_POUND] = ACTIONS(419), [anon_sym_COMMA] = ACTIONS(419), [anon_sym_EQ] = ACTIONS(421), [anon_sym_RBRACE] = ACTIONS(419), [anon_sym_LPAREN] = ACTIONS(419), [anon_sym_PLUS] = ACTIONS(421), [anon_sym_QMARK] = ACTIONS(419), [anon_sym_LT] = ACTIONS(421), [anon_sym_GT] = ACTIONS(421), [anon_sym_else] = ACTIONS(853), [anon_sym_COLON_COLON] = ACTIONS(419), [anon_sym_STAR] = ACTIONS(421), [anon_sym__] = ACTIONS(421), [anon_sym_AMP] = ACTIONS(421), [anon_sym_ref] = ACTIONS(421), [anon_sym_DOT_DOT_DOT] = ACTIONS(419), [sym_mutable_specifier] = ACTIONS(421), [anon_sym_DOT_DOT] = ACTIONS(421), [anon_sym_DOT_DOT_EQ] = ACTIONS(419), [anon_sym_DASH] = ACTIONS(421), [anon_sym_AMP_AMP] = ACTIONS(419), [anon_sym_PIPE_PIPE] = ACTIONS(419), [anon_sym_PIPE] = ACTIONS(421), [anon_sym_CARET] = ACTIONS(421), [anon_sym_EQ_EQ] = ACTIONS(419), [anon_sym_BANG_EQ] = ACTIONS(419), [anon_sym_LT_EQ] = ACTIONS(419), [anon_sym_GT_EQ] = ACTIONS(419), [anon_sym_LT_LT] = ACTIONS(421), [anon_sym_GT_GT] = ACTIONS(421), [anon_sym_SLASH] = ACTIONS(421), [anon_sym_PERCENT] = ACTIONS(421), [anon_sym_PLUS_EQ] = ACTIONS(419), [anon_sym_DASH_EQ] = ACTIONS(419), [anon_sym_STAR_EQ] = ACTIONS(419), [anon_sym_SLASH_EQ] = ACTIONS(419), [anon_sym_PERCENT_EQ] = ACTIONS(419), [anon_sym_AMP_EQ] = ACTIONS(419), [anon_sym_PIPE_EQ] = ACTIONS(419), [anon_sym_CARET_EQ] = ACTIONS(419), [anon_sym_LT_LT_EQ] = ACTIONS(419), [anon_sym_GT_GT_EQ] = ACTIONS(419), [anon_sym_DOT] = ACTIONS(421), [anon_sym_deref] = ACTIONS(421), [sym_integer_literal] = ACTIONS(419), [aux_sym_string_literal_token1] = ACTIONS(419), [sym_char_literal] = ACTIONS(419), [anon_sym_true] = ACTIONS(421), [anon_sym_false] = ACTIONS(421), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(421), [sym_metavariable] = ACTIONS(419), [sym_raw_string_literal] = ACTIONS(419), [sym_float_literal] = ACTIONS(419), [sym_block_comment] = ACTIONS(3), }, [210] = { [sym_identifier] = ACTIONS(437), [anon_sym_u8] = ACTIONS(437), [anon_sym_i8] = ACTIONS(437), [anon_sym_u16] = ACTIONS(437), [anon_sym_i16] = ACTIONS(437), [anon_sym_u32] = ACTIONS(437), [anon_sym_i32] = ACTIONS(437), [anon_sym_u64] = ACTIONS(437), [anon_sym_i64] = ACTIONS(437), [anon_sym_u128] = ACTIONS(437), [anon_sym_i128] = ACTIONS(437), [anon_sym_u256] = ACTIONS(437), [anon_sym_i256] = ACTIONS(437), [anon_sym_b256] = ACTIONS(437), [anon_sym_isize] = ACTIONS(437), [anon_sym_usize] = ACTIONS(437), [anon_sym_f32] = ACTIONS(437), [anon_sym_f64] = ACTIONS(437), [anon_sym_bool] = ACTIONS(437), [anon_sym_char] = ACTIONS(437), [anon_sym_str] = ACTIONS(437), [anon_sym_LBRACK] = ACTIONS(435), [anon_sym_as] = ACTIONS(437), [anon_sym_const] = ACTIONS(437), [anon_sym_default] = ACTIONS(437), [anon_sym_POUND] = ACTIONS(435), [anon_sym_COMMA] = ACTIONS(435), [anon_sym_EQ] = ACTIONS(437), [anon_sym_RBRACE] = ACTIONS(435), [anon_sym_LPAREN] = ACTIONS(435), [anon_sym_PLUS] = ACTIONS(437), [anon_sym_QMARK] = ACTIONS(435), [anon_sym_LT] = ACTIONS(437), [anon_sym_GT] = ACTIONS(437), [anon_sym_else] = ACTIONS(437), [anon_sym_COLON_COLON] = ACTIONS(435), [anon_sym_STAR] = ACTIONS(437), [anon_sym__] = ACTIONS(437), [anon_sym_AMP] = ACTIONS(437), [anon_sym_ref] = ACTIONS(437), [anon_sym_DOT_DOT_DOT] = ACTIONS(435), [sym_mutable_specifier] = ACTIONS(437), [anon_sym_DOT_DOT] = ACTIONS(437), [anon_sym_DOT_DOT_EQ] = ACTIONS(435), [anon_sym_DASH] = ACTIONS(437), [anon_sym_AMP_AMP] = ACTIONS(435), [anon_sym_PIPE_PIPE] = ACTIONS(435), [anon_sym_PIPE] = ACTIONS(437), [anon_sym_CARET] = ACTIONS(437), [anon_sym_EQ_EQ] = ACTIONS(435), [anon_sym_BANG_EQ] = ACTIONS(435), [anon_sym_LT_EQ] = ACTIONS(435), [anon_sym_GT_EQ] = ACTIONS(435), [anon_sym_LT_LT] = ACTIONS(437), [anon_sym_GT_GT] = ACTIONS(437), [anon_sym_SLASH] = ACTIONS(437), [anon_sym_PERCENT] = ACTIONS(437), [anon_sym_PLUS_EQ] = ACTIONS(435), [anon_sym_DASH_EQ] = ACTIONS(435), [anon_sym_STAR_EQ] = ACTIONS(435), [anon_sym_SLASH_EQ] = ACTIONS(435), [anon_sym_PERCENT_EQ] = ACTIONS(435), [anon_sym_AMP_EQ] = ACTIONS(435), [anon_sym_PIPE_EQ] = ACTIONS(435), [anon_sym_CARET_EQ] = ACTIONS(435), [anon_sym_LT_LT_EQ] = ACTIONS(435), [anon_sym_GT_GT_EQ] = ACTIONS(435), [anon_sym_DOT] = ACTIONS(437), [anon_sym_deref] = ACTIONS(437), [sym_integer_literal] = ACTIONS(435), [aux_sym_string_literal_token1] = ACTIONS(435), [sym_char_literal] = ACTIONS(435), [anon_sym_true] = ACTIONS(437), [anon_sym_false] = ACTIONS(437), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(437), [sym_metavariable] = ACTIONS(435), [sym_raw_string_literal] = ACTIONS(435), [sym_float_literal] = ACTIONS(435), [sym_block_comment] = ACTIONS(3), }, [211] = { [sym_identifier] = ACTIONS(429), [anon_sym_u8] = ACTIONS(429), [anon_sym_i8] = ACTIONS(429), [anon_sym_u16] = ACTIONS(429), [anon_sym_i16] = ACTIONS(429), [anon_sym_u32] = ACTIONS(429), [anon_sym_i32] = ACTIONS(429), [anon_sym_u64] = ACTIONS(429), [anon_sym_i64] = ACTIONS(429), [anon_sym_u128] = ACTIONS(429), [anon_sym_i128] = ACTIONS(429), [anon_sym_u256] = ACTIONS(429), [anon_sym_i256] = ACTIONS(429), [anon_sym_b256] = ACTIONS(429), [anon_sym_isize] = ACTIONS(429), [anon_sym_usize] = ACTIONS(429), [anon_sym_f32] = ACTIONS(429), [anon_sym_f64] = ACTIONS(429), [anon_sym_bool] = ACTIONS(429), [anon_sym_char] = ACTIONS(429), [anon_sym_str] = ACTIONS(429), [anon_sym_LBRACK] = ACTIONS(427), [anon_sym_as] = ACTIONS(429), [anon_sym_const] = ACTIONS(429), [anon_sym_default] = ACTIONS(429), [anon_sym_POUND] = ACTIONS(427), [anon_sym_COMMA] = ACTIONS(427), [anon_sym_EQ] = ACTIONS(429), [anon_sym_RBRACE] = ACTIONS(427), [anon_sym_LPAREN] = ACTIONS(427), [anon_sym_PLUS] = ACTIONS(429), [anon_sym_QMARK] = ACTIONS(427), [anon_sym_LT] = ACTIONS(429), [anon_sym_GT] = ACTIONS(429), [anon_sym_else] = ACTIONS(429), [anon_sym_COLON_COLON] = ACTIONS(427), [anon_sym_STAR] = ACTIONS(429), [anon_sym__] = ACTIONS(429), [anon_sym_AMP] = ACTIONS(429), [anon_sym_ref] = ACTIONS(429), [anon_sym_DOT_DOT_DOT] = ACTIONS(427), [sym_mutable_specifier] = ACTIONS(429), [anon_sym_DOT_DOT] = ACTIONS(429), [anon_sym_DOT_DOT_EQ] = ACTIONS(427), [anon_sym_DASH] = ACTIONS(429), [anon_sym_AMP_AMP] = ACTIONS(427), [anon_sym_PIPE_PIPE] = ACTIONS(427), [anon_sym_PIPE] = ACTIONS(429), [anon_sym_CARET] = ACTIONS(429), [anon_sym_EQ_EQ] = ACTIONS(427), [anon_sym_BANG_EQ] = ACTIONS(427), [anon_sym_LT_EQ] = ACTIONS(427), [anon_sym_GT_EQ] = ACTIONS(427), [anon_sym_LT_LT] = ACTIONS(429), [anon_sym_GT_GT] = ACTIONS(429), [anon_sym_SLASH] = ACTIONS(429), [anon_sym_PERCENT] = ACTIONS(429), [anon_sym_PLUS_EQ] = ACTIONS(427), [anon_sym_DASH_EQ] = ACTIONS(427), [anon_sym_STAR_EQ] = ACTIONS(427), [anon_sym_SLASH_EQ] = ACTIONS(427), [anon_sym_PERCENT_EQ] = ACTIONS(427), [anon_sym_AMP_EQ] = ACTIONS(427), [anon_sym_PIPE_EQ] = ACTIONS(427), [anon_sym_CARET_EQ] = ACTIONS(427), [anon_sym_LT_LT_EQ] = ACTIONS(427), [anon_sym_GT_GT_EQ] = ACTIONS(427), [anon_sym_DOT] = ACTIONS(429), [anon_sym_deref] = ACTIONS(429), [sym_integer_literal] = ACTIONS(427), [aux_sym_string_literal_token1] = ACTIONS(427), [sym_char_literal] = ACTIONS(427), [anon_sym_true] = ACTIONS(429), [anon_sym_false] = ACTIONS(429), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(429), [sym_metavariable] = ACTIONS(427), [sym_raw_string_literal] = ACTIONS(427), [sym_float_literal] = ACTIONS(427), [sym_block_comment] = ACTIONS(3), }, [212] = { [sym_identifier] = ACTIONS(445), [anon_sym_u8] = ACTIONS(445), [anon_sym_i8] = ACTIONS(445), [anon_sym_u16] = ACTIONS(445), [anon_sym_i16] = ACTIONS(445), [anon_sym_u32] = ACTIONS(445), [anon_sym_i32] = ACTIONS(445), [anon_sym_u64] = ACTIONS(445), [anon_sym_i64] = ACTIONS(445), [anon_sym_u128] = ACTIONS(445), [anon_sym_i128] = ACTIONS(445), [anon_sym_u256] = ACTIONS(445), [anon_sym_i256] = ACTIONS(445), [anon_sym_b256] = ACTIONS(445), [anon_sym_isize] = ACTIONS(445), [anon_sym_usize] = ACTIONS(445), [anon_sym_f32] = ACTIONS(445), [anon_sym_f64] = ACTIONS(445), [anon_sym_bool] = ACTIONS(445), [anon_sym_char] = ACTIONS(445), [anon_sym_str] = ACTIONS(445), [anon_sym_LBRACK] = ACTIONS(443), [anon_sym_as] = ACTIONS(445), [anon_sym_const] = ACTIONS(445), [anon_sym_default] = ACTIONS(445), [anon_sym_POUND] = ACTIONS(443), [anon_sym_COMMA] = ACTIONS(443), [anon_sym_EQ] = ACTIONS(445), [anon_sym_RBRACE] = ACTIONS(443), [anon_sym_LPAREN] = ACTIONS(443), [anon_sym_PLUS] = ACTIONS(445), [anon_sym_QMARK] = ACTIONS(443), [anon_sym_LT] = ACTIONS(445), [anon_sym_GT] = ACTIONS(445), [anon_sym_else] = ACTIONS(445), [anon_sym_COLON_COLON] = ACTIONS(443), [anon_sym_STAR] = ACTIONS(445), [anon_sym__] = ACTIONS(445), [anon_sym_AMP] = ACTIONS(445), [anon_sym_ref] = ACTIONS(445), [anon_sym_DOT_DOT_DOT] = ACTIONS(443), [sym_mutable_specifier] = ACTIONS(445), [anon_sym_DOT_DOT] = ACTIONS(445), [anon_sym_DOT_DOT_EQ] = ACTIONS(443), [anon_sym_DASH] = ACTIONS(445), [anon_sym_AMP_AMP] = ACTIONS(443), [anon_sym_PIPE_PIPE] = ACTIONS(443), [anon_sym_PIPE] = ACTIONS(445), [anon_sym_CARET] = ACTIONS(445), [anon_sym_EQ_EQ] = ACTIONS(443), [anon_sym_BANG_EQ] = ACTIONS(443), [anon_sym_LT_EQ] = ACTIONS(443), [anon_sym_GT_EQ] = ACTIONS(443), [anon_sym_LT_LT] = ACTIONS(445), [anon_sym_GT_GT] = ACTIONS(445), [anon_sym_SLASH] = ACTIONS(445), [anon_sym_PERCENT] = ACTIONS(445), [anon_sym_PLUS_EQ] = ACTIONS(443), [anon_sym_DASH_EQ] = ACTIONS(443), [anon_sym_STAR_EQ] = ACTIONS(443), [anon_sym_SLASH_EQ] = ACTIONS(443), [anon_sym_PERCENT_EQ] = ACTIONS(443), [anon_sym_AMP_EQ] = ACTIONS(443), [anon_sym_PIPE_EQ] = ACTIONS(443), [anon_sym_CARET_EQ] = ACTIONS(443), [anon_sym_LT_LT_EQ] = ACTIONS(443), [anon_sym_GT_GT_EQ] = ACTIONS(443), [anon_sym_DOT] = ACTIONS(445), [anon_sym_deref] = ACTIONS(445), [sym_integer_literal] = ACTIONS(443), [aux_sym_string_literal_token1] = ACTIONS(443), [sym_char_literal] = ACTIONS(443), [anon_sym_true] = ACTIONS(445), [anon_sym_false] = ACTIONS(445), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(445), [sym_metavariable] = ACTIONS(443), [sym_raw_string_literal] = ACTIONS(443), [sym_float_literal] = ACTIONS(443), [sym_block_comment] = ACTIONS(3), }, [213] = { [sym_identifier] = ACTIONS(463), [anon_sym_u8] = ACTIONS(463), [anon_sym_i8] = ACTIONS(463), [anon_sym_u16] = ACTIONS(463), [anon_sym_i16] = ACTIONS(463), [anon_sym_u32] = ACTIONS(463), [anon_sym_i32] = ACTIONS(463), [anon_sym_u64] = ACTIONS(463), [anon_sym_i64] = ACTIONS(463), [anon_sym_u128] = ACTIONS(463), [anon_sym_i128] = ACTIONS(463), [anon_sym_u256] = ACTIONS(463), [anon_sym_i256] = ACTIONS(463), [anon_sym_b256] = ACTIONS(463), [anon_sym_isize] = ACTIONS(463), [anon_sym_usize] = ACTIONS(463), [anon_sym_f32] = ACTIONS(463), [anon_sym_f64] = ACTIONS(463), [anon_sym_bool] = ACTIONS(463), [anon_sym_char] = ACTIONS(463), [anon_sym_str] = ACTIONS(463), [anon_sym_LBRACK] = ACTIONS(461), [anon_sym_as] = ACTIONS(463), [anon_sym_const] = ACTIONS(463), [anon_sym_default] = ACTIONS(463), [anon_sym_POUND] = ACTIONS(461), [anon_sym_COMMA] = ACTIONS(461), [anon_sym_EQ] = ACTIONS(463), [anon_sym_RBRACE] = ACTIONS(461), [anon_sym_LPAREN] = ACTIONS(461), [anon_sym_PLUS] = ACTIONS(463), [anon_sym_QMARK] = ACTIONS(461), [anon_sym_LT] = ACTIONS(463), [anon_sym_GT] = ACTIONS(463), [anon_sym_COLON_COLON] = ACTIONS(461), [anon_sym_STAR] = ACTIONS(463), [anon_sym__] = ACTIONS(463), [anon_sym_AMP] = ACTIONS(463), [anon_sym_ref] = ACTIONS(463), [anon_sym_DOT_DOT_DOT] = ACTIONS(461), [sym_mutable_specifier] = ACTIONS(463), [anon_sym_DOT_DOT] = ACTIONS(463), [anon_sym_DOT_DOT_EQ] = ACTIONS(461), [anon_sym_DASH] = ACTIONS(463), [anon_sym_AMP_AMP] = ACTIONS(461), [anon_sym_PIPE_PIPE] = ACTIONS(461), [anon_sym_PIPE] = ACTIONS(463), [anon_sym_CARET] = ACTIONS(463), [anon_sym_EQ_EQ] = ACTIONS(461), [anon_sym_BANG_EQ] = ACTIONS(461), [anon_sym_LT_EQ] = ACTIONS(461), [anon_sym_GT_EQ] = ACTIONS(461), [anon_sym_LT_LT] = ACTIONS(463), [anon_sym_GT_GT] = ACTIONS(463), [anon_sym_SLASH] = ACTIONS(463), [anon_sym_PERCENT] = ACTIONS(463), [anon_sym_PLUS_EQ] = ACTIONS(461), [anon_sym_DASH_EQ] = ACTIONS(461), [anon_sym_STAR_EQ] = ACTIONS(461), [anon_sym_SLASH_EQ] = ACTIONS(461), [anon_sym_PERCENT_EQ] = ACTIONS(461), [anon_sym_AMP_EQ] = ACTIONS(461), [anon_sym_PIPE_EQ] = ACTIONS(461), [anon_sym_CARET_EQ] = ACTIONS(461), [anon_sym_LT_LT_EQ] = ACTIONS(461), [anon_sym_GT_GT_EQ] = ACTIONS(461), [anon_sym_DOT] = ACTIONS(463), [anon_sym_deref] = ACTIONS(463), [sym_integer_literal] = ACTIONS(461), [aux_sym_string_literal_token1] = ACTIONS(461), [sym_char_literal] = ACTIONS(461), [anon_sym_true] = ACTIONS(463), [anon_sym_false] = ACTIONS(463), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(463), [sym_metavariable] = ACTIONS(461), [sym_raw_string_literal] = ACTIONS(461), [sym_float_literal] = ACTIONS(461), [sym_block_comment] = ACTIONS(3), }, [214] = { [sym_identifier] = ACTIONS(523), [anon_sym_u8] = ACTIONS(523), [anon_sym_i8] = ACTIONS(523), [anon_sym_u16] = ACTIONS(523), [anon_sym_i16] = ACTIONS(523), [anon_sym_u32] = ACTIONS(523), [anon_sym_i32] = ACTIONS(523), [anon_sym_u64] = ACTIONS(523), [anon_sym_i64] = ACTIONS(523), [anon_sym_u128] = ACTIONS(523), [anon_sym_i128] = ACTIONS(523), [anon_sym_u256] = ACTIONS(523), [anon_sym_i256] = ACTIONS(523), [anon_sym_b256] = ACTIONS(523), [anon_sym_isize] = ACTIONS(523), [anon_sym_usize] = ACTIONS(523), [anon_sym_f32] = ACTIONS(523), [anon_sym_f64] = ACTIONS(523), [anon_sym_bool] = ACTIONS(523), [anon_sym_char] = ACTIONS(523), [anon_sym_str] = ACTIONS(523), [anon_sym_LBRACK] = ACTIONS(521), [anon_sym_as] = ACTIONS(523), [anon_sym_const] = ACTIONS(523), [anon_sym_default] = ACTIONS(523), [anon_sym_POUND] = ACTIONS(521), [anon_sym_COMMA] = ACTIONS(521), [anon_sym_EQ] = ACTIONS(523), [anon_sym_RBRACE] = ACTIONS(521), [anon_sym_LPAREN] = ACTIONS(521), [anon_sym_PLUS] = ACTIONS(523), [anon_sym_QMARK] = ACTIONS(521), [anon_sym_LT] = ACTIONS(523), [anon_sym_GT] = ACTIONS(523), [anon_sym_COLON_COLON] = ACTIONS(521), [anon_sym_STAR] = ACTIONS(523), [anon_sym__] = ACTIONS(523), [anon_sym_AMP] = ACTIONS(523), [anon_sym_ref] = ACTIONS(523), [anon_sym_DOT_DOT_DOT] = ACTIONS(521), [sym_mutable_specifier] = ACTIONS(523), [anon_sym_DOT_DOT] = ACTIONS(523), [anon_sym_DOT_DOT_EQ] = ACTIONS(521), [anon_sym_DASH] = ACTIONS(523), [anon_sym_AMP_AMP] = ACTIONS(521), [anon_sym_PIPE_PIPE] = ACTIONS(521), [anon_sym_PIPE] = ACTIONS(523), [anon_sym_CARET] = ACTIONS(523), [anon_sym_EQ_EQ] = ACTIONS(521), [anon_sym_BANG_EQ] = ACTIONS(521), [anon_sym_LT_EQ] = ACTIONS(521), [anon_sym_GT_EQ] = ACTIONS(521), [anon_sym_LT_LT] = ACTIONS(523), [anon_sym_GT_GT] = ACTIONS(523), [anon_sym_SLASH] = ACTIONS(523), [anon_sym_PERCENT] = ACTIONS(523), [anon_sym_PLUS_EQ] = ACTIONS(521), [anon_sym_DASH_EQ] = ACTIONS(521), [anon_sym_STAR_EQ] = ACTIONS(521), [anon_sym_SLASH_EQ] = ACTIONS(521), [anon_sym_PERCENT_EQ] = ACTIONS(521), [anon_sym_AMP_EQ] = ACTIONS(521), [anon_sym_PIPE_EQ] = ACTIONS(521), [anon_sym_CARET_EQ] = ACTIONS(521), [anon_sym_LT_LT_EQ] = ACTIONS(521), [anon_sym_GT_GT_EQ] = ACTIONS(521), [anon_sym_DOT] = ACTIONS(523), [anon_sym_deref] = ACTIONS(523), [sym_integer_literal] = ACTIONS(521), [aux_sym_string_literal_token1] = ACTIONS(521), [sym_char_literal] = ACTIONS(521), [anon_sym_true] = ACTIONS(523), [anon_sym_false] = ACTIONS(523), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(523), [sym_metavariable] = ACTIONS(521), [sym_raw_string_literal] = ACTIONS(521), [sym_float_literal] = ACTIONS(521), [sym_block_comment] = ACTIONS(3), }, [215] = { [sym_identifier] = ACTIONS(855), [anon_sym_u8] = ACTIONS(855), [anon_sym_i8] = ACTIONS(855), [anon_sym_u16] = ACTIONS(855), [anon_sym_i16] = ACTIONS(855), [anon_sym_u32] = ACTIONS(855), [anon_sym_i32] = ACTIONS(855), [anon_sym_u64] = ACTIONS(855), [anon_sym_i64] = ACTIONS(855), [anon_sym_u128] = ACTIONS(855), [anon_sym_i128] = ACTIONS(855), [anon_sym_u256] = ACTIONS(855), [anon_sym_i256] = ACTIONS(855), [anon_sym_b256] = ACTIONS(855), [anon_sym_isize] = ACTIONS(855), [anon_sym_usize] = ACTIONS(855), [anon_sym_f32] = ACTIONS(855), [anon_sym_f64] = ACTIONS(855), [anon_sym_bool] = ACTIONS(855), [anon_sym_char] = ACTIONS(855), [anon_sym_str] = ACTIONS(855), [anon_sym_LBRACK] = ACTIONS(857), [anon_sym_as] = ACTIONS(513), [anon_sym_const] = ACTIONS(855), [anon_sym_default] = ACTIONS(855), [anon_sym_POUND] = ACTIONS(857), [anon_sym_COMMA] = ACTIONS(515), [anon_sym_EQ] = ACTIONS(513), [anon_sym_RBRACE] = ACTIONS(515), [anon_sym_LPAREN] = ACTIONS(857), [anon_sym_PLUS] = ACTIONS(513), [anon_sym_QMARK] = ACTIONS(515), [anon_sym_LT] = ACTIONS(855), [anon_sym_GT] = ACTIONS(513), [anon_sym_COLON_COLON] = ACTIONS(857), [anon_sym_STAR] = ACTIONS(513), [anon_sym__] = ACTIONS(855), [anon_sym_AMP] = ACTIONS(855), [anon_sym_ref] = ACTIONS(855), [anon_sym_DOT_DOT_DOT] = ACTIONS(515), [sym_mutable_specifier] = ACTIONS(855), [anon_sym_DOT_DOT] = ACTIONS(855), [anon_sym_DOT_DOT_EQ] = ACTIONS(515), [anon_sym_DASH] = ACTIONS(855), [anon_sym_AMP_AMP] = ACTIONS(515), [anon_sym_PIPE_PIPE] = ACTIONS(515), [anon_sym_PIPE] = ACTIONS(513), [anon_sym_CARET] = ACTIONS(513), [anon_sym_EQ_EQ] = ACTIONS(515), [anon_sym_BANG_EQ] = ACTIONS(515), [anon_sym_LT_EQ] = ACTIONS(515), [anon_sym_GT_EQ] = ACTIONS(515), [anon_sym_LT_LT] = ACTIONS(513), [anon_sym_GT_GT] = ACTIONS(513), [anon_sym_SLASH] = ACTIONS(513), [anon_sym_PERCENT] = ACTIONS(513), [anon_sym_PLUS_EQ] = ACTIONS(515), [anon_sym_DASH_EQ] = ACTIONS(515), [anon_sym_STAR_EQ] = ACTIONS(515), [anon_sym_SLASH_EQ] = ACTIONS(515), [anon_sym_PERCENT_EQ] = ACTIONS(515), [anon_sym_AMP_EQ] = ACTIONS(515), [anon_sym_PIPE_EQ] = ACTIONS(515), [anon_sym_CARET_EQ] = ACTIONS(515), [anon_sym_LT_LT_EQ] = ACTIONS(515), [anon_sym_GT_GT_EQ] = ACTIONS(515), [anon_sym_DOT] = ACTIONS(513), [anon_sym_deref] = ACTIONS(855), [sym_integer_literal] = ACTIONS(857), [aux_sym_string_literal_token1] = ACTIONS(857), [sym_char_literal] = ACTIONS(857), [anon_sym_true] = ACTIONS(855), [anon_sym_false] = ACTIONS(855), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(855), [sym_metavariable] = ACTIONS(857), [sym_raw_string_literal] = ACTIONS(857), [sym_float_literal] = ACTIONS(857), [sym_block_comment] = ACTIONS(3), }, [216] = { [sym_identifier] = ACTIONS(469), [anon_sym_u8] = ACTIONS(469), [anon_sym_i8] = ACTIONS(469), [anon_sym_u16] = ACTIONS(469), [anon_sym_i16] = ACTIONS(469), [anon_sym_u32] = ACTIONS(469), [anon_sym_i32] = ACTIONS(469), [anon_sym_u64] = ACTIONS(469), [anon_sym_i64] = ACTIONS(469), [anon_sym_u128] = ACTIONS(469), [anon_sym_i128] = ACTIONS(469), [anon_sym_u256] = ACTIONS(469), [anon_sym_i256] = ACTIONS(469), [anon_sym_b256] = ACTIONS(469), [anon_sym_isize] = ACTIONS(469), [anon_sym_usize] = ACTIONS(469), [anon_sym_f32] = ACTIONS(469), [anon_sym_f64] = ACTIONS(469), [anon_sym_bool] = ACTIONS(469), [anon_sym_char] = ACTIONS(469), [anon_sym_str] = ACTIONS(469), [anon_sym_LBRACK] = ACTIONS(467), [anon_sym_as] = ACTIONS(469), [anon_sym_const] = ACTIONS(469), [anon_sym_default] = ACTIONS(469), [anon_sym_POUND] = ACTIONS(467), [anon_sym_COMMA] = ACTIONS(467), [anon_sym_EQ] = ACTIONS(469), [anon_sym_RBRACE] = ACTIONS(467), [anon_sym_LPAREN] = ACTIONS(467), [anon_sym_PLUS] = ACTIONS(469), [anon_sym_QMARK] = ACTIONS(467), [anon_sym_LT] = ACTIONS(469), [anon_sym_GT] = ACTIONS(469), [anon_sym_COLON_COLON] = ACTIONS(467), [anon_sym_STAR] = ACTIONS(469), [anon_sym__] = ACTIONS(469), [anon_sym_AMP] = ACTIONS(469), [anon_sym_ref] = ACTIONS(469), [anon_sym_DOT_DOT_DOT] = ACTIONS(467), [sym_mutable_specifier] = ACTIONS(469), [anon_sym_DOT_DOT] = ACTIONS(469), [anon_sym_DOT_DOT_EQ] = ACTIONS(467), [anon_sym_DASH] = ACTIONS(469), [anon_sym_AMP_AMP] = ACTIONS(467), [anon_sym_PIPE_PIPE] = ACTIONS(467), [anon_sym_PIPE] = ACTIONS(469), [anon_sym_CARET] = ACTIONS(469), [anon_sym_EQ_EQ] = ACTIONS(467), [anon_sym_BANG_EQ] = ACTIONS(467), [anon_sym_LT_EQ] = ACTIONS(467), [anon_sym_GT_EQ] = ACTIONS(467), [anon_sym_LT_LT] = ACTIONS(469), [anon_sym_GT_GT] = ACTIONS(469), [anon_sym_SLASH] = ACTIONS(469), [anon_sym_PERCENT] = ACTIONS(469), [anon_sym_PLUS_EQ] = ACTIONS(467), [anon_sym_DASH_EQ] = ACTIONS(467), [anon_sym_STAR_EQ] = ACTIONS(467), [anon_sym_SLASH_EQ] = ACTIONS(467), [anon_sym_PERCENT_EQ] = ACTIONS(467), [anon_sym_AMP_EQ] = ACTIONS(467), [anon_sym_PIPE_EQ] = ACTIONS(467), [anon_sym_CARET_EQ] = ACTIONS(467), [anon_sym_LT_LT_EQ] = ACTIONS(467), [anon_sym_GT_GT_EQ] = ACTIONS(467), [anon_sym_DOT] = ACTIONS(469), [anon_sym_deref] = ACTIONS(469), [sym_integer_literal] = ACTIONS(467), [aux_sym_string_literal_token1] = ACTIONS(467), [sym_char_literal] = ACTIONS(467), [anon_sym_true] = ACTIONS(469), [anon_sym_false] = ACTIONS(469), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(469), [sym_metavariable] = ACTIONS(467), [sym_raw_string_literal] = ACTIONS(467), [sym_float_literal] = ACTIONS(467), [sym_block_comment] = ACTIONS(3), }, [217] = { [sym_identifier] = ACTIONS(859), [anon_sym_u8] = ACTIONS(859), [anon_sym_i8] = ACTIONS(859), [anon_sym_u16] = ACTIONS(859), [anon_sym_i16] = ACTIONS(859), [anon_sym_u32] = ACTIONS(859), [anon_sym_i32] = ACTIONS(859), [anon_sym_u64] = ACTIONS(859), [anon_sym_i64] = ACTIONS(859), [anon_sym_u128] = ACTIONS(859), [anon_sym_i128] = ACTIONS(859), [anon_sym_u256] = ACTIONS(859), [anon_sym_i256] = ACTIONS(859), [anon_sym_b256] = ACTIONS(859), [anon_sym_isize] = ACTIONS(859), [anon_sym_usize] = ACTIONS(859), [anon_sym_f32] = ACTIONS(859), [anon_sym_f64] = ACTIONS(859), [anon_sym_bool] = ACTIONS(859), [anon_sym_char] = ACTIONS(859), [anon_sym_str] = ACTIONS(859), [anon_sym_LBRACK] = ACTIONS(861), [anon_sym_as] = ACTIONS(513), [anon_sym_const] = ACTIONS(859), [anon_sym_default] = ACTIONS(859), [anon_sym_POUND] = ACTIONS(861), [anon_sym_COMMA] = ACTIONS(515), [anon_sym_EQ] = ACTIONS(513), [anon_sym_RBRACE] = ACTIONS(515), [anon_sym_LPAREN] = ACTIONS(861), [anon_sym_PLUS] = ACTIONS(513), [anon_sym_QMARK] = ACTIONS(515), [anon_sym_LT] = ACTIONS(859), [anon_sym_GT] = ACTIONS(513), [anon_sym_COLON_COLON] = ACTIONS(861), [anon_sym_STAR] = ACTIONS(513), [anon_sym__] = ACTIONS(859), [anon_sym_AMP] = ACTIONS(859), [anon_sym_ref] = ACTIONS(859), [anon_sym_DOT_DOT_DOT] = ACTIONS(515), [sym_mutable_specifier] = ACTIONS(859), [anon_sym_DOT_DOT] = ACTIONS(859), [anon_sym_DOT_DOT_EQ] = ACTIONS(515), [anon_sym_DASH] = ACTIONS(859), [anon_sym_AMP_AMP] = ACTIONS(515), [anon_sym_PIPE_PIPE] = ACTIONS(515), [anon_sym_PIPE] = ACTIONS(513), [anon_sym_CARET] = ACTIONS(513), [anon_sym_EQ_EQ] = ACTIONS(515), [anon_sym_BANG_EQ] = ACTIONS(515), [anon_sym_LT_EQ] = ACTIONS(515), [anon_sym_GT_EQ] = ACTIONS(515), [anon_sym_LT_LT] = ACTIONS(513), [anon_sym_GT_GT] = ACTIONS(513), [anon_sym_SLASH] = ACTIONS(513), [anon_sym_PERCENT] = ACTIONS(513), [anon_sym_PLUS_EQ] = ACTIONS(515), [anon_sym_DASH_EQ] = ACTIONS(515), [anon_sym_STAR_EQ] = ACTIONS(515), [anon_sym_SLASH_EQ] = ACTIONS(515), [anon_sym_PERCENT_EQ] = ACTIONS(515), [anon_sym_AMP_EQ] = ACTIONS(515), [anon_sym_PIPE_EQ] = ACTIONS(515), [anon_sym_CARET_EQ] = ACTIONS(515), [anon_sym_LT_LT_EQ] = ACTIONS(515), [anon_sym_GT_GT_EQ] = ACTIONS(515), [anon_sym_DOT] = ACTIONS(513), [anon_sym_deref] = ACTIONS(859), [sym_integer_literal] = ACTIONS(861), [aux_sym_string_literal_token1] = ACTIONS(861), [sym_char_literal] = ACTIONS(861), [anon_sym_true] = ACTIONS(859), [anon_sym_false] = ACTIONS(859), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(859), [sym_metavariable] = ACTIONS(861), [sym_raw_string_literal] = ACTIONS(861), [sym_float_literal] = ACTIONS(861), [sym_block_comment] = ACTIONS(3), }, [218] = { [sym_identifier] = ACTIONS(477), [anon_sym_u8] = ACTIONS(477), [anon_sym_i8] = ACTIONS(477), [anon_sym_u16] = ACTIONS(477), [anon_sym_i16] = ACTIONS(477), [anon_sym_u32] = ACTIONS(477), [anon_sym_i32] = ACTIONS(477), [anon_sym_u64] = ACTIONS(477), [anon_sym_i64] = ACTIONS(477), [anon_sym_u128] = ACTIONS(477), [anon_sym_i128] = ACTIONS(477), [anon_sym_u256] = ACTIONS(477), [anon_sym_i256] = ACTIONS(477), [anon_sym_b256] = ACTIONS(477), [anon_sym_isize] = ACTIONS(477), [anon_sym_usize] = ACTIONS(477), [anon_sym_f32] = ACTIONS(477), [anon_sym_f64] = ACTIONS(477), [anon_sym_bool] = ACTIONS(477), [anon_sym_char] = ACTIONS(477), [anon_sym_str] = ACTIONS(477), [anon_sym_LBRACK] = ACTIONS(475), [anon_sym_as] = ACTIONS(477), [anon_sym_const] = ACTIONS(477), [anon_sym_default] = ACTIONS(477), [anon_sym_POUND] = ACTIONS(475), [anon_sym_COMMA] = ACTIONS(475), [anon_sym_EQ] = ACTIONS(477), [anon_sym_RBRACE] = ACTIONS(475), [anon_sym_LPAREN] = ACTIONS(475), [anon_sym_PLUS] = ACTIONS(477), [anon_sym_QMARK] = ACTIONS(475), [anon_sym_LT] = ACTIONS(477), [anon_sym_GT] = ACTIONS(477), [anon_sym_COLON_COLON] = ACTIONS(475), [anon_sym_STAR] = ACTIONS(477), [anon_sym__] = ACTIONS(477), [anon_sym_AMP] = ACTIONS(477), [anon_sym_ref] = ACTIONS(477), [anon_sym_DOT_DOT_DOT] = ACTIONS(475), [sym_mutable_specifier] = ACTIONS(477), [anon_sym_DOT_DOT] = ACTIONS(477), [anon_sym_DOT_DOT_EQ] = ACTIONS(475), [anon_sym_DASH] = ACTIONS(477), [anon_sym_AMP_AMP] = ACTIONS(475), [anon_sym_PIPE_PIPE] = ACTIONS(475), [anon_sym_PIPE] = ACTIONS(477), [anon_sym_CARET] = ACTIONS(477), [anon_sym_EQ_EQ] = ACTIONS(475), [anon_sym_BANG_EQ] = ACTIONS(475), [anon_sym_LT_EQ] = ACTIONS(475), [anon_sym_GT_EQ] = ACTIONS(475), [anon_sym_LT_LT] = ACTIONS(477), [anon_sym_GT_GT] = ACTIONS(477), [anon_sym_SLASH] = ACTIONS(477), [anon_sym_PERCENT] = ACTIONS(477), [anon_sym_PLUS_EQ] = ACTIONS(475), [anon_sym_DASH_EQ] = ACTIONS(475), [anon_sym_STAR_EQ] = ACTIONS(475), [anon_sym_SLASH_EQ] = ACTIONS(475), [anon_sym_PERCENT_EQ] = ACTIONS(475), [anon_sym_AMP_EQ] = ACTIONS(475), [anon_sym_PIPE_EQ] = ACTIONS(475), [anon_sym_CARET_EQ] = ACTIONS(475), [anon_sym_LT_LT_EQ] = ACTIONS(475), [anon_sym_GT_GT_EQ] = ACTIONS(475), [anon_sym_DOT] = ACTIONS(477), [anon_sym_deref] = ACTIONS(477), [sym_integer_literal] = ACTIONS(475), [aux_sym_string_literal_token1] = ACTIONS(475), [sym_char_literal] = ACTIONS(475), [anon_sym_true] = ACTIONS(477), [anon_sym_false] = ACTIONS(477), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(477), [sym_metavariable] = ACTIONS(475), [sym_raw_string_literal] = ACTIONS(475), [sym_float_literal] = ACTIONS(475), [sym_block_comment] = ACTIONS(3), }, [219] = { [sym_identifier] = ACTIONS(531), [anon_sym_u8] = ACTIONS(531), [anon_sym_i8] = ACTIONS(531), [anon_sym_u16] = ACTIONS(531), [anon_sym_i16] = ACTIONS(531), [anon_sym_u32] = ACTIONS(531), [anon_sym_i32] = ACTIONS(531), [anon_sym_u64] = ACTIONS(531), [anon_sym_i64] = ACTIONS(531), [anon_sym_u128] = ACTIONS(531), [anon_sym_i128] = ACTIONS(531), [anon_sym_u256] = ACTIONS(531), [anon_sym_i256] = ACTIONS(531), [anon_sym_b256] = ACTIONS(531), [anon_sym_isize] = ACTIONS(531), [anon_sym_usize] = ACTIONS(531), [anon_sym_f32] = ACTIONS(531), [anon_sym_f64] = ACTIONS(531), [anon_sym_bool] = ACTIONS(531), [anon_sym_char] = ACTIONS(531), [anon_sym_str] = ACTIONS(531), [anon_sym_LBRACK] = ACTIONS(529), [anon_sym_as] = ACTIONS(531), [anon_sym_const] = ACTIONS(531), [anon_sym_default] = ACTIONS(531), [anon_sym_POUND] = ACTIONS(529), [anon_sym_COMMA] = ACTIONS(529), [anon_sym_EQ] = ACTIONS(531), [anon_sym_RBRACE] = ACTIONS(529), [anon_sym_LPAREN] = ACTIONS(529), [anon_sym_PLUS] = ACTIONS(531), [anon_sym_QMARK] = ACTIONS(529), [anon_sym_LT] = ACTIONS(531), [anon_sym_GT] = ACTIONS(531), [anon_sym_COLON_COLON] = ACTIONS(529), [anon_sym_STAR] = ACTIONS(531), [anon_sym__] = ACTIONS(531), [anon_sym_AMP] = ACTIONS(531), [anon_sym_ref] = ACTIONS(531), [anon_sym_DOT_DOT_DOT] = ACTIONS(529), [sym_mutable_specifier] = ACTIONS(531), [anon_sym_DOT_DOT] = ACTIONS(531), [anon_sym_DOT_DOT_EQ] = ACTIONS(529), [anon_sym_DASH] = ACTIONS(531), [anon_sym_AMP_AMP] = ACTIONS(529), [anon_sym_PIPE_PIPE] = ACTIONS(529), [anon_sym_PIPE] = ACTIONS(531), [anon_sym_CARET] = ACTIONS(531), [anon_sym_EQ_EQ] = ACTIONS(529), [anon_sym_BANG_EQ] = ACTIONS(529), [anon_sym_LT_EQ] = ACTIONS(529), [anon_sym_GT_EQ] = ACTIONS(529), [anon_sym_LT_LT] = ACTIONS(531), [anon_sym_GT_GT] = ACTIONS(531), [anon_sym_SLASH] = ACTIONS(531), [anon_sym_PERCENT] = ACTIONS(531), [anon_sym_PLUS_EQ] = ACTIONS(529), [anon_sym_DASH_EQ] = ACTIONS(529), [anon_sym_STAR_EQ] = ACTIONS(529), [anon_sym_SLASH_EQ] = ACTIONS(529), [anon_sym_PERCENT_EQ] = ACTIONS(529), [anon_sym_AMP_EQ] = ACTIONS(529), [anon_sym_PIPE_EQ] = ACTIONS(529), [anon_sym_CARET_EQ] = ACTIONS(529), [anon_sym_LT_LT_EQ] = ACTIONS(529), [anon_sym_GT_GT_EQ] = ACTIONS(529), [anon_sym_DOT] = ACTIONS(531), [anon_sym_deref] = ACTIONS(531), [sym_integer_literal] = ACTIONS(529), [aux_sym_string_literal_token1] = ACTIONS(529), [sym_char_literal] = ACTIONS(529), [anon_sym_true] = ACTIONS(531), [anon_sym_false] = ACTIONS(531), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(531), [sym_metavariable] = ACTIONS(529), [sym_raw_string_literal] = ACTIONS(529), [sym_float_literal] = ACTIONS(529), [sym_block_comment] = ACTIONS(3), }, [220] = { [sym_identifier] = ACTIONS(541), [anon_sym_u8] = ACTIONS(541), [anon_sym_i8] = ACTIONS(541), [anon_sym_u16] = ACTIONS(541), [anon_sym_i16] = ACTIONS(541), [anon_sym_u32] = ACTIONS(541), [anon_sym_i32] = ACTIONS(541), [anon_sym_u64] = ACTIONS(541), [anon_sym_i64] = ACTIONS(541), [anon_sym_u128] = ACTIONS(541), [anon_sym_i128] = ACTIONS(541), [anon_sym_u256] = ACTIONS(541), [anon_sym_i256] = ACTIONS(541), [anon_sym_b256] = ACTIONS(541), [anon_sym_isize] = ACTIONS(541), [anon_sym_usize] = ACTIONS(541), [anon_sym_f32] = ACTIONS(541), [anon_sym_f64] = ACTIONS(541), [anon_sym_bool] = ACTIONS(541), [anon_sym_char] = ACTIONS(541), [anon_sym_str] = ACTIONS(541), [anon_sym_LBRACK] = ACTIONS(539), [anon_sym_as] = ACTIONS(541), [anon_sym_const] = ACTIONS(541), [anon_sym_default] = ACTIONS(541), [anon_sym_POUND] = ACTIONS(539), [anon_sym_COMMA] = ACTIONS(539), [anon_sym_EQ] = ACTIONS(541), [anon_sym_RBRACE] = ACTIONS(539), [anon_sym_LPAREN] = ACTIONS(539), [anon_sym_PLUS] = ACTIONS(541), [anon_sym_QMARK] = ACTIONS(539), [anon_sym_LT] = ACTIONS(541), [anon_sym_GT] = ACTIONS(541), [anon_sym_COLON_COLON] = ACTIONS(539), [anon_sym_STAR] = ACTIONS(541), [anon_sym__] = ACTIONS(541), [anon_sym_AMP] = ACTIONS(541), [anon_sym_ref] = ACTIONS(541), [anon_sym_DOT_DOT_DOT] = ACTIONS(539), [sym_mutable_specifier] = ACTIONS(541), [anon_sym_DOT_DOT] = ACTIONS(541), [anon_sym_DOT_DOT_EQ] = ACTIONS(539), [anon_sym_DASH] = ACTIONS(541), [anon_sym_AMP_AMP] = ACTIONS(539), [anon_sym_PIPE_PIPE] = ACTIONS(539), [anon_sym_PIPE] = ACTIONS(541), [anon_sym_CARET] = ACTIONS(541), [anon_sym_EQ_EQ] = ACTIONS(539), [anon_sym_BANG_EQ] = ACTIONS(539), [anon_sym_LT_EQ] = ACTIONS(539), [anon_sym_GT_EQ] = ACTIONS(539), [anon_sym_LT_LT] = ACTIONS(541), [anon_sym_GT_GT] = ACTIONS(541), [anon_sym_SLASH] = ACTIONS(541), [anon_sym_PERCENT] = ACTIONS(541), [anon_sym_PLUS_EQ] = ACTIONS(539), [anon_sym_DASH_EQ] = ACTIONS(539), [anon_sym_STAR_EQ] = ACTIONS(539), [anon_sym_SLASH_EQ] = ACTIONS(539), [anon_sym_PERCENT_EQ] = ACTIONS(539), [anon_sym_AMP_EQ] = ACTIONS(539), [anon_sym_PIPE_EQ] = ACTIONS(539), [anon_sym_CARET_EQ] = ACTIONS(539), [anon_sym_LT_LT_EQ] = ACTIONS(539), [anon_sym_GT_GT_EQ] = ACTIONS(539), [anon_sym_DOT] = ACTIONS(541), [anon_sym_deref] = ACTIONS(541), [sym_integer_literal] = ACTIONS(539), [aux_sym_string_literal_token1] = ACTIONS(539), [sym_char_literal] = ACTIONS(539), [anon_sym_true] = ACTIONS(541), [anon_sym_false] = ACTIONS(541), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(541), [sym_metavariable] = ACTIONS(539), [sym_raw_string_literal] = ACTIONS(539), [sym_float_literal] = ACTIONS(539), [sym_block_comment] = ACTIONS(3), }, [221] = { [sym_identifier] = ACTIONS(449), [anon_sym_u8] = ACTIONS(449), [anon_sym_i8] = ACTIONS(449), [anon_sym_u16] = ACTIONS(449), [anon_sym_i16] = ACTIONS(449), [anon_sym_u32] = ACTIONS(449), [anon_sym_i32] = ACTIONS(449), [anon_sym_u64] = ACTIONS(449), [anon_sym_i64] = ACTIONS(449), [anon_sym_u128] = ACTIONS(449), [anon_sym_i128] = ACTIONS(449), [anon_sym_u256] = ACTIONS(449), [anon_sym_i256] = ACTIONS(449), [anon_sym_b256] = ACTIONS(449), [anon_sym_isize] = ACTIONS(449), [anon_sym_usize] = ACTIONS(449), [anon_sym_f32] = ACTIONS(449), [anon_sym_f64] = ACTIONS(449), [anon_sym_bool] = ACTIONS(449), [anon_sym_char] = ACTIONS(449), [anon_sym_str] = ACTIONS(449), [anon_sym_LBRACK] = ACTIONS(447), [anon_sym_as] = ACTIONS(449), [anon_sym_const] = ACTIONS(449), [anon_sym_default] = ACTIONS(449), [anon_sym_POUND] = ACTIONS(447), [anon_sym_COMMA] = ACTIONS(447), [anon_sym_EQ] = ACTIONS(449), [anon_sym_RBRACE] = ACTIONS(447), [anon_sym_LPAREN] = ACTIONS(447), [anon_sym_PLUS] = ACTIONS(449), [anon_sym_QMARK] = ACTIONS(447), [anon_sym_LT] = ACTIONS(449), [anon_sym_GT] = ACTIONS(449), [anon_sym_COLON_COLON] = ACTIONS(447), [anon_sym_STAR] = ACTIONS(449), [anon_sym__] = ACTIONS(449), [anon_sym_AMP] = ACTIONS(449), [anon_sym_ref] = ACTIONS(449), [anon_sym_DOT_DOT_DOT] = ACTIONS(447), [sym_mutable_specifier] = ACTIONS(449), [anon_sym_DOT_DOT] = ACTIONS(449), [anon_sym_DOT_DOT_EQ] = ACTIONS(447), [anon_sym_DASH] = ACTIONS(449), [anon_sym_AMP_AMP] = ACTIONS(447), [anon_sym_PIPE_PIPE] = ACTIONS(447), [anon_sym_PIPE] = ACTIONS(449), [anon_sym_CARET] = ACTIONS(449), [anon_sym_EQ_EQ] = ACTIONS(447), [anon_sym_BANG_EQ] = ACTIONS(447), [anon_sym_LT_EQ] = ACTIONS(447), [anon_sym_GT_EQ] = ACTIONS(447), [anon_sym_LT_LT] = ACTIONS(449), [anon_sym_GT_GT] = ACTIONS(449), [anon_sym_SLASH] = ACTIONS(449), [anon_sym_PERCENT] = ACTIONS(449), [anon_sym_PLUS_EQ] = ACTIONS(447), [anon_sym_DASH_EQ] = ACTIONS(447), [anon_sym_STAR_EQ] = ACTIONS(447), [anon_sym_SLASH_EQ] = ACTIONS(447), [anon_sym_PERCENT_EQ] = ACTIONS(447), [anon_sym_AMP_EQ] = ACTIONS(447), [anon_sym_PIPE_EQ] = ACTIONS(447), [anon_sym_CARET_EQ] = ACTIONS(447), [anon_sym_LT_LT_EQ] = ACTIONS(447), [anon_sym_GT_GT_EQ] = ACTIONS(447), [anon_sym_DOT] = ACTIONS(449), [anon_sym_deref] = ACTIONS(449), [sym_integer_literal] = ACTIONS(447), [aux_sym_string_literal_token1] = ACTIONS(447), [sym_char_literal] = ACTIONS(447), [anon_sym_true] = ACTIONS(449), [anon_sym_false] = ACTIONS(449), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(449), [sym_metavariable] = ACTIONS(447), [sym_raw_string_literal] = ACTIONS(447), [sym_float_literal] = ACTIONS(447), [sym_block_comment] = ACTIONS(3), }, [222] = { [sym_identifier] = ACTIONS(527), [anon_sym_u8] = ACTIONS(527), [anon_sym_i8] = ACTIONS(527), [anon_sym_u16] = ACTIONS(527), [anon_sym_i16] = ACTIONS(527), [anon_sym_u32] = ACTIONS(527), [anon_sym_i32] = ACTIONS(527), [anon_sym_u64] = ACTIONS(527), [anon_sym_i64] = ACTIONS(527), [anon_sym_u128] = ACTIONS(527), [anon_sym_i128] = ACTIONS(527), [anon_sym_u256] = ACTIONS(527), [anon_sym_i256] = ACTIONS(527), [anon_sym_b256] = ACTIONS(527), [anon_sym_isize] = ACTIONS(527), [anon_sym_usize] = ACTIONS(527), [anon_sym_f32] = ACTIONS(527), [anon_sym_f64] = ACTIONS(527), [anon_sym_bool] = ACTIONS(527), [anon_sym_char] = ACTIONS(527), [anon_sym_str] = ACTIONS(527), [anon_sym_LBRACK] = ACTIONS(525), [anon_sym_as] = ACTIONS(527), [anon_sym_const] = ACTIONS(527), [anon_sym_default] = ACTIONS(527), [anon_sym_POUND] = ACTIONS(525), [anon_sym_COMMA] = ACTIONS(525), [anon_sym_EQ] = ACTIONS(527), [anon_sym_RBRACE] = ACTIONS(525), [anon_sym_LPAREN] = ACTIONS(525), [anon_sym_PLUS] = ACTIONS(527), [anon_sym_QMARK] = ACTIONS(525), [anon_sym_LT] = ACTIONS(527), [anon_sym_GT] = ACTIONS(527), [anon_sym_COLON_COLON] = ACTIONS(525), [anon_sym_STAR] = ACTIONS(527), [anon_sym__] = ACTIONS(527), [anon_sym_AMP] = ACTIONS(527), [anon_sym_ref] = ACTIONS(527), [anon_sym_DOT_DOT_DOT] = ACTIONS(525), [sym_mutable_specifier] = ACTIONS(527), [anon_sym_DOT_DOT] = ACTIONS(527), [anon_sym_DOT_DOT_EQ] = ACTIONS(525), [anon_sym_DASH] = ACTIONS(527), [anon_sym_AMP_AMP] = ACTIONS(525), [anon_sym_PIPE_PIPE] = ACTIONS(525), [anon_sym_PIPE] = ACTIONS(527), [anon_sym_CARET] = ACTIONS(527), [anon_sym_EQ_EQ] = ACTIONS(525), [anon_sym_BANG_EQ] = ACTIONS(525), [anon_sym_LT_EQ] = ACTIONS(525), [anon_sym_GT_EQ] = ACTIONS(525), [anon_sym_LT_LT] = ACTIONS(527), [anon_sym_GT_GT] = ACTIONS(527), [anon_sym_SLASH] = ACTIONS(527), [anon_sym_PERCENT] = ACTIONS(527), [anon_sym_PLUS_EQ] = ACTIONS(525), [anon_sym_DASH_EQ] = ACTIONS(525), [anon_sym_STAR_EQ] = ACTIONS(525), [anon_sym_SLASH_EQ] = ACTIONS(525), [anon_sym_PERCENT_EQ] = ACTIONS(525), [anon_sym_AMP_EQ] = ACTIONS(525), [anon_sym_PIPE_EQ] = ACTIONS(525), [anon_sym_CARET_EQ] = ACTIONS(525), [anon_sym_LT_LT_EQ] = ACTIONS(525), [anon_sym_GT_GT_EQ] = ACTIONS(525), [anon_sym_DOT] = ACTIONS(527), [anon_sym_deref] = ACTIONS(527), [sym_integer_literal] = ACTIONS(525), [aux_sym_string_literal_token1] = ACTIONS(525), [sym_char_literal] = ACTIONS(525), [anon_sym_true] = ACTIONS(527), [anon_sym_false] = ACTIONS(527), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(527), [sym_metavariable] = ACTIONS(525), [sym_raw_string_literal] = ACTIONS(525), [sym_float_literal] = ACTIONS(525), [sym_block_comment] = ACTIONS(3), }, [223] = { [sym_identifier] = ACTIONS(455), [anon_sym_u8] = ACTIONS(455), [anon_sym_i8] = ACTIONS(455), [anon_sym_u16] = ACTIONS(455), [anon_sym_i16] = ACTIONS(455), [anon_sym_u32] = ACTIONS(455), [anon_sym_i32] = ACTIONS(455), [anon_sym_u64] = ACTIONS(455), [anon_sym_i64] = ACTIONS(455), [anon_sym_u128] = ACTIONS(455), [anon_sym_i128] = ACTIONS(455), [anon_sym_u256] = ACTIONS(455), [anon_sym_i256] = ACTIONS(455), [anon_sym_b256] = ACTIONS(455), [anon_sym_isize] = ACTIONS(455), [anon_sym_usize] = ACTIONS(455), [anon_sym_f32] = ACTIONS(455), [anon_sym_f64] = ACTIONS(455), [anon_sym_bool] = ACTIONS(455), [anon_sym_char] = ACTIONS(455), [anon_sym_str] = ACTIONS(455), [anon_sym_LBRACK] = ACTIONS(453), [anon_sym_as] = ACTIONS(455), [anon_sym_const] = ACTIONS(455), [anon_sym_default] = ACTIONS(455), [anon_sym_POUND] = ACTIONS(453), [anon_sym_COMMA] = ACTIONS(453), [anon_sym_EQ] = ACTIONS(455), [anon_sym_RBRACE] = ACTIONS(453), [anon_sym_LPAREN] = ACTIONS(453), [anon_sym_PLUS] = ACTIONS(455), [anon_sym_QMARK] = ACTIONS(453), [anon_sym_LT] = ACTIONS(455), [anon_sym_GT] = ACTIONS(455), [anon_sym_COLON_COLON] = ACTIONS(453), [anon_sym_STAR] = ACTIONS(455), [anon_sym__] = ACTIONS(455), [anon_sym_AMP] = ACTIONS(455), [anon_sym_ref] = ACTIONS(455), [anon_sym_DOT_DOT_DOT] = ACTIONS(453), [sym_mutable_specifier] = ACTIONS(455), [anon_sym_DOT_DOT] = ACTIONS(455), [anon_sym_DOT_DOT_EQ] = ACTIONS(453), [anon_sym_DASH] = ACTIONS(455), [anon_sym_AMP_AMP] = ACTIONS(453), [anon_sym_PIPE_PIPE] = ACTIONS(453), [anon_sym_PIPE] = ACTIONS(455), [anon_sym_CARET] = ACTIONS(455), [anon_sym_EQ_EQ] = ACTIONS(453), [anon_sym_BANG_EQ] = ACTIONS(453), [anon_sym_LT_EQ] = ACTIONS(453), [anon_sym_GT_EQ] = ACTIONS(453), [anon_sym_LT_LT] = ACTIONS(455), [anon_sym_GT_GT] = ACTIONS(455), [anon_sym_SLASH] = ACTIONS(455), [anon_sym_PERCENT] = ACTIONS(455), [anon_sym_PLUS_EQ] = ACTIONS(453), [anon_sym_DASH_EQ] = ACTIONS(453), [anon_sym_STAR_EQ] = ACTIONS(453), [anon_sym_SLASH_EQ] = ACTIONS(453), [anon_sym_PERCENT_EQ] = ACTIONS(453), [anon_sym_AMP_EQ] = ACTIONS(453), [anon_sym_PIPE_EQ] = ACTIONS(453), [anon_sym_CARET_EQ] = ACTIONS(453), [anon_sym_LT_LT_EQ] = ACTIONS(453), [anon_sym_GT_GT_EQ] = ACTIONS(453), [anon_sym_DOT] = ACTIONS(455), [anon_sym_deref] = ACTIONS(455), [sym_integer_literal] = ACTIONS(453), [aux_sym_string_literal_token1] = ACTIONS(453), [sym_char_literal] = ACTIONS(453), [anon_sym_true] = ACTIONS(455), [anon_sym_false] = ACTIONS(455), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(455), [sym_metavariable] = ACTIONS(453), [sym_raw_string_literal] = ACTIONS(453), [sym_float_literal] = ACTIONS(453), [sym_block_comment] = ACTIONS(3), }, [224] = { [sym_identifier] = ACTIONS(507), [anon_sym_u8] = ACTIONS(507), [anon_sym_i8] = ACTIONS(507), [anon_sym_u16] = ACTIONS(507), [anon_sym_i16] = ACTIONS(507), [anon_sym_u32] = ACTIONS(507), [anon_sym_i32] = ACTIONS(507), [anon_sym_u64] = ACTIONS(507), [anon_sym_i64] = ACTIONS(507), [anon_sym_u128] = ACTIONS(507), [anon_sym_i128] = ACTIONS(507), [anon_sym_u256] = ACTIONS(507), [anon_sym_i256] = ACTIONS(507), [anon_sym_b256] = ACTIONS(507), [anon_sym_isize] = ACTIONS(507), [anon_sym_usize] = ACTIONS(507), [anon_sym_f32] = ACTIONS(507), [anon_sym_f64] = ACTIONS(507), [anon_sym_bool] = ACTIONS(507), [anon_sym_char] = ACTIONS(507), [anon_sym_str] = ACTIONS(507), [anon_sym_LBRACK] = ACTIONS(505), [anon_sym_as] = ACTIONS(507), [anon_sym_const] = ACTIONS(507), [anon_sym_default] = ACTIONS(507), [anon_sym_POUND] = ACTIONS(505), [anon_sym_COMMA] = ACTIONS(505), [anon_sym_EQ] = ACTIONS(507), [anon_sym_RBRACE] = ACTIONS(505), [anon_sym_LPAREN] = ACTIONS(505), [anon_sym_PLUS] = ACTIONS(507), [anon_sym_QMARK] = ACTIONS(505), [anon_sym_LT] = ACTIONS(507), [anon_sym_GT] = ACTIONS(507), [anon_sym_COLON_COLON] = ACTIONS(505), [anon_sym_STAR] = ACTIONS(507), [anon_sym__] = ACTIONS(507), [anon_sym_AMP] = ACTIONS(507), [anon_sym_ref] = ACTIONS(507), [anon_sym_DOT_DOT_DOT] = ACTIONS(505), [sym_mutable_specifier] = ACTIONS(507), [anon_sym_DOT_DOT] = ACTIONS(507), [anon_sym_DOT_DOT_EQ] = ACTIONS(505), [anon_sym_DASH] = ACTIONS(507), [anon_sym_AMP_AMP] = ACTIONS(505), [anon_sym_PIPE_PIPE] = ACTIONS(505), [anon_sym_PIPE] = ACTIONS(507), [anon_sym_CARET] = ACTIONS(507), [anon_sym_EQ_EQ] = ACTIONS(505), [anon_sym_BANG_EQ] = ACTIONS(505), [anon_sym_LT_EQ] = ACTIONS(505), [anon_sym_GT_EQ] = ACTIONS(505), [anon_sym_LT_LT] = ACTIONS(507), [anon_sym_GT_GT] = ACTIONS(507), [anon_sym_SLASH] = ACTIONS(507), [anon_sym_PERCENT] = ACTIONS(507), [anon_sym_PLUS_EQ] = ACTIONS(505), [anon_sym_DASH_EQ] = ACTIONS(505), [anon_sym_STAR_EQ] = ACTIONS(505), [anon_sym_SLASH_EQ] = ACTIONS(505), [anon_sym_PERCENT_EQ] = ACTIONS(505), [anon_sym_AMP_EQ] = ACTIONS(505), [anon_sym_PIPE_EQ] = ACTIONS(505), [anon_sym_CARET_EQ] = ACTIONS(505), [anon_sym_LT_LT_EQ] = ACTIONS(505), [anon_sym_GT_GT_EQ] = ACTIONS(505), [anon_sym_DOT] = ACTIONS(507), [anon_sym_deref] = ACTIONS(507), [sym_integer_literal] = ACTIONS(505), [aux_sym_string_literal_token1] = ACTIONS(505), [sym_char_literal] = ACTIONS(505), [anon_sym_true] = ACTIONS(507), [anon_sym_false] = ACTIONS(507), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(507), [sym_metavariable] = ACTIONS(505), [sym_raw_string_literal] = ACTIONS(505), [sym_float_literal] = ACTIONS(505), [sym_block_comment] = ACTIONS(3), }, [225] = { [sym_identifier] = ACTIONS(519), [anon_sym_u8] = ACTIONS(519), [anon_sym_i8] = ACTIONS(519), [anon_sym_u16] = ACTIONS(519), [anon_sym_i16] = ACTIONS(519), [anon_sym_u32] = ACTIONS(519), [anon_sym_i32] = ACTIONS(519), [anon_sym_u64] = ACTIONS(519), [anon_sym_i64] = ACTIONS(519), [anon_sym_u128] = ACTIONS(519), [anon_sym_i128] = ACTIONS(519), [anon_sym_u256] = ACTIONS(519), [anon_sym_i256] = ACTIONS(519), [anon_sym_b256] = ACTIONS(519), [anon_sym_isize] = ACTIONS(519), [anon_sym_usize] = ACTIONS(519), [anon_sym_f32] = ACTIONS(519), [anon_sym_f64] = ACTIONS(519), [anon_sym_bool] = ACTIONS(519), [anon_sym_char] = ACTIONS(519), [anon_sym_str] = ACTIONS(519), [anon_sym_LBRACK] = ACTIONS(517), [anon_sym_as] = ACTIONS(519), [anon_sym_const] = ACTIONS(519), [anon_sym_default] = ACTIONS(519), [anon_sym_POUND] = ACTIONS(517), [anon_sym_COMMA] = ACTIONS(517), [anon_sym_EQ] = ACTIONS(519), [anon_sym_RBRACE] = ACTIONS(517), [anon_sym_LPAREN] = ACTIONS(517), [anon_sym_PLUS] = ACTIONS(519), [anon_sym_QMARK] = ACTIONS(517), [anon_sym_LT] = ACTIONS(519), [anon_sym_GT] = ACTIONS(519), [anon_sym_COLON_COLON] = ACTIONS(517), [anon_sym_STAR] = ACTIONS(519), [anon_sym__] = ACTIONS(519), [anon_sym_AMP] = ACTIONS(519), [anon_sym_ref] = ACTIONS(519), [anon_sym_DOT_DOT_DOT] = ACTIONS(517), [sym_mutable_specifier] = ACTIONS(519), [anon_sym_DOT_DOT] = ACTIONS(519), [anon_sym_DOT_DOT_EQ] = ACTIONS(517), [anon_sym_DASH] = ACTIONS(519), [anon_sym_AMP_AMP] = ACTIONS(517), [anon_sym_PIPE_PIPE] = ACTIONS(517), [anon_sym_PIPE] = ACTIONS(519), [anon_sym_CARET] = ACTIONS(519), [anon_sym_EQ_EQ] = ACTIONS(517), [anon_sym_BANG_EQ] = ACTIONS(517), [anon_sym_LT_EQ] = ACTIONS(517), [anon_sym_GT_EQ] = ACTIONS(517), [anon_sym_LT_LT] = ACTIONS(519), [anon_sym_GT_GT] = ACTIONS(519), [anon_sym_SLASH] = ACTIONS(519), [anon_sym_PERCENT] = ACTIONS(519), [anon_sym_PLUS_EQ] = ACTIONS(517), [anon_sym_DASH_EQ] = ACTIONS(517), [anon_sym_STAR_EQ] = ACTIONS(517), [anon_sym_SLASH_EQ] = ACTIONS(517), [anon_sym_PERCENT_EQ] = ACTIONS(517), [anon_sym_AMP_EQ] = ACTIONS(517), [anon_sym_PIPE_EQ] = ACTIONS(517), [anon_sym_CARET_EQ] = ACTIONS(517), [anon_sym_LT_LT_EQ] = ACTIONS(517), [anon_sym_GT_GT_EQ] = ACTIONS(517), [anon_sym_DOT] = ACTIONS(519), [anon_sym_deref] = ACTIONS(519), [sym_integer_literal] = ACTIONS(517), [aux_sym_string_literal_token1] = ACTIONS(517), [sym_char_literal] = ACTIONS(517), [anon_sym_true] = ACTIONS(519), [anon_sym_false] = ACTIONS(519), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(519), [sym_metavariable] = ACTIONS(517), [sym_raw_string_literal] = ACTIONS(517), [sym_float_literal] = ACTIONS(517), [sym_block_comment] = ACTIONS(3), }, [226] = { [ts_builtin_sym_end] = ACTIONS(863), [sym_identifier] = ACTIONS(865), [anon_sym_SEMI] = ACTIONS(863), [anon_sym_u8] = ACTIONS(865), [anon_sym_i8] = ACTIONS(865), [anon_sym_u16] = ACTIONS(865), [anon_sym_i16] = ACTIONS(865), [anon_sym_u32] = ACTIONS(865), [anon_sym_i32] = ACTIONS(865), [anon_sym_u64] = ACTIONS(865), [anon_sym_i64] = ACTIONS(865), [anon_sym_u128] = ACTIONS(865), [anon_sym_i128] = ACTIONS(865), [anon_sym_u256] = ACTIONS(865), [anon_sym_i256] = ACTIONS(865), [anon_sym_b256] = ACTIONS(865), [anon_sym_isize] = ACTIONS(865), [anon_sym_usize] = ACTIONS(865), [anon_sym_f32] = ACTIONS(865), [anon_sym_f64] = ACTIONS(865), [anon_sym_bool] = ACTIONS(865), [anon_sym_char] = ACTIONS(865), [anon_sym_str] = ACTIONS(865), [anon_sym_LBRACK] = ACTIONS(863), [anon_sym_contract] = ACTIONS(865), [anon_sym_script] = ACTIONS(865), [anon_sym_predicate] = ACTIONS(865), [anon_sym_library] = ACTIONS(865), [anon_sym_SQUOTE] = ACTIONS(865), [anon_sym_abi] = ACTIONS(865), [anon_sym_break] = ACTIONS(865), [anon_sym_configurable] = ACTIONS(865), [anon_sym_const] = ACTIONS(865), [anon_sym_continue] = ACTIONS(865), [anon_sym_default] = ACTIONS(865), [anon_sym_mod] = ACTIONS(865), [anon_sym_enum] = ACTIONS(865), [anon_sym_fn] = ACTIONS(865), [anon_sym_for] = ACTIONS(865), [anon_sym_if] = ACTIONS(865), [anon_sym_impl] = ACTIONS(865), [anon_sym_let] = ACTIONS(865), [anon_sym_match] = ACTIONS(865), [anon_sym_pub] = ACTIONS(865), [anon_sym_return] = ACTIONS(865), [anon_sym_storage] = ACTIONS(865), [anon_sym_struct] = ACTIONS(865), [anon_sym_trait] = ACTIONS(865), [anon_sym_type] = ACTIONS(865), [anon_sym_use] = ACTIONS(865), [anon_sym_while] = ACTIONS(865), [anon_sym_POUND] = ACTIONS(863), [anon_sym_BANG] = ACTIONS(863), [anon_sym_LBRACE] = ACTIONS(863), [anon_sym_RBRACE] = ACTIONS(863), [anon_sym_LPAREN] = ACTIONS(863), [anon_sym_asm] = ACTIONS(865), [anon_sym_LT] = ACTIONS(863), [anon_sym_COLON_COLON] = ACTIONS(863), [anon_sym_STAR] = ACTIONS(863), [anon_sym_AMP] = ACTIONS(863), [anon_sym_DOT_DOT] = ACTIONS(863), [anon_sym_DASH] = ACTIONS(863), [anon_sym_PIPE] = ACTIONS(863), [anon_sym_yield] = ACTIONS(865), [anon_sym_move] = ACTIONS(865), [sym_integer_literal] = ACTIONS(863), [aux_sym_string_literal_token1] = ACTIONS(863), [sym_char_literal] = ACTIONS(863), [anon_sym_true] = ACTIONS(865), [anon_sym_false] = ACTIONS(865), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(865), [sym_metavariable] = ACTIONS(863), [sym_raw_string_literal] = ACTIONS(863), [sym_float_literal] = ACTIONS(863), [sym_block_comment] = ACTIONS(3), }, [227] = { [ts_builtin_sym_end] = ACTIONS(867), [sym_identifier] = ACTIONS(869), [anon_sym_SEMI] = ACTIONS(867), [anon_sym_u8] = ACTIONS(869), [anon_sym_i8] = ACTIONS(869), [anon_sym_u16] = ACTIONS(869), [anon_sym_i16] = ACTIONS(869), [anon_sym_u32] = ACTIONS(869), [anon_sym_i32] = ACTIONS(869), [anon_sym_u64] = ACTIONS(869), [anon_sym_i64] = ACTIONS(869), [anon_sym_u128] = ACTIONS(869), [anon_sym_i128] = ACTIONS(869), [anon_sym_u256] = ACTIONS(869), [anon_sym_i256] = ACTIONS(869), [anon_sym_b256] = ACTIONS(869), [anon_sym_isize] = ACTIONS(869), [anon_sym_usize] = ACTIONS(869), [anon_sym_f32] = ACTIONS(869), [anon_sym_f64] = ACTIONS(869), [anon_sym_bool] = ACTIONS(869), [anon_sym_char] = ACTIONS(869), [anon_sym_str] = ACTIONS(869), [anon_sym_LBRACK] = ACTIONS(867), [anon_sym_contract] = ACTIONS(869), [anon_sym_script] = ACTIONS(869), [anon_sym_predicate] = ACTIONS(869), [anon_sym_library] = ACTIONS(869), [anon_sym_SQUOTE] = ACTIONS(869), [anon_sym_abi] = ACTIONS(869), [anon_sym_break] = ACTIONS(869), [anon_sym_configurable] = ACTIONS(869), [anon_sym_const] = ACTIONS(869), [anon_sym_continue] = ACTIONS(869), [anon_sym_default] = ACTIONS(869), [anon_sym_mod] = ACTIONS(869), [anon_sym_enum] = ACTIONS(869), [anon_sym_fn] = ACTIONS(869), [anon_sym_for] = ACTIONS(869), [anon_sym_if] = ACTIONS(869), [anon_sym_impl] = ACTIONS(869), [anon_sym_let] = ACTIONS(869), [anon_sym_match] = ACTIONS(869), [anon_sym_pub] = ACTIONS(869), [anon_sym_return] = ACTIONS(869), [anon_sym_storage] = ACTIONS(869), [anon_sym_struct] = ACTIONS(869), [anon_sym_trait] = ACTIONS(869), [anon_sym_type] = ACTIONS(869), [anon_sym_use] = ACTIONS(869), [anon_sym_while] = ACTIONS(869), [anon_sym_POUND] = ACTIONS(867), [anon_sym_BANG] = ACTIONS(867), [anon_sym_LBRACE] = ACTIONS(867), [anon_sym_RBRACE] = ACTIONS(867), [anon_sym_LPAREN] = ACTIONS(867), [anon_sym_asm] = ACTIONS(869), [anon_sym_LT] = ACTIONS(867), [anon_sym_COLON_COLON] = ACTIONS(867), [anon_sym_STAR] = ACTIONS(867), [anon_sym_AMP] = ACTIONS(867), [anon_sym_DOT_DOT] = ACTIONS(867), [anon_sym_DASH] = ACTIONS(867), [anon_sym_PIPE] = ACTIONS(867), [anon_sym_yield] = ACTIONS(869), [anon_sym_move] = ACTIONS(869), [sym_integer_literal] = ACTIONS(867), [aux_sym_string_literal_token1] = ACTIONS(867), [sym_char_literal] = ACTIONS(867), [anon_sym_true] = ACTIONS(869), [anon_sym_false] = ACTIONS(869), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(869), [sym_metavariable] = ACTIONS(867), [sym_raw_string_literal] = ACTIONS(867), [sym_float_literal] = ACTIONS(867), [sym_block_comment] = ACTIONS(3), }, [228] = { [ts_builtin_sym_end] = ACTIONS(871), [sym_identifier] = ACTIONS(873), [anon_sym_SEMI] = ACTIONS(871), [anon_sym_u8] = ACTIONS(873), [anon_sym_i8] = ACTIONS(873), [anon_sym_u16] = ACTIONS(873), [anon_sym_i16] = ACTIONS(873), [anon_sym_u32] = ACTIONS(873), [anon_sym_i32] = ACTIONS(873), [anon_sym_u64] = ACTIONS(873), [anon_sym_i64] = ACTIONS(873), [anon_sym_u128] = ACTIONS(873), [anon_sym_i128] = ACTIONS(873), [anon_sym_u256] = ACTIONS(873), [anon_sym_i256] = ACTIONS(873), [anon_sym_b256] = ACTIONS(873), [anon_sym_isize] = ACTIONS(873), [anon_sym_usize] = ACTIONS(873), [anon_sym_f32] = ACTIONS(873), [anon_sym_f64] = ACTIONS(873), [anon_sym_bool] = ACTIONS(873), [anon_sym_char] = ACTIONS(873), [anon_sym_str] = ACTIONS(873), [anon_sym_LBRACK] = ACTIONS(871), [anon_sym_contract] = ACTIONS(873), [anon_sym_script] = ACTIONS(873), [anon_sym_predicate] = ACTIONS(873), [anon_sym_library] = ACTIONS(873), [anon_sym_SQUOTE] = ACTIONS(873), [anon_sym_abi] = ACTIONS(873), [anon_sym_break] = ACTIONS(873), [anon_sym_configurable] = ACTIONS(873), [anon_sym_const] = ACTIONS(873), [anon_sym_continue] = ACTIONS(873), [anon_sym_default] = ACTIONS(873), [anon_sym_mod] = ACTIONS(873), [anon_sym_enum] = ACTIONS(873), [anon_sym_fn] = ACTIONS(873), [anon_sym_for] = ACTIONS(873), [anon_sym_if] = ACTIONS(873), [anon_sym_impl] = ACTIONS(873), [anon_sym_let] = ACTIONS(873), [anon_sym_match] = ACTIONS(873), [anon_sym_pub] = ACTIONS(873), [anon_sym_return] = ACTIONS(873), [anon_sym_storage] = ACTIONS(873), [anon_sym_struct] = ACTIONS(873), [anon_sym_trait] = ACTIONS(873), [anon_sym_type] = ACTIONS(873), [anon_sym_use] = ACTIONS(873), [anon_sym_while] = ACTIONS(873), [anon_sym_POUND] = ACTIONS(871), [anon_sym_BANG] = ACTIONS(871), [anon_sym_LBRACE] = ACTIONS(871), [anon_sym_RBRACE] = ACTIONS(871), [anon_sym_LPAREN] = ACTIONS(871), [anon_sym_asm] = ACTIONS(873), [anon_sym_LT] = ACTIONS(871), [anon_sym_COLON_COLON] = ACTIONS(871), [anon_sym_STAR] = ACTIONS(871), [anon_sym_AMP] = ACTIONS(871), [anon_sym_DOT_DOT] = ACTIONS(871), [anon_sym_DASH] = ACTIONS(871), [anon_sym_PIPE] = ACTIONS(871), [anon_sym_yield] = ACTIONS(873), [anon_sym_move] = ACTIONS(873), [sym_integer_literal] = ACTIONS(871), [aux_sym_string_literal_token1] = ACTIONS(871), [sym_char_literal] = ACTIONS(871), [anon_sym_true] = ACTIONS(873), [anon_sym_false] = ACTIONS(873), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(873), [sym_metavariable] = ACTIONS(871), [sym_raw_string_literal] = ACTIONS(871), [sym_float_literal] = ACTIONS(871), [sym_block_comment] = ACTIONS(3), }, [229] = { [ts_builtin_sym_end] = ACTIONS(875), [sym_identifier] = ACTIONS(877), [anon_sym_SEMI] = ACTIONS(875), [anon_sym_u8] = ACTIONS(877), [anon_sym_i8] = ACTIONS(877), [anon_sym_u16] = ACTIONS(877), [anon_sym_i16] = ACTIONS(877), [anon_sym_u32] = ACTIONS(877), [anon_sym_i32] = ACTIONS(877), [anon_sym_u64] = ACTIONS(877), [anon_sym_i64] = ACTIONS(877), [anon_sym_u128] = ACTIONS(877), [anon_sym_i128] = ACTIONS(877), [anon_sym_u256] = ACTIONS(877), [anon_sym_i256] = ACTIONS(877), [anon_sym_b256] = ACTIONS(877), [anon_sym_isize] = ACTIONS(877), [anon_sym_usize] = ACTIONS(877), [anon_sym_f32] = ACTIONS(877), [anon_sym_f64] = ACTIONS(877), [anon_sym_bool] = ACTIONS(877), [anon_sym_char] = ACTIONS(877), [anon_sym_str] = ACTIONS(877), [anon_sym_LBRACK] = ACTIONS(875), [anon_sym_contract] = ACTIONS(877), [anon_sym_script] = ACTIONS(877), [anon_sym_predicate] = ACTIONS(877), [anon_sym_library] = ACTIONS(877), [anon_sym_SQUOTE] = ACTIONS(877), [anon_sym_abi] = ACTIONS(877), [anon_sym_break] = ACTIONS(877), [anon_sym_configurable] = ACTIONS(877), [anon_sym_const] = ACTIONS(877), [anon_sym_continue] = ACTIONS(877), [anon_sym_default] = ACTIONS(877), [anon_sym_mod] = ACTIONS(877), [anon_sym_enum] = ACTIONS(877), [anon_sym_fn] = ACTIONS(877), [anon_sym_for] = ACTIONS(877), [anon_sym_if] = ACTIONS(877), [anon_sym_impl] = ACTIONS(877), [anon_sym_let] = ACTIONS(877), [anon_sym_match] = ACTIONS(877), [anon_sym_pub] = ACTIONS(877), [anon_sym_return] = ACTIONS(877), [anon_sym_storage] = ACTIONS(877), [anon_sym_struct] = ACTIONS(877), [anon_sym_trait] = ACTIONS(877), [anon_sym_type] = ACTIONS(877), [anon_sym_use] = ACTIONS(877), [anon_sym_while] = ACTIONS(877), [anon_sym_POUND] = ACTIONS(875), [anon_sym_BANG] = ACTIONS(875), [anon_sym_LBRACE] = ACTIONS(875), [anon_sym_RBRACE] = ACTIONS(875), [anon_sym_LPAREN] = ACTIONS(875), [anon_sym_asm] = ACTIONS(877), [anon_sym_LT] = ACTIONS(875), [anon_sym_COLON_COLON] = ACTIONS(875), [anon_sym_STAR] = ACTIONS(875), [anon_sym_AMP] = ACTIONS(875), [anon_sym_DOT_DOT] = ACTIONS(875), [anon_sym_DASH] = ACTIONS(875), [anon_sym_PIPE] = ACTIONS(875), [anon_sym_yield] = ACTIONS(877), [anon_sym_move] = ACTIONS(877), [sym_integer_literal] = ACTIONS(875), [aux_sym_string_literal_token1] = ACTIONS(875), [sym_char_literal] = ACTIONS(875), [anon_sym_true] = ACTIONS(877), [anon_sym_false] = ACTIONS(877), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(877), [sym_metavariable] = ACTIONS(875), [sym_raw_string_literal] = ACTIONS(875), [sym_float_literal] = ACTIONS(875), [sym_block_comment] = ACTIONS(3), }, [230] = { [ts_builtin_sym_end] = ACTIONS(879), [sym_identifier] = ACTIONS(881), [anon_sym_SEMI] = ACTIONS(879), [anon_sym_u8] = ACTIONS(881), [anon_sym_i8] = ACTIONS(881), [anon_sym_u16] = ACTIONS(881), [anon_sym_i16] = ACTIONS(881), [anon_sym_u32] = ACTIONS(881), [anon_sym_i32] = ACTIONS(881), [anon_sym_u64] = ACTIONS(881), [anon_sym_i64] = ACTIONS(881), [anon_sym_u128] = ACTIONS(881), [anon_sym_i128] = ACTIONS(881), [anon_sym_u256] = ACTIONS(881), [anon_sym_i256] = ACTIONS(881), [anon_sym_b256] = ACTIONS(881), [anon_sym_isize] = ACTIONS(881), [anon_sym_usize] = ACTIONS(881), [anon_sym_f32] = ACTIONS(881), [anon_sym_f64] = ACTIONS(881), [anon_sym_bool] = ACTIONS(881), [anon_sym_char] = ACTIONS(881), [anon_sym_str] = ACTIONS(881), [anon_sym_LBRACK] = ACTIONS(879), [anon_sym_contract] = ACTIONS(881), [anon_sym_script] = ACTIONS(881), [anon_sym_predicate] = ACTIONS(881), [anon_sym_library] = ACTIONS(881), [anon_sym_SQUOTE] = ACTIONS(881), [anon_sym_abi] = ACTIONS(881), [anon_sym_break] = ACTIONS(881), [anon_sym_configurable] = ACTIONS(881), [anon_sym_const] = ACTIONS(881), [anon_sym_continue] = ACTIONS(881), [anon_sym_default] = ACTIONS(881), [anon_sym_mod] = ACTIONS(881), [anon_sym_enum] = ACTIONS(881), [anon_sym_fn] = ACTIONS(881), [anon_sym_for] = ACTIONS(881), [anon_sym_if] = ACTIONS(881), [anon_sym_impl] = ACTIONS(881), [anon_sym_let] = ACTIONS(881), [anon_sym_match] = ACTIONS(881), [anon_sym_pub] = ACTIONS(881), [anon_sym_return] = ACTIONS(881), [anon_sym_storage] = ACTIONS(881), [anon_sym_struct] = ACTIONS(881), [anon_sym_trait] = ACTIONS(881), [anon_sym_type] = ACTIONS(881), [anon_sym_use] = ACTIONS(881), [anon_sym_while] = ACTIONS(881), [anon_sym_POUND] = ACTIONS(879), [anon_sym_BANG] = ACTIONS(879), [anon_sym_LBRACE] = ACTIONS(879), [anon_sym_RBRACE] = ACTIONS(879), [anon_sym_LPAREN] = ACTIONS(879), [anon_sym_asm] = ACTIONS(881), [anon_sym_LT] = ACTIONS(879), [anon_sym_COLON_COLON] = ACTIONS(879), [anon_sym_STAR] = ACTIONS(879), [anon_sym_AMP] = ACTIONS(879), [anon_sym_DOT_DOT] = ACTIONS(879), [anon_sym_DASH] = ACTIONS(879), [anon_sym_PIPE] = ACTIONS(879), [anon_sym_yield] = ACTIONS(881), [anon_sym_move] = ACTIONS(881), [sym_integer_literal] = ACTIONS(879), [aux_sym_string_literal_token1] = ACTIONS(879), [sym_char_literal] = ACTIONS(879), [anon_sym_true] = ACTIONS(881), [anon_sym_false] = ACTIONS(881), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(881), [sym_metavariable] = ACTIONS(879), [sym_raw_string_literal] = ACTIONS(879), [sym_float_literal] = ACTIONS(879), [sym_block_comment] = ACTIONS(3), }, [231] = { [ts_builtin_sym_end] = ACTIONS(883), [sym_identifier] = ACTIONS(885), [anon_sym_SEMI] = ACTIONS(883), [anon_sym_u8] = ACTIONS(885), [anon_sym_i8] = ACTIONS(885), [anon_sym_u16] = ACTIONS(885), [anon_sym_i16] = ACTIONS(885), [anon_sym_u32] = ACTIONS(885), [anon_sym_i32] = ACTIONS(885), [anon_sym_u64] = ACTIONS(885), [anon_sym_i64] = ACTIONS(885), [anon_sym_u128] = ACTIONS(885), [anon_sym_i128] = ACTIONS(885), [anon_sym_u256] = ACTIONS(885), [anon_sym_i256] = ACTIONS(885), [anon_sym_b256] = ACTIONS(885), [anon_sym_isize] = ACTIONS(885), [anon_sym_usize] = ACTIONS(885), [anon_sym_f32] = ACTIONS(885), [anon_sym_f64] = ACTIONS(885), [anon_sym_bool] = ACTIONS(885), [anon_sym_char] = ACTIONS(885), [anon_sym_str] = ACTIONS(885), [anon_sym_LBRACK] = ACTIONS(883), [anon_sym_contract] = ACTIONS(885), [anon_sym_script] = ACTIONS(885), [anon_sym_predicate] = ACTIONS(885), [anon_sym_library] = ACTIONS(885), [anon_sym_SQUOTE] = ACTIONS(885), [anon_sym_abi] = ACTIONS(885), [anon_sym_break] = ACTIONS(885), [anon_sym_configurable] = ACTIONS(885), [anon_sym_const] = ACTIONS(885), [anon_sym_continue] = ACTIONS(885), [anon_sym_default] = ACTIONS(885), [anon_sym_mod] = ACTIONS(885), [anon_sym_enum] = ACTIONS(885), [anon_sym_fn] = ACTIONS(885), [anon_sym_for] = ACTIONS(885), [anon_sym_if] = ACTIONS(885), [anon_sym_impl] = ACTIONS(885), [anon_sym_let] = ACTIONS(885), [anon_sym_match] = ACTIONS(885), [anon_sym_pub] = ACTIONS(885), [anon_sym_return] = ACTIONS(885), [anon_sym_storage] = ACTIONS(885), [anon_sym_struct] = ACTIONS(885), [anon_sym_trait] = ACTIONS(885), [anon_sym_type] = ACTIONS(885), [anon_sym_use] = ACTIONS(885), [anon_sym_while] = ACTIONS(885), [anon_sym_POUND] = ACTIONS(883), [anon_sym_BANG] = ACTIONS(883), [anon_sym_LBRACE] = ACTIONS(883), [anon_sym_RBRACE] = ACTIONS(883), [anon_sym_LPAREN] = ACTIONS(883), [anon_sym_asm] = ACTIONS(885), [anon_sym_LT] = ACTIONS(883), [anon_sym_COLON_COLON] = ACTIONS(883), [anon_sym_STAR] = ACTIONS(883), [anon_sym_AMP] = ACTIONS(883), [anon_sym_DOT_DOT] = ACTIONS(883), [anon_sym_DASH] = ACTIONS(883), [anon_sym_PIPE] = ACTIONS(883), [anon_sym_yield] = ACTIONS(885), [anon_sym_move] = ACTIONS(885), [sym_integer_literal] = ACTIONS(883), [aux_sym_string_literal_token1] = ACTIONS(883), [sym_char_literal] = ACTIONS(883), [anon_sym_true] = ACTIONS(885), [anon_sym_false] = ACTIONS(885), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(885), [sym_metavariable] = ACTIONS(883), [sym_raw_string_literal] = ACTIONS(883), [sym_float_literal] = ACTIONS(883), [sym_block_comment] = ACTIONS(3), }, [232] = { [ts_builtin_sym_end] = ACTIONS(887), [sym_identifier] = ACTIONS(889), [anon_sym_SEMI] = ACTIONS(887), [anon_sym_u8] = ACTIONS(889), [anon_sym_i8] = ACTIONS(889), [anon_sym_u16] = ACTIONS(889), [anon_sym_i16] = ACTIONS(889), [anon_sym_u32] = ACTIONS(889), [anon_sym_i32] = ACTIONS(889), [anon_sym_u64] = ACTIONS(889), [anon_sym_i64] = ACTIONS(889), [anon_sym_u128] = ACTIONS(889), [anon_sym_i128] = ACTIONS(889), [anon_sym_u256] = ACTIONS(889), [anon_sym_i256] = ACTIONS(889), [anon_sym_b256] = ACTIONS(889), [anon_sym_isize] = ACTIONS(889), [anon_sym_usize] = ACTIONS(889), [anon_sym_f32] = ACTIONS(889), [anon_sym_f64] = ACTIONS(889), [anon_sym_bool] = ACTIONS(889), [anon_sym_char] = ACTIONS(889), [anon_sym_str] = ACTIONS(889), [anon_sym_LBRACK] = ACTIONS(887), [anon_sym_contract] = ACTIONS(889), [anon_sym_script] = ACTIONS(889), [anon_sym_predicate] = ACTIONS(889), [anon_sym_library] = ACTIONS(889), [anon_sym_SQUOTE] = ACTIONS(889), [anon_sym_abi] = ACTIONS(889), [anon_sym_break] = ACTIONS(889), [anon_sym_configurable] = ACTIONS(889), [anon_sym_const] = ACTIONS(889), [anon_sym_continue] = ACTIONS(889), [anon_sym_default] = ACTIONS(889), [anon_sym_mod] = ACTIONS(889), [anon_sym_enum] = ACTIONS(889), [anon_sym_fn] = ACTIONS(889), [anon_sym_for] = ACTIONS(889), [anon_sym_if] = ACTIONS(889), [anon_sym_impl] = ACTIONS(889), [anon_sym_let] = ACTIONS(889), [anon_sym_match] = ACTIONS(889), [anon_sym_pub] = ACTIONS(889), [anon_sym_return] = ACTIONS(889), [anon_sym_storage] = ACTIONS(889), [anon_sym_struct] = ACTIONS(889), [anon_sym_trait] = ACTIONS(889), [anon_sym_type] = ACTIONS(889), [anon_sym_use] = ACTIONS(889), [anon_sym_while] = ACTIONS(889), [anon_sym_POUND] = ACTIONS(887), [anon_sym_BANG] = ACTIONS(887), [anon_sym_LBRACE] = ACTIONS(887), [anon_sym_RBRACE] = ACTIONS(887), [anon_sym_LPAREN] = ACTIONS(887), [anon_sym_asm] = ACTIONS(889), [anon_sym_LT] = ACTIONS(887), [anon_sym_COLON_COLON] = ACTIONS(887), [anon_sym_STAR] = ACTIONS(887), [anon_sym_AMP] = ACTIONS(887), [anon_sym_DOT_DOT] = ACTIONS(887), [anon_sym_DASH] = ACTIONS(887), [anon_sym_PIPE] = ACTIONS(887), [anon_sym_yield] = ACTIONS(889), [anon_sym_move] = ACTIONS(889), [sym_integer_literal] = ACTIONS(887), [aux_sym_string_literal_token1] = ACTIONS(887), [sym_char_literal] = ACTIONS(887), [anon_sym_true] = ACTIONS(889), [anon_sym_false] = ACTIONS(889), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(889), [sym_metavariable] = ACTIONS(887), [sym_raw_string_literal] = ACTIONS(887), [sym_float_literal] = ACTIONS(887), [sym_block_comment] = ACTIONS(3), }, [233] = { [ts_builtin_sym_end] = ACTIONS(891), [sym_identifier] = ACTIONS(893), [anon_sym_SEMI] = ACTIONS(891), [anon_sym_u8] = ACTIONS(893), [anon_sym_i8] = ACTIONS(893), [anon_sym_u16] = ACTIONS(893), [anon_sym_i16] = ACTIONS(893), [anon_sym_u32] = ACTIONS(893), [anon_sym_i32] = ACTIONS(893), [anon_sym_u64] = ACTIONS(893), [anon_sym_i64] = ACTIONS(893), [anon_sym_u128] = ACTIONS(893), [anon_sym_i128] = ACTIONS(893), [anon_sym_u256] = ACTIONS(893), [anon_sym_i256] = ACTIONS(893), [anon_sym_b256] = ACTIONS(893), [anon_sym_isize] = ACTIONS(893), [anon_sym_usize] = ACTIONS(893), [anon_sym_f32] = ACTIONS(893), [anon_sym_f64] = ACTIONS(893), [anon_sym_bool] = ACTIONS(893), [anon_sym_char] = ACTIONS(893), [anon_sym_str] = ACTIONS(893), [anon_sym_LBRACK] = ACTIONS(891), [anon_sym_contract] = ACTIONS(893), [anon_sym_script] = ACTIONS(893), [anon_sym_predicate] = ACTIONS(893), [anon_sym_library] = ACTIONS(893), [anon_sym_SQUOTE] = ACTIONS(893), [anon_sym_abi] = ACTIONS(893), [anon_sym_break] = ACTIONS(893), [anon_sym_configurable] = ACTIONS(893), [anon_sym_const] = ACTIONS(893), [anon_sym_continue] = ACTIONS(893), [anon_sym_default] = ACTIONS(893), [anon_sym_mod] = ACTIONS(893), [anon_sym_enum] = ACTIONS(893), [anon_sym_fn] = ACTIONS(893), [anon_sym_for] = ACTIONS(893), [anon_sym_if] = ACTIONS(893), [anon_sym_impl] = ACTIONS(893), [anon_sym_let] = ACTIONS(893), [anon_sym_match] = ACTIONS(893), [anon_sym_pub] = ACTIONS(893), [anon_sym_return] = ACTIONS(893), [anon_sym_storage] = ACTIONS(893), [anon_sym_struct] = ACTIONS(893), [anon_sym_trait] = ACTIONS(893), [anon_sym_type] = ACTIONS(893), [anon_sym_use] = ACTIONS(893), [anon_sym_while] = ACTIONS(893), [anon_sym_POUND] = ACTIONS(891), [anon_sym_BANG] = ACTIONS(891), [anon_sym_LBRACE] = ACTIONS(891), [anon_sym_RBRACE] = ACTIONS(891), [anon_sym_LPAREN] = ACTIONS(891), [anon_sym_asm] = ACTIONS(893), [anon_sym_LT] = ACTIONS(891), [anon_sym_COLON_COLON] = ACTIONS(891), [anon_sym_STAR] = ACTIONS(891), [anon_sym_AMP] = ACTIONS(891), [anon_sym_DOT_DOT] = ACTIONS(891), [anon_sym_DASH] = ACTIONS(891), [anon_sym_PIPE] = ACTIONS(891), [anon_sym_yield] = ACTIONS(893), [anon_sym_move] = ACTIONS(893), [sym_integer_literal] = ACTIONS(891), [aux_sym_string_literal_token1] = ACTIONS(891), [sym_char_literal] = ACTIONS(891), [anon_sym_true] = ACTIONS(893), [anon_sym_false] = ACTIONS(893), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(893), [sym_metavariable] = ACTIONS(891), [sym_raw_string_literal] = ACTIONS(891), [sym_float_literal] = ACTIONS(891), [sym_block_comment] = ACTIONS(3), }, [234] = { [ts_builtin_sym_end] = ACTIONS(895), [sym_identifier] = ACTIONS(897), [anon_sym_SEMI] = ACTIONS(895), [anon_sym_u8] = ACTIONS(897), [anon_sym_i8] = ACTIONS(897), [anon_sym_u16] = ACTIONS(897), [anon_sym_i16] = ACTIONS(897), [anon_sym_u32] = ACTIONS(897), [anon_sym_i32] = ACTIONS(897), [anon_sym_u64] = ACTIONS(897), [anon_sym_i64] = ACTIONS(897), [anon_sym_u128] = ACTIONS(897), [anon_sym_i128] = ACTIONS(897), [anon_sym_u256] = ACTIONS(897), [anon_sym_i256] = ACTIONS(897), [anon_sym_b256] = ACTIONS(897), [anon_sym_isize] = ACTIONS(897), [anon_sym_usize] = ACTIONS(897), [anon_sym_f32] = ACTIONS(897), [anon_sym_f64] = ACTIONS(897), [anon_sym_bool] = ACTIONS(897), [anon_sym_char] = ACTIONS(897), [anon_sym_str] = ACTIONS(897), [anon_sym_LBRACK] = ACTIONS(895), [anon_sym_contract] = ACTIONS(897), [anon_sym_script] = ACTIONS(897), [anon_sym_predicate] = ACTIONS(897), [anon_sym_library] = ACTIONS(897), [anon_sym_SQUOTE] = ACTIONS(897), [anon_sym_abi] = ACTIONS(897), [anon_sym_break] = ACTIONS(897), [anon_sym_configurable] = ACTIONS(897), [anon_sym_const] = ACTIONS(897), [anon_sym_continue] = ACTIONS(897), [anon_sym_default] = ACTIONS(897), [anon_sym_mod] = ACTIONS(897), [anon_sym_enum] = ACTIONS(897), [anon_sym_fn] = ACTIONS(897), [anon_sym_for] = ACTIONS(897), [anon_sym_if] = ACTIONS(897), [anon_sym_impl] = ACTIONS(897), [anon_sym_let] = ACTIONS(897), [anon_sym_match] = ACTIONS(897), [anon_sym_pub] = ACTIONS(897), [anon_sym_return] = ACTIONS(897), [anon_sym_storage] = ACTIONS(897), [anon_sym_struct] = ACTIONS(897), [anon_sym_trait] = ACTIONS(897), [anon_sym_type] = ACTIONS(897), [anon_sym_use] = ACTIONS(897), [anon_sym_while] = ACTIONS(897), [anon_sym_POUND] = ACTIONS(895), [anon_sym_BANG] = ACTIONS(895), [anon_sym_LBRACE] = ACTIONS(895), [anon_sym_RBRACE] = ACTIONS(895), [anon_sym_LPAREN] = ACTIONS(895), [anon_sym_asm] = ACTIONS(897), [anon_sym_LT] = ACTIONS(895), [anon_sym_COLON_COLON] = ACTIONS(895), [anon_sym_STAR] = ACTIONS(895), [anon_sym_AMP] = ACTIONS(895), [anon_sym_DOT_DOT] = ACTIONS(895), [anon_sym_DASH] = ACTIONS(895), [anon_sym_PIPE] = ACTIONS(895), [anon_sym_yield] = ACTIONS(897), [anon_sym_move] = ACTIONS(897), [sym_integer_literal] = ACTIONS(895), [aux_sym_string_literal_token1] = ACTIONS(895), [sym_char_literal] = ACTIONS(895), [anon_sym_true] = ACTIONS(897), [anon_sym_false] = ACTIONS(897), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(897), [sym_metavariable] = ACTIONS(895), [sym_raw_string_literal] = ACTIONS(895), [sym_float_literal] = ACTIONS(895), [sym_block_comment] = ACTIONS(3), }, [235] = { [ts_builtin_sym_end] = ACTIONS(899), [sym_identifier] = ACTIONS(901), [anon_sym_SEMI] = ACTIONS(899), [anon_sym_u8] = ACTIONS(901), [anon_sym_i8] = ACTIONS(901), [anon_sym_u16] = ACTIONS(901), [anon_sym_i16] = ACTIONS(901), [anon_sym_u32] = ACTIONS(901), [anon_sym_i32] = ACTIONS(901), [anon_sym_u64] = ACTIONS(901), [anon_sym_i64] = ACTIONS(901), [anon_sym_u128] = ACTIONS(901), [anon_sym_i128] = ACTIONS(901), [anon_sym_u256] = ACTIONS(901), [anon_sym_i256] = ACTIONS(901), [anon_sym_b256] = ACTIONS(901), [anon_sym_isize] = ACTIONS(901), [anon_sym_usize] = ACTIONS(901), [anon_sym_f32] = ACTIONS(901), [anon_sym_f64] = ACTIONS(901), [anon_sym_bool] = ACTIONS(901), [anon_sym_char] = ACTIONS(901), [anon_sym_str] = ACTIONS(901), [anon_sym_LBRACK] = ACTIONS(899), [anon_sym_contract] = ACTIONS(901), [anon_sym_script] = ACTIONS(901), [anon_sym_predicate] = ACTIONS(901), [anon_sym_library] = ACTIONS(901), [anon_sym_SQUOTE] = ACTIONS(901), [anon_sym_abi] = ACTIONS(901), [anon_sym_break] = ACTIONS(901), [anon_sym_configurable] = ACTIONS(901), [anon_sym_const] = ACTIONS(901), [anon_sym_continue] = ACTIONS(901), [anon_sym_default] = ACTIONS(901), [anon_sym_mod] = ACTIONS(901), [anon_sym_enum] = ACTIONS(901), [anon_sym_fn] = ACTIONS(901), [anon_sym_for] = ACTIONS(901), [anon_sym_if] = ACTIONS(901), [anon_sym_impl] = ACTIONS(901), [anon_sym_let] = ACTIONS(901), [anon_sym_match] = ACTIONS(901), [anon_sym_pub] = ACTIONS(901), [anon_sym_return] = ACTIONS(901), [anon_sym_storage] = ACTIONS(901), [anon_sym_struct] = ACTIONS(901), [anon_sym_trait] = ACTIONS(901), [anon_sym_type] = ACTIONS(901), [anon_sym_use] = ACTIONS(901), [anon_sym_while] = ACTIONS(901), [anon_sym_POUND] = ACTIONS(899), [anon_sym_BANG] = ACTIONS(899), [anon_sym_LBRACE] = ACTIONS(899), [anon_sym_RBRACE] = ACTIONS(899), [anon_sym_LPAREN] = ACTIONS(899), [anon_sym_asm] = ACTIONS(901), [anon_sym_LT] = ACTIONS(899), [anon_sym_COLON_COLON] = ACTIONS(899), [anon_sym_STAR] = ACTIONS(899), [anon_sym_AMP] = ACTIONS(899), [anon_sym_DOT_DOT] = ACTIONS(899), [anon_sym_DASH] = ACTIONS(899), [anon_sym_PIPE] = ACTIONS(899), [anon_sym_yield] = ACTIONS(901), [anon_sym_move] = ACTIONS(901), [sym_integer_literal] = ACTIONS(899), [aux_sym_string_literal_token1] = ACTIONS(899), [sym_char_literal] = ACTIONS(899), [anon_sym_true] = ACTIONS(901), [anon_sym_false] = ACTIONS(901), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(901), [sym_metavariable] = ACTIONS(899), [sym_raw_string_literal] = ACTIONS(899), [sym_float_literal] = ACTIONS(899), [sym_block_comment] = ACTIONS(3), }, [236] = { [ts_builtin_sym_end] = ACTIONS(903), [sym_identifier] = ACTIONS(905), [anon_sym_SEMI] = ACTIONS(903), [anon_sym_u8] = ACTIONS(905), [anon_sym_i8] = ACTIONS(905), [anon_sym_u16] = ACTIONS(905), [anon_sym_i16] = ACTIONS(905), [anon_sym_u32] = ACTIONS(905), [anon_sym_i32] = ACTIONS(905), [anon_sym_u64] = ACTIONS(905), [anon_sym_i64] = ACTIONS(905), [anon_sym_u128] = ACTIONS(905), [anon_sym_i128] = ACTIONS(905), [anon_sym_u256] = ACTIONS(905), [anon_sym_i256] = ACTIONS(905), [anon_sym_b256] = ACTIONS(905), [anon_sym_isize] = ACTIONS(905), [anon_sym_usize] = ACTIONS(905), [anon_sym_f32] = ACTIONS(905), [anon_sym_f64] = ACTIONS(905), [anon_sym_bool] = ACTIONS(905), [anon_sym_char] = ACTIONS(905), [anon_sym_str] = ACTIONS(905), [anon_sym_LBRACK] = ACTIONS(903), [anon_sym_contract] = ACTIONS(905), [anon_sym_script] = ACTIONS(905), [anon_sym_predicate] = ACTIONS(905), [anon_sym_library] = ACTIONS(905), [anon_sym_SQUOTE] = ACTIONS(905), [anon_sym_abi] = ACTIONS(905), [anon_sym_break] = ACTIONS(905), [anon_sym_configurable] = ACTIONS(905), [anon_sym_const] = ACTIONS(905), [anon_sym_continue] = ACTIONS(905), [anon_sym_default] = ACTIONS(905), [anon_sym_mod] = ACTIONS(905), [anon_sym_enum] = ACTIONS(905), [anon_sym_fn] = ACTIONS(905), [anon_sym_for] = ACTIONS(905), [anon_sym_if] = ACTIONS(905), [anon_sym_impl] = ACTIONS(905), [anon_sym_let] = ACTIONS(905), [anon_sym_match] = ACTIONS(905), [anon_sym_pub] = ACTIONS(905), [anon_sym_return] = ACTIONS(905), [anon_sym_storage] = ACTIONS(905), [anon_sym_struct] = ACTIONS(905), [anon_sym_trait] = ACTIONS(905), [anon_sym_type] = ACTIONS(905), [anon_sym_use] = ACTIONS(905), [anon_sym_while] = ACTIONS(905), [anon_sym_POUND] = ACTIONS(903), [anon_sym_BANG] = ACTIONS(903), [anon_sym_LBRACE] = ACTIONS(903), [anon_sym_RBRACE] = ACTIONS(903), [anon_sym_LPAREN] = ACTIONS(903), [anon_sym_asm] = ACTIONS(905), [anon_sym_LT] = ACTIONS(903), [anon_sym_COLON_COLON] = ACTIONS(903), [anon_sym_STAR] = ACTIONS(903), [anon_sym_AMP] = ACTIONS(903), [anon_sym_DOT_DOT] = ACTIONS(903), [anon_sym_DASH] = ACTIONS(903), [anon_sym_PIPE] = ACTIONS(903), [anon_sym_yield] = ACTIONS(905), [anon_sym_move] = ACTIONS(905), [sym_integer_literal] = ACTIONS(903), [aux_sym_string_literal_token1] = ACTIONS(903), [sym_char_literal] = ACTIONS(903), [anon_sym_true] = ACTIONS(905), [anon_sym_false] = ACTIONS(905), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(905), [sym_metavariable] = ACTIONS(903), [sym_raw_string_literal] = ACTIONS(903), [sym_float_literal] = ACTIONS(903), [sym_block_comment] = ACTIONS(3), }, [237] = { [ts_builtin_sym_end] = ACTIONS(907), [sym_identifier] = ACTIONS(909), [anon_sym_SEMI] = ACTIONS(907), [anon_sym_u8] = ACTIONS(909), [anon_sym_i8] = ACTIONS(909), [anon_sym_u16] = ACTIONS(909), [anon_sym_i16] = ACTIONS(909), [anon_sym_u32] = ACTIONS(909), [anon_sym_i32] = ACTIONS(909), [anon_sym_u64] = ACTIONS(909), [anon_sym_i64] = ACTIONS(909), [anon_sym_u128] = ACTIONS(909), [anon_sym_i128] = ACTIONS(909), [anon_sym_u256] = ACTIONS(909), [anon_sym_i256] = ACTIONS(909), [anon_sym_b256] = ACTIONS(909), [anon_sym_isize] = ACTIONS(909), [anon_sym_usize] = ACTIONS(909), [anon_sym_f32] = ACTIONS(909), [anon_sym_f64] = ACTIONS(909), [anon_sym_bool] = ACTIONS(909), [anon_sym_char] = ACTIONS(909), [anon_sym_str] = ACTIONS(909), [anon_sym_LBRACK] = ACTIONS(907), [anon_sym_contract] = ACTIONS(909), [anon_sym_script] = ACTIONS(909), [anon_sym_predicate] = ACTIONS(909), [anon_sym_library] = ACTIONS(909), [anon_sym_SQUOTE] = ACTIONS(909), [anon_sym_abi] = ACTIONS(909), [anon_sym_break] = ACTIONS(909), [anon_sym_configurable] = ACTIONS(909), [anon_sym_const] = ACTIONS(909), [anon_sym_continue] = ACTIONS(909), [anon_sym_default] = ACTIONS(909), [anon_sym_mod] = ACTIONS(909), [anon_sym_enum] = ACTIONS(909), [anon_sym_fn] = ACTIONS(909), [anon_sym_for] = ACTIONS(909), [anon_sym_if] = ACTIONS(909), [anon_sym_impl] = ACTIONS(909), [anon_sym_let] = ACTIONS(909), [anon_sym_match] = ACTIONS(909), [anon_sym_pub] = ACTIONS(909), [anon_sym_return] = ACTIONS(909), [anon_sym_storage] = ACTIONS(909), [anon_sym_struct] = ACTIONS(909), [anon_sym_trait] = ACTIONS(909), [anon_sym_type] = ACTIONS(909), [anon_sym_use] = ACTIONS(909), [anon_sym_while] = ACTIONS(909), [anon_sym_POUND] = ACTIONS(907), [anon_sym_BANG] = ACTIONS(907), [anon_sym_LBRACE] = ACTIONS(907), [anon_sym_RBRACE] = ACTIONS(907), [anon_sym_LPAREN] = ACTIONS(907), [anon_sym_asm] = ACTIONS(909), [anon_sym_LT] = ACTIONS(907), [anon_sym_COLON_COLON] = ACTIONS(907), [anon_sym_STAR] = ACTIONS(907), [anon_sym_AMP] = ACTIONS(907), [anon_sym_DOT_DOT] = ACTIONS(907), [anon_sym_DASH] = ACTIONS(907), [anon_sym_PIPE] = ACTIONS(907), [anon_sym_yield] = ACTIONS(909), [anon_sym_move] = ACTIONS(909), [sym_integer_literal] = ACTIONS(907), [aux_sym_string_literal_token1] = ACTIONS(907), [sym_char_literal] = ACTIONS(907), [anon_sym_true] = ACTIONS(909), [anon_sym_false] = ACTIONS(909), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(909), [sym_metavariable] = ACTIONS(907), [sym_raw_string_literal] = ACTIONS(907), [sym_float_literal] = ACTIONS(907), [sym_block_comment] = ACTIONS(3), }, [238] = { [ts_builtin_sym_end] = ACTIONS(911), [sym_identifier] = ACTIONS(913), [anon_sym_SEMI] = ACTIONS(911), [anon_sym_u8] = ACTIONS(913), [anon_sym_i8] = ACTIONS(913), [anon_sym_u16] = ACTIONS(913), [anon_sym_i16] = ACTIONS(913), [anon_sym_u32] = ACTIONS(913), [anon_sym_i32] = ACTIONS(913), [anon_sym_u64] = ACTIONS(913), [anon_sym_i64] = ACTIONS(913), [anon_sym_u128] = ACTIONS(913), [anon_sym_i128] = ACTIONS(913), [anon_sym_u256] = ACTIONS(913), [anon_sym_i256] = ACTIONS(913), [anon_sym_b256] = ACTIONS(913), [anon_sym_isize] = ACTIONS(913), [anon_sym_usize] = ACTIONS(913), [anon_sym_f32] = ACTIONS(913), [anon_sym_f64] = ACTIONS(913), [anon_sym_bool] = ACTIONS(913), [anon_sym_char] = ACTIONS(913), [anon_sym_str] = ACTIONS(913), [anon_sym_LBRACK] = ACTIONS(911), [anon_sym_contract] = ACTIONS(913), [anon_sym_script] = ACTIONS(913), [anon_sym_predicate] = ACTIONS(913), [anon_sym_library] = ACTIONS(913), [anon_sym_SQUOTE] = ACTIONS(913), [anon_sym_abi] = ACTIONS(913), [anon_sym_break] = ACTIONS(913), [anon_sym_configurable] = ACTIONS(913), [anon_sym_const] = ACTIONS(913), [anon_sym_continue] = ACTIONS(913), [anon_sym_default] = ACTIONS(913), [anon_sym_mod] = ACTIONS(913), [anon_sym_enum] = ACTIONS(913), [anon_sym_fn] = ACTIONS(913), [anon_sym_for] = ACTIONS(913), [anon_sym_if] = ACTIONS(913), [anon_sym_impl] = ACTIONS(913), [anon_sym_let] = ACTIONS(913), [anon_sym_match] = ACTIONS(913), [anon_sym_pub] = ACTIONS(913), [anon_sym_return] = ACTIONS(913), [anon_sym_storage] = ACTIONS(913), [anon_sym_struct] = ACTIONS(913), [anon_sym_trait] = ACTIONS(913), [anon_sym_type] = ACTIONS(913), [anon_sym_use] = ACTIONS(913), [anon_sym_while] = ACTIONS(913), [anon_sym_POUND] = ACTIONS(911), [anon_sym_BANG] = ACTIONS(911), [anon_sym_LBRACE] = ACTIONS(911), [anon_sym_RBRACE] = ACTIONS(911), [anon_sym_LPAREN] = ACTIONS(911), [anon_sym_asm] = ACTIONS(913), [anon_sym_LT] = ACTIONS(911), [anon_sym_COLON_COLON] = ACTIONS(911), [anon_sym_STAR] = ACTIONS(911), [anon_sym_AMP] = ACTIONS(911), [anon_sym_DOT_DOT] = ACTIONS(911), [anon_sym_DASH] = ACTIONS(911), [anon_sym_PIPE] = ACTIONS(911), [anon_sym_yield] = ACTIONS(913), [anon_sym_move] = ACTIONS(913), [sym_integer_literal] = ACTIONS(911), [aux_sym_string_literal_token1] = ACTIONS(911), [sym_char_literal] = ACTIONS(911), [anon_sym_true] = ACTIONS(913), [anon_sym_false] = ACTIONS(913), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(913), [sym_metavariable] = ACTIONS(911), [sym_raw_string_literal] = ACTIONS(911), [sym_float_literal] = ACTIONS(911), [sym_block_comment] = ACTIONS(3), }, [239] = { [ts_builtin_sym_end] = ACTIONS(915), [sym_identifier] = ACTIONS(917), [anon_sym_SEMI] = ACTIONS(915), [anon_sym_u8] = ACTIONS(917), [anon_sym_i8] = ACTIONS(917), [anon_sym_u16] = ACTIONS(917), [anon_sym_i16] = ACTIONS(917), [anon_sym_u32] = ACTIONS(917), [anon_sym_i32] = ACTIONS(917), [anon_sym_u64] = ACTIONS(917), [anon_sym_i64] = ACTIONS(917), [anon_sym_u128] = ACTIONS(917), [anon_sym_i128] = ACTIONS(917), [anon_sym_u256] = ACTIONS(917), [anon_sym_i256] = ACTIONS(917), [anon_sym_b256] = ACTIONS(917), [anon_sym_isize] = ACTIONS(917), [anon_sym_usize] = ACTIONS(917), [anon_sym_f32] = ACTIONS(917), [anon_sym_f64] = ACTIONS(917), [anon_sym_bool] = ACTIONS(917), [anon_sym_char] = ACTIONS(917), [anon_sym_str] = ACTIONS(917), [anon_sym_LBRACK] = ACTIONS(915), [anon_sym_contract] = ACTIONS(917), [anon_sym_script] = ACTIONS(917), [anon_sym_predicate] = ACTIONS(917), [anon_sym_library] = ACTIONS(917), [anon_sym_SQUOTE] = ACTIONS(917), [anon_sym_abi] = ACTIONS(917), [anon_sym_break] = ACTIONS(917), [anon_sym_configurable] = ACTIONS(917), [anon_sym_const] = ACTIONS(917), [anon_sym_continue] = ACTIONS(917), [anon_sym_default] = ACTIONS(917), [anon_sym_mod] = ACTIONS(917), [anon_sym_enum] = ACTIONS(917), [anon_sym_fn] = ACTIONS(917), [anon_sym_for] = ACTIONS(917), [anon_sym_if] = ACTIONS(917), [anon_sym_impl] = ACTIONS(917), [anon_sym_let] = ACTIONS(917), [anon_sym_match] = ACTIONS(917), [anon_sym_pub] = ACTIONS(917), [anon_sym_return] = ACTIONS(917), [anon_sym_storage] = ACTIONS(917), [anon_sym_struct] = ACTIONS(917), [anon_sym_trait] = ACTIONS(917), [anon_sym_type] = ACTIONS(917), [anon_sym_use] = ACTIONS(917), [anon_sym_while] = ACTIONS(917), [anon_sym_POUND] = ACTIONS(915), [anon_sym_BANG] = ACTIONS(915), [anon_sym_LBRACE] = ACTIONS(915), [anon_sym_RBRACE] = ACTIONS(915), [anon_sym_LPAREN] = ACTIONS(915), [anon_sym_asm] = ACTIONS(917), [anon_sym_LT] = ACTIONS(915), [anon_sym_COLON_COLON] = ACTIONS(915), [anon_sym_STAR] = ACTIONS(915), [anon_sym_AMP] = ACTIONS(915), [anon_sym_DOT_DOT] = ACTIONS(915), [anon_sym_DASH] = ACTIONS(915), [anon_sym_PIPE] = ACTIONS(915), [anon_sym_yield] = ACTIONS(917), [anon_sym_move] = ACTIONS(917), [sym_integer_literal] = ACTIONS(915), [aux_sym_string_literal_token1] = ACTIONS(915), [sym_char_literal] = ACTIONS(915), [anon_sym_true] = ACTIONS(917), [anon_sym_false] = ACTIONS(917), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(917), [sym_metavariable] = ACTIONS(915), [sym_raw_string_literal] = ACTIONS(915), [sym_float_literal] = ACTIONS(915), [sym_block_comment] = ACTIONS(3), }, [240] = { [ts_builtin_sym_end] = ACTIONS(919), [sym_identifier] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(919), [anon_sym_u8] = ACTIONS(921), [anon_sym_i8] = ACTIONS(921), [anon_sym_u16] = ACTIONS(921), [anon_sym_i16] = ACTIONS(921), [anon_sym_u32] = ACTIONS(921), [anon_sym_i32] = ACTIONS(921), [anon_sym_u64] = ACTIONS(921), [anon_sym_i64] = ACTIONS(921), [anon_sym_u128] = ACTIONS(921), [anon_sym_i128] = ACTIONS(921), [anon_sym_u256] = ACTIONS(921), [anon_sym_i256] = ACTIONS(921), [anon_sym_b256] = ACTIONS(921), [anon_sym_isize] = ACTIONS(921), [anon_sym_usize] = ACTIONS(921), [anon_sym_f32] = ACTIONS(921), [anon_sym_f64] = ACTIONS(921), [anon_sym_bool] = ACTIONS(921), [anon_sym_char] = ACTIONS(921), [anon_sym_str] = ACTIONS(921), [anon_sym_LBRACK] = ACTIONS(919), [anon_sym_contract] = ACTIONS(921), [anon_sym_script] = ACTIONS(921), [anon_sym_predicate] = ACTIONS(921), [anon_sym_library] = ACTIONS(921), [anon_sym_SQUOTE] = ACTIONS(921), [anon_sym_abi] = ACTIONS(921), [anon_sym_break] = ACTIONS(921), [anon_sym_configurable] = ACTIONS(921), [anon_sym_const] = ACTIONS(921), [anon_sym_continue] = ACTIONS(921), [anon_sym_default] = ACTIONS(921), [anon_sym_mod] = ACTIONS(921), [anon_sym_enum] = ACTIONS(921), [anon_sym_fn] = ACTIONS(921), [anon_sym_for] = ACTIONS(921), [anon_sym_if] = ACTIONS(921), [anon_sym_impl] = ACTIONS(921), [anon_sym_let] = ACTIONS(921), [anon_sym_match] = ACTIONS(921), [anon_sym_pub] = ACTIONS(921), [anon_sym_return] = ACTIONS(921), [anon_sym_storage] = ACTIONS(921), [anon_sym_struct] = ACTIONS(921), [anon_sym_trait] = ACTIONS(921), [anon_sym_type] = ACTIONS(921), [anon_sym_use] = ACTIONS(921), [anon_sym_while] = ACTIONS(921), [anon_sym_POUND] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(919), [anon_sym_LBRACE] = ACTIONS(919), [anon_sym_RBRACE] = ACTIONS(919), [anon_sym_LPAREN] = ACTIONS(919), [anon_sym_asm] = ACTIONS(921), [anon_sym_LT] = ACTIONS(919), [anon_sym_COLON_COLON] = ACTIONS(919), [anon_sym_STAR] = ACTIONS(919), [anon_sym_AMP] = ACTIONS(919), [anon_sym_DOT_DOT] = ACTIONS(919), [anon_sym_DASH] = ACTIONS(919), [anon_sym_PIPE] = ACTIONS(919), [anon_sym_yield] = ACTIONS(921), [anon_sym_move] = ACTIONS(921), [sym_integer_literal] = ACTIONS(919), [aux_sym_string_literal_token1] = ACTIONS(919), [sym_char_literal] = ACTIONS(919), [anon_sym_true] = ACTIONS(921), [anon_sym_false] = ACTIONS(921), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(921), [sym_metavariable] = ACTIONS(919), [sym_raw_string_literal] = ACTIONS(919), [sym_float_literal] = ACTIONS(919), [sym_block_comment] = ACTIONS(3), }, [241] = { [ts_builtin_sym_end] = ACTIONS(923), [sym_identifier] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(923), [anon_sym_u8] = ACTIONS(925), [anon_sym_i8] = ACTIONS(925), [anon_sym_u16] = ACTIONS(925), [anon_sym_i16] = ACTIONS(925), [anon_sym_u32] = ACTIONS(925), [anon_sym_i32] = ACTIONS(925), [anon_sym_u64] = ACTIONS(925), [anon_sym_i64] = ACTIONS(925), [anon_sym_u128] = ACTIONS(925), [anon_sym_i128] = ACTIONS(925), [anon_sym_u256] = ACTIONS(925), [anon_sym_i256] = ACTIONS(925), [anon_sym_b256] = ACTIONS(925), [anon_sym_isize] = ACTIONS(925), [anon_sym_usize] = ACTIONS(925), [anon_sym_f32] = ACTIONS(925), [anon_sym_f64] = ACTIONS(925), [anon_sym_bool] = ACTIONS(925), [anon_sym_char] = ACTIONS(925), [anon_sym_str] = ACTIONS(925), [anon_sym_LBRACK] = ACTIONS(923), [anon_sym_contract] = ACTIONS(925), [anon_sym_script] = ACTIONS(925), [anon_sym_predicate] = ACTIONS(925), [anon_sym_library] = ACTIONS(925), [anon_sym_SQUOTE] = ACTIONS(925), [anon_sym_abi] = ACTIONS(925), [anon_sym_break] = ACTIONS(925), [anon_sym_configurable] = ACTIONS(925), [anon_sym_const] = ACTIONS(925), [anon_sym_continue] = ACTIONS(925), [anon_sym_default] = ACTIONS(925), [anon_sym_mod] = ACTIONS(925), [anon_sym_enum] = ACTIONS(925), [anon_sym_fn] = ACTIONS(925), [anon_sym_for] = ACTIONS(925), [anon_sym_if] = ACTIONS(925), [anon_sym_impl] = ACTIONS(925), [anon_sym_let] = ACTIONS(925), [anon_sym_match] = ACTIONS(925), [anon_sym_pub] = ACTIONS(925), [anon_sym_return] = ACTIONS(925), [anon_sym_storage] = ACTIONS(925), [anon_sym_struct] = ACTIONS(925), [anon_sym_trait] = ACTIONS(925), [anon_sym_type] = ACTIONS(925), [anon_sym_use] = ACTIONS(925), [anon_sym_while] = ACTIONS(925), [anon_sym_POUND] = ACTIONS(923), [anon_sym_BANG] = ACTIONS(923), [anon_sym_LBRACE] = ACTIONS(923), [anon_sym_RBRACE] = ACTIONS(923), [anon_sym_LPAREN] = ACTIONS(923), [anon_sym_asm] = ACTIONS(925), [anon_sym_LT] = ACTIONS(923), [anon_sym_COLON_COLON] = ACTIONS(923), [anon_sym_STAR] = ACTIONS(923), [anon_sym_AMP] = ACTIONS(923), [anon_sym_DOT_DOT] = ACTIONS(923), [anon_sym_DASH] = ACTIONS(923), [anon_sym_PIPE] = ACTIONS(923), [anon_sym_yield] = ACTIONS(925), [anon_sym_move] = ACTIONS(925), [sym_integer_literal] = ACTIONS(923), [aux_sym_string_literal_token1] = ACTIONS(923), [sym_char_literal] = ACTIONS(923), [anon_sym_true] = ACTIONS(925), [anon_sym_false] = ACTIONS(925), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(925), [sym_metavariable] = ACTIONS(923), [sym_raw_string_literal] = ACTIONS(923), [sym_float_literal] = ACTIONS(923), [sym_block_comment] = ACTIONS(3), }, [242] = { [ts_builtin_sym_end] = ACTIONS(927), [sym_identifier] = ACTIONS(929), [anon_sym_SEMI] = ACTIONS(927), [anon_sym_u8] = ACTIONS(929), [anon_sym_i8] = ACTIONS(929), [anon_sym_u16] = ACTIONS(929), [anon_sym_i16] = ACTIONS(929), [anon_sym_u32] = ACTIONS(929), [anon_sym_i32] = ACTIONS(929), [anon_sym_u64] = ACTIONS(929), [anon_sym_i64] = ACTIONS(929), [anon_sym_u128] = ACTIONS(929), [anon_sym_i128] = ACTIONS(929), [anon_sym_u256] = ACTIONS(929), [anon_sym_i256] = ACTIONS(929), [anon_sym_b256] = ACTIONS(929), [anon_sym_isize] = ACTIONS(929), [anon_sym_usize] = ACTIONS(929), [anon_sym_f32] = ACTIONS(929), [anon_sym_f64] = ACTIONS(929), [anon_sym_bool] = ACTIONS(929), [anon_sym_char] = ACTIONS(929), [anon_sym_str] = ACTIONS(929), [anon_sym_LBRACK] = ACTIONS(927), [anon_sym_contract] = ACTIONS(929), [anon_sym_script] = ACTIONS(929), [anon_sym_predicate] = ACTIONS(929), [anon_sym_library] = ACTIONS(929), [anon_sym_SQUOTE] = ACTIONS(929), [anon_sym_abi] = ACTIONS(929), [anon_sym_break] = ACTIONS(929), [anon_sym_configurable] = ACTIONS(929), [anon_sym_const] = ACTIONS(929), [anon_sym_continue] = ACTIONS(929), [anon_sym_default] = ACTIONS(929), [anon_sym_mod] = ACTIONS(929), [anon_sym_enum] = ACTIONS(929), [anon_sym_fn] = ACTIONS(929), [anon_sym_for] = ACTIONS(929), [anon_sym_if] = ACTIONS(929), [anon_sym_impl] = ACTIONS(929), [anon_sym_let] = ACTIONS(929), [anon_sym_match] = ACTIONS(929), [anon_sym_pub] = ACTIONS(929), [anon_sym_return] = ACTIONS(929), [anon_sym_storage] = ACTIONS(929), [anon_sym_struct] = ACTIONS(929), [anon_sym_trait] = ACTIONS(929), [anon_sym_type] = ACTIONS(929), [anon_sym_use] = ACTIONS(929), [anon_sym_while] = ACTIONS(929), [anon_sym_POUND] = ACTIONS(927), [anon_sym_BANG] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(927), [anon_sym_RBRACE] = ACTIONS(927), [anon_sym_LPAREN] = ACTIONS(927), [anon_sym_asm] = ACTIONS(929), [anon_sym_LT] = ACTIONS(927), [anon_sym_COLON_COLON] = ACTIONS(927), [anon_sym_STAR] = ACTIONS(927), [anon_sym_AMP] = ACTIONS(927), [anon_sym_DOT_DOT] = ACTIONS(927), [anon_sym_DASH] = ACTIONS(927), [anon_sym_PIPE] = ACTIONS(927), [anon_sym_yield] = ACTIONS(929), [anon_sym_move] = ACTIONS(929), [sym_integer_literal] = ACTIONS(927), [aux_sym_string_literal_token1] = ACTIONS(927), [sym_char_literal] = ACTIONS(927), [anon_sym_true] = ACTIONS(929), [anon_sym_false] = ACTIONS(929), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(929), [sym_metavariable] = ACTIONS(927), [sym_raw_string_literal] = ACTIONS(927), [sym_float_literal] = ACTIONS(927), [sym_block_comment] = ACTIONS(3), }, [243] = { [ts_builtin_sym_end] = ACTIONS(931), [sym_identifier] = ACTIONS(933), [anon_sym_SEMI] = ACTIONS(931), [anon_sym_u8] = ACTIONS(933), [anon_sym_i8] = ACTIONS(933), [anon_sym_u16] = ACTIONS(933), [anon_sym_i16] = ACTIONS(933), [anon_sym_u32] = ACTIONS(933), [anon_sym_i32] = ACTIONS(933), [anon_sym_u64] = ACTIONS(933), [anon_sym_i64] = ACTIONS(933), [anon_sym_u128] = ACTIONS(933), [anon_sym_i128] = ACTIONS(933), [anon_sym_u256] = ACTIONS(933), [anon_sym_i256] = ACTIONS(933), [anon_sym_b256] = ACTIONS(933), [anon_sym_isize] = ACTIONS(933), [anon_sym_usize] = ACTIONS(933), [anon_sym_f32] = ACTIONS(933), [anon_sym_f64] = ACTIONS(933), [anon_sym_bool] = ACTIONS(933), [anon_sym_char] = ACTIONS(933), [anon_sym_str] = ACTIONS(933), [anon_sym_LBRACK] = ACTIONS(931), [anon_sym_contract] = ACTIONS(933), [anon_sym_script] = ACTIONS(933), [anon_sym_predicate] = ACTIONS(933), [anon_sym_library] = ACTIONS(933), [anon_sym_SQUOTE] = ACTIONS(933), [anon_sym_abi] = ACTIONS(933), [anon_sym_break] = ACTIONS(933), [anon_sym_configurable] = ACTIONS(933), [anon_sym_const] = ACTIONS(933), [anon_sym_continue] = ACTIONS(933), [anon_sym_default] = ACTIONS(933), [anon_sym_mod] = ACTIONS(933), [anon_sym_enum] = ACTIONS(933), [anon_sym_fn] = ACTIONS(933), [anon_sym_for] = ACTIONS(933), [anon_sym_if] = ACTIONS(933), [anon_sym_impl] = ACTIONS(933), [anon_sym_let] = ACTIONS(933), [anon_sym_match] = ACTIONS(933), [anon_sym_pub] = ACTIONS(933), [anon_sym_return] = ACTIONS(933), [anon_sym_storage] = ACTIONS(933), [anon_sym_struct] = ACTIONS(933), [anon_sym_trait] = ACTIONS(933), [anon_sym_type] = ACTIONS(933), [anon_sym_use] = ACTIONS(933), [anon_sym_while] = ACTIONS(933), [anon_sym_POUND] = ACTIONS(931), [anon_sym_BANG] = ACTIONS(931), [anon_sym_LBRACE] = ACTIONS(931), [anon_sym_RBRACE] = ACTIONS(931), [anon_sym_LPAREN] = ACTIONS(931), [anon_sym_asm] = ACTIONS(933), [anon_sym_LT] = ACTIONS(931), [anon_sym_COLON_COLON] = ACTIONS(931), [anon_sym_STAR] = ACTIONS(931), [anon_sym_AMP] = ACTIONS(931), [anon_sym_DOT_DOT] = ACTIONS(931), [anon_sym_DASH] = ACTIONS(931), [anon_sym_PIPE] = ACTIONS(931), [anon_sym_yield] = ACTIONS(933), [anon_sym_move] = ACTIONS(933), [sym_integer_literal] = ACTIONS(931), [aux_sym_string_literal_token1] = ACTIONS(931), [sym_char_literal] = ACTIONS(931), [anon_sym_true] = ACTIONS(933), [anon_sym_false] = ACTIONS(933), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(933), [sym_metavariable] = ACTIONS(931), [sym_raw_string_literal] = ACTIONS(931), [sym_float_literal] = ACTIONS(931), [sym_block_comment] = ACTIONS(3), }, [244] = { [ts_builtin_sym_end] = ACTIONS(935), [sym_identifier] = ACTIONS(937), [anon_sym_SEMI] = ACTIONS(935), [anon_sym_u8] = ACTIONS(937), [anon_sym_i8] = ACTIONS(937), [anon_sym_u16] = ACTIONS(937), [anon_sym_i16] = ACTIONS(937), [anon_sym_u32] = ACTIONS(937), [anon_sym_i32] = ACTIONS(937), [anon_sym_u64] = ACTIONS(937), [anon_sym_i64] = ACTIONS(937), [anon_sym_u128] = ACTIONS(937), [anon_sym_i128] = ACTIONS(937), [anon_sym_u256] = ACTIONS(937), [anon_sym_i256] = ACTIONS(937), [anon_sym_b256] = ACTIONS(937), [anon_sym_isize] = ACTIONS(937), [anon_sym_usize] = ACTIONS(937), [anon_sym_f32] = ACTIONS(937), [anon_sym_f64] = ACTIONS(937), [anon_sym_bool] = ACTIONS(937), [anon_sym_char] = ACTIONS(937), [anon_sym_str] = ACTIONS(937), [anon_sym_LBRACK] = ACTIONS(935), [anon_sym_contract] = ACTIONS(937), [anon_sym_script] = ACTIONS(937), [anon_sym_predicate] = ACTIONS(937), [anon_sym_library] = ACTIONS(937), [anon_sym_SQUOTE] = ACTIONS(937), [anon_sym_abi] = ACTIONS(937), [anon_sym_break] = ACTIONS(937), [anon_sym_configurable] = ACTIONS(937), [anon_sym_const] = ACTIONS(937), [anon_sym_continue] = ACTIONS(937), [anon_sym_default] = ACTIONS(937), [anon_sym_mod] = ACTIONS(937), [anon_sym_enum] = ACTIONS(937), [anon_sym_fn] = ACTIONS(937), [anon_sym_for] = ACTIONS(937), [anon_sym_if] = ACTIONS(937), [anon_sym_impl] = ACTIONS(937), [anon_sym_let] = ACTIONS(937), [anon_sym_match] = ACTIONS(937), [anon_sym_pub] = ACTIONS(937), [anon_sym_return] = ACTIONS(937), [anon_sym_storage] = ACTIONS(937), [anon_sym_struct] = ACTIONS(937), [anon_sym_trait] = ACTIONS(937), [anon_sym_type] = ACTIONS(937), [anon_sym_use] = ACTIONS(937), [anon_sym_while] = ACTIONS(937), [anon_sym_POUND] = ACTIONS(935), [anon_sym_BANG] = ACTIONS(935), [anon_sym_LBRACE] = ACTIONS(935), [anon_sym_RBRACE] = ACTIONS(935), [anon_sym_LPAREN] = ACTIONS(935), [anon_sym_asm] = ACTIONS(937), [anon_sym_LT] = ACTIONS(935), [anon_sym_COLON_COLON] = ACTIONS(935), [anon_sym_STAR] = ACTIONS(935), [anon_sym_AMP] = ACTIONS(935), [anon_sym_DOT_DOT] = ACTIONS(935), [anon_sym_DASH] = ACTIONS(935), [anon_sym_PIPE] = ACTIONS(935), [anon_sym_yield] = ACTIONS(937), [anon_sym_move] = ACTIONS(937), [sym_integer_literal] = ACTIONS(935), [aux_sym_string_literal_token1] = ACTIONS(935), [sym_char_literal] = ACTIONS(935), [anon_sym_true] = ACTIONS(937), [anon_sym_false] = ACTIONS(937), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(937), [sym_metavariable] = ACTIONS(935), [sym_raw_string_literal] = ACTIONS(935), [sym_float_literal] = ACTIONS(935), [sym_block_comment] = ACTIONS(3), }, [245] = { [ts_builtin_sym_end] = ACTIONS(939), [sym_identifier] = ACTIONS(941), [anon_sym_SEMI] = ACTIONS(939), [anon_sym_u8] = ACTIONS(941), [anon_sym_i8] = ACTIONS(941), [anon_sym_u16] = ACTIONS(941), [anon_sym_i16] = ACTIONS(941), [anon_sym_u32] = ACTIONS(941), [anon_sym_i32] = ACTIONS(941), [anon_sym_u64] = ACTIONS(941), [anon_sym_i64] = ACTIONS(941), [anon_sym_u128] = ACTIONS(941), [anon_sym_i128] = ACTIONS(941), [anon_sym_u256] = ACTIONS(941), [anon_sym_i256] = ACTIONS(941), [anon_sym_b256] = ACTIONS(941), [anon_sym_isize] = ACTIONS(941), [anon_sym_usize] = ACTIONS(941), [anon_sym_f32] = ACTIONS(941), [anon_sym_f64] = ACTIONS(941), [anon_sym_bool] = ACTIONS(941), [anon_sym_char] = ACTIONS(941), [anon_sym_str] = ACTIONS(941), [anon_sym_LBRACK] = ACTIONS(939), [anon_sym_contract] = ACTIONS(941), [anon_sym_script] = ACTIONS(941), [anon_sym_predicate] = ACTIONS(941), [anon_sym_library] = ACTIONS(941), [anon_sym_SQUOTE] = ACTIONS(941), [anon_sym_abi] = ACTIONS(941), [anon_sym_break] = ACTIONS(941), [anon_sym_configurable] = ACTIONS(941), [anon_sym_const] = ACTIONS(941), [anon_sym_continue] = ACTIONS(941), [anon_sym_default] = ACTIONS(941), [anon_sym_mod] = ACTIONS(941), [anon_sym_enum] = ACTIONS(941), [anon_sym_fn] = ACTIONS(941), [anon_sym_for] = ACTIONS(941), [anon_sym_if] = ACTIONS(941), [anon_sym_impl] = ACTIONS(941), [anon_sym_let] = ACTIONS(941), [anon_sym_match] = ACTIONS(941), [anon_sym_pub] = ACTIONS(941), [anon_sym_return] = ACTIONS(941), [anon_sym_storage] = ACTIONS(941), [anon_sym_struct] = ACTIONS(941), [anon_sym_trait] = ACTIONS(941), [anon_sym_type] = ACTIONS(941), [anon_sym_use] = ACTIONS(941), [anon_sym_while] = ACTIONS(941), [anon_sym_POUND] = ACTIONS(939), [anon_sym_BANG] = ACTIONS(939), [anon_sym_LBRACE] = ACTIONS(939), [anon_sym_RBRACE] = ACTIONS(939), [anon_sym_LPAREN] = ACTIONS(939), [anon_sym_asm] = ACTIONS(941), [anon_sym_LT] = ACTIONS(939), [anon_sym_COLON_COLON] = ACTIONS(939), [anon_sym_STAR] = ACTIONS(939), [anon_sym_AMP] = ACTIONS(939), [anon_sym_DOT_DOT] = ACTIONS(939), [anon_sym_DASH] = ACTIONS(939), [anon_sym_PIPE] = ACTIONS(939), [anon_sym_yield] = ACTIONS(941), [anon_sym_move] = ACTIONS(941), [sym_integer_literal] = ACTIONS(939), [aux_sym_string_literal_token1] = ACTIONS(939), [sym_char_literal] = ACTIONS(939), [anon_sym_true] = ACTIONS(941), [anon_sym_false] = ACTIONS(941), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(941), [sym_metavariable] = ACTIONS(939), [sym_raw_string_literal] = ACTIONS(939), [sym_float_literal] = ACTIONS(939), [sym_block_comment] = ACTIONS(3), }, [246] = { [ts_builtin_sym_end] = ACTIONS(943), [sym_identifier] = ACTIONS(945), [anon_sym_SEMI] = ACTIONS(943), [anon_sym_u8] = ACTIONS(945), [anon_sym_i8] = ACTIONS(945), [anon_sym_u16] = ACTIONS(945), [anon_sym_i16] = ACTIONS(945), [anon_sym_u32] = ACTIONS(945), [anon_sym_i32] = ACTIONS(945), [anon_sym_u64] = ACTIONS(945), [anon_sym_i64] = ACTIONS(945), [anon_sym_u128] = ACTIONS(945), [anon_sym_i128] = ACTIONS(945), [anon_sym_u256] = ACTIONS(945), [anon_sym_i256] = ACTIONS(945), [anon_sym_b256] = ACTIONS(945), [anon_sym_isize] = ACTIONS(945), [anon_sym_usize] = ACTIONS(945), [anon_sym_f32] = ACTIONS(945), [anon_sym_f64] = ACTIONS(945), [anon_sym_bool] = ACTIONS(945), [anon_sym_char] = ACTIONS(945), [anon_sym_str] = ACTIONS(945), [anon_sym_LBRACK] = ACTIONS(943), [anon_sym_contract] = ACTIONS(945), [anon_sym_script] = ACTIONS(945), [anon_sym_predicate] = ACTIONS(945), [anon_sym_library] = ACTIONS(945), [anon_sym_SQUOTE] = ACTIONS(945), [anon_sym_abi] = ACTIONS(945), [anon_sym_break] = ACTIONS(945), [anon_sym_configurable] = ACTIONS(945), [anon_sym_const] = ACTIONS(945), [anon_sym_continue] = ACTIONS(945), [anon_sym_default] = ACTIONS(945), [anon_sym_mod] = ACTIONS(945), [anon_sym_enum] = ACTIONS(945), [anon_sym_fn] = ACTIONS(945), [anon_sym_for] = ACTIONS(945), [anon_sym_if] = ACTIONS(945), [anon_sym_impl] = ACTIONS(945), [anon_sym_let] = ACTIONS(945), [anon_sym_match] = ACTIONS(945), [anon_sym_pub] = ACTIONS(945), [anon_sym_return] = ACTIONS(945), [anon_sym_storage] = ACTIONS(945), [anon_sym_struct] = ACTIONS(945), [anon_sym_trait] = ACTIONS(945), [anon_sym_type] = ACTIONS(945), [anon_sym_use] = ACTIONS(945), [anon_sym_while] = ACTIONS(945), [anon_sym_POUND] = ACTIONS(943), [anon_sym_BANG] = ACTIONS(943), [anon_sym_LBRACE] = ACTIONS(943), [anon_sym_RBRACE] = ACTIONS(943), [anon_sym_LPAREN] = ACTIONS(943), [anon_sym_asm] = ACTIONS(945), [anon_sym_LT] = ACTIONS(943), [anon_sym_COLON_COLON] = ACTIONS(943), [anon_sym_STAR] = ACTIONS(943), [anon_sym_AMP] = ACTIONS(943), [anon_sym_DOT_DOT] = ACTIONS(943), [anon_sym_DASH] = ACTIONS(943), [anon_sym_PIPE] = ACTIONS(943), [anon_sym_yield] = ACTIONS(945), [anon_sym_move] = ACTIONS(945), [sym_integer_literal] = ACTIONS(943), [aux_sym_string_literal_token1] = ACTIONS(943), [sym_char_literal] = ACTIONS(943), [anon_sym_true] = ACTIONS(945), [anon_sym_false] = ACTIONS(945), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(945), [sym_metavariable] = ACTIONS(943), [sym_raw_string_literal] = ACTIONS(943), [sym_float_literal] = ACTIONS(943), [sym_block_comment] = ACTIONS(3), }, [247] = { [ts_builtin_sym_end] = ACTIONS(947), [sym_identifier] = ACTIONS(949), [anon_sym_SEMI] = ACTIONS(947), [anon_sym_u8] = ACTIONS(949), [anon_sym_i8] = ACTIONS(949), [anon_sym_u16] = ACTIONS(949), [anon_sym_i16] = ACTIONS(949), [anon_sym_u32] = ACTIONS(949), [anon_sym_i32] = ACTIONS(949), [anon_sym_u64] = ACTIONS(949), [anon_sym_i64] = ACTIONS(949), [anon_sym_u128] = ACTIONS(949), [anon_sym_i128] = ACTIONS(949), [anon_sym_u256] = ACTIONS(949), [anon_sym_i256] = ACTIONS(949), [anon_sym_b256] = ACTIONS(949), [anon_sym_isize] = ACTIONS(949), [anon_sym_usize] = ACTIONS(949), [anon_sym_f32] = ACTIONS(949), [anon_sym_f64] = ACTIONS(949), [anon_sym_bool] = ACTIONS(949), [anon_sym_char] = ACTIONS(949), [anon_sym_str] = ACTIONS(949), [anon_sym_LBRACK] = ACTIONS(947), [anon_sym_contract] = ACTIONS(949), [anon_sym_script] = ACTIONS(949), [anon_sym_predicate] = ACTIONS(949), [anon_sym_library] = ACTIONS(949), [anon_sym_SQUOTE] = ACTIONS(949), [anon_sym_abi] = ACTIONS(949), [anon_sym_break] = ACTIONS(949), [anon_sym_configurable] = ACTIONS(949), [anon_sym_const] = ACTIONS(949), [anon_sym_continue] = ACTIONS(949), [anon_sym_default] = ACTIONS(949), [anon_sym_mod] = ACTIONS(949), [anon_sym_enum] = ACTIONS(949), [anon_sym_fn] = ACTIONS(949), [anon_sym_for] = ACTIONS(949), [anon_sym_if] = ACTIONS(949), [anon_sym_impl] = ACTIONS(949), [anon_sym_let] = ACTIONS(949), [anon_sym_match] = ACTIONS(949), [anon_sym_pub] = ACTIONS(949), [anon_sym_return] = ACTIONS(949), [anon_sym_storage] = ACTIONS(949), [anon_sym_struct] = ACTIONS(949), [anon_sym_trait] = ACTIONS(949), [anon_sym_type] = ACTIONS(949), [anon_sym_use] = ACTIONS(949), [anon_sym_while] = ACTIONS(949), [anon_sym_POUND] = ACTIONS(947), [anon_sym_BANG] = ACTIONS(947), [anon_sym_LBRACE] = ACTIONS(947), [anon_sym_RBRACE] = ACTIONS(947), [anon_sym_LPAREN] = ACTIONS(947), [anon_sym_asm] = ACTIONS(949), [anon_sym_LT] = ACTIONS(947), [anon_sym_COLON_COLON] = ACTIONS(947), [anon_sym_STAR] = ACTIONS(947), [anon_sym_AMP] = ACTIONS(947), [anon_sym_DOT_DOT] = ACTIONS(947), [anon_sym_DASH] = ACTIONS(947), [anon_sym_PIPE] = ACTIONS(947), [anon_sym_yield] = ACTIONS(949), [anon_sym_move] = ACTIONS(949), [sym_integer_literal] = ACTIONS(947), [aux_sym_string_literal_token1] = ACTIONS(947), [sym_char_literal] = ACTIONS(947), [anon_sym_true] = ACTIONS(949), [anon_sym_false] = ACTIONS(949), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(949), [sym_metavariable] = ACTIONS(947), [sym_raw_string_literal] = ACTIONS(947), [sym_float_literal] = ACTIONS(947), [sym_block_comment] = ACTIONS(3), }, [248] = { [ts_builtin_sym_end] = ACTIONS(951), [sym_identifier] = ACTIONS(953), [anon_sym_SEMI] = ACTIONS(951), [anon_sym_u8] = ACTIONS(953), [anon_sym_i8] = ACTIONS(953), [anon_sym_u16] = ACTIONS(953), [anon_sym_i16] = ACTIONS(953), [anon_sym_u32] = ACTIONS(953), [anon_sym_i32] = ACTIONS(953), [anon_sym_u64] = ACTIONS(953), [anon_sym_i64] = ACTIONS(953), [anon_sym_u128] = ACTIONS(953), [anon_sym_i128] = ACTIONS(953), [anon_sym_u256] = ACTIONS(953), [anon_sym_i256] = ACTIONS(953), [anon_sym_b256] = ACTIONS(953), [anon_sym_isize] = ACTIONS(953), [anon_sym_usize] = ACTIONS(953), [anon_sym_f32] = ACTIONS(953), [anon_sym_f64] = ACTIONS(953), [anon_sym_bool] = ACTIONS(953), [anon_sym_char] = ACTIONS(953), [anon_sym_str] = ACTIONS(953), [anon_sym_LBRACK] = ACTIONS(951), [anon_sym_contract] = ACTIONS(953), [anon_sym_script] = ACTIONS(953), [anon_sym_predicate] = ACTIONS(953), [anon_sym_library] = ACTIONS(953), [anon_sym_SQUOTE] = ACTIONS(953), [anon_sym_abi] = ACTIONS(953), [anon_sym_break] = ACTIONS(953), [anon_sym_configurable] = ACTIONS(953), [anon_sym_const] = ACTIONS(953), [anon_sym_continue] = ACTIONS(953), [anon_sym_default] = ACTIONS(953), [anon_sym_mod] = ACTIONS(953), [anon_sym_enum] = ACTIONS(953), [anon_sym_fn] = ACTIONS(953), [anon_sym_for] = ACTIONS(953), [anon_sym_if] = ACTIONS(953), [anon_sym_impl] = ACTIONS(953), [anon_sym_let] = ACTIONS(953), [anon_sym_match] = ACTIONS(953), [anon_sym_pub] = ACTIONS(953), [anon_sym_return] = ACTIONS(953), [anon_sym_storage] = ACTIONS(953), [anon_sym_struct] = ACTIONS(953), [anon_sym_trait] = ACTIONS(953), [anon_sym_type] = ACTIONS(953), [anon_sym_use] = ACTIONS(953), [anon_sym_while] = ACTIONS(953), [anon_sym_POUND] = ACTIONS(951), [anon_sym_BANG] = ACTIONS(951), [anon_sym_LBRACE] = ACTIONS(951), [anon_sym_RBRACE] = ACTIONS(951), [anon_sym_LPAREN] = ACTIONS(951), [anon_sym_asm] = ACTIONS(953), [anon_sym_LT] = ACTIONS(951), [anon_sym_COLON_COLON] = ACTIONS(951), [anon_sym_STAR] = ACTIONS(951), [anon_sym_AMP] = ACTIONS(951), [anon_sym_DOT_DOT] = ACTIONS(951), [anon_sym_DASH] = ACTIONS(951), [anon_sym_PIPE] = ACTIONS(951), [anon_sym_yield] = ACTIONS(953), [anon_sym_move] = ACTIONS(953), [sym_integer_literal] = ACTIONS(951), [aux_sym_string_literal_token1] = ACTIONS(951), [sym_char_literal] = ACTIONS(951), [anon_sym_true] = ACTIONS(953), [anon_sym_false] = ACTIONS(953), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(953), [sym_metavariable] = ACTIONS(951), [sym_raw_string_literal] = ACTIONS(951), [sym_float_literal] = ACTIONS(951), [sym_block_comment] = ACTIONS(3), }, [249] = { [ts_builtin_sym_end] = ACTIONS(955), [sym_identifier] = ACTIONS(957), [anon_sym_SEMI] = ACTIONS(955), [anon_sym_u8] = ACTIONS(957), [anon_sym_i8] = ACTIONS(957), [anon_sym_u16] = ACTIONS(957), [anon_sym_i16] = ACTIONS(957), [anon_sym_u32] = ACTIONS(957), [anon_sym_i32] = ACTIONS(957), [anon_sym_u64] = ACTIONS(957), [anon_sym_i64] = ACTIONS(957), [anon_sym_u128] = ACTIONS(957), [anon_sym_i128] = ACTIONS(957), [anon_sym_u256] = ACTIONS(957), [anon_sym_i256] = ACTIONS(957), [anon_sym_b256] = ACTIONS(957), [anon_sym_isize] = ACTIONS(957), [anon_sym_usize] = ACTIONS(957), [anon_sym_f32] = ACTIONS(957), [anon_sym_f64] = ACTIONS(957), [anon_sym_bool] = ACTIONS(957), [anon_sym_char] = ACTIONS(957), [anon_sym_str] = ACTIONS(957), [anon_sym_LBRACK] = ACTIONS(955), [anon_sym_contract] = ACTIONS(957), [anon_sym_script] = ACTIONS(957), [anon_sym_predicate] = ACTIONS(957), [anon_sym_library] = ACTIONS(957), [anon_sym_SQUOTE] = ACTIONS(957), [anon_sym_abi] = ACTIONS(957), [anon_sym_break] = ACTIONS(957), [anon_sym_configurable] = ACTIONS(957), [anon_sym_const] = ACTIONS(957), [anon_sym_continue] = ACTIONS(957), [anon_sym_default] = ACTIONS(957), [anon_sym_mod] = ACTIONS(957), [anon_sym_enum] = ACTIONS(957), [anon_sym_fn] = ACTIONS(957), [anon_sym_for] = ACTIONS(957), [anon_sym_if] = ACTIONS(957), [anon_sym_impl] = ACTIONS(957), [anon_sym_let] = ACTIONS(957), [anon_sym_match] = ACTIONS(957), [anon_sym_pub] = ACTIONS(957), [anon_sym_return] = ACTIONS(957), [anon_sym_storage] = ACTIONS(957), [anon_sym_struct] = ACTIONS(957), [anon_sym_trait] = ACTIONS(957), [anon_sym_type] = ACTIONS(957), [anon_sym_use] = ACTIONS(957), [anon_sym_while] = ACTIONS(957), [anon_sym_POUND] = ACTIONS(955), [anon_sym_BANG] = ACTIONS(955), [anon_sym_LBRACE] = ACTIONS(955), [anon_sym_RBRACE] = ACTIONS(955), [anon_sym_LPAREN] = ACTIONS(955), [anon_sym_asm] = ACTIONS(957), [anon_sym_LT] = ACTIONS(955), [anon_sym_COLON_COLON] = ACTIONS(955), [anon_sym_STAR] = ACTIONS(955), [anon_sym_AMP] = ACTIONS(955), [anon_sym_DOT_DOT] = ACTIONS(955), [anon_sym_DASH] = ACTIONS(955), [anon_sym_PIPE] = ACTIONS(955), [anon_sym_yield] = ACTIONS(957), [anon_sym_move] = ACTIONS(957), [sym_integer_literal] = ACTIONS(955), [aux_sym_string_literal_token1] = ACTIONS(955), [sym_char_literal] = ACTIONS(955), [anon_sym_true] = ACTIONS(957), [anon_sym_false] = ACTIONS(957), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(957), [sym_metavariable] = ACTIONS(955), [sym_raw_string_literal] = ACTIONS(955), [sym_float_literal] = ACTIONS(955), [sym_block_comment] = ACTIONS(3), }, [250] = { [ts_builtin_sym_end] = ACTIONS(959), [sym_identifier] = ACTIONS(961), [anon_sym_SEMI] = ACTIONS(959), [anon_sym_u8] = ACTIONS(961), [anon_sym_i8] = ACTIONS(961), [anon_sym_u16] = ACTIONS(961), [anon_sym_i16] = ACTIONS(961), [anon_sym_u32] = ACTIONS(961), [anon_sym_i32] = ACTIONS(961), [anon_sym_u64] = ACTIONS(961), [anon_sym_i64] = ACTIONS(961), [anon_sym_u128] = ACTIONS(961), [anon_sym_i128] = ACTIONS(961), [anon_sym_u256] = ACTIONS(961), [anon_sym_i256] = ACTIONS(961), [anon_sym_b256] = ACTIONS(961), [anon_sym_isize] = ACTIONS(961), [anon_sym_usize] = ACTIONS(961), [anon_sym_f32] = ACTIONS(961), [anon_sym_f64] = ACTIONS(961), [anon_sym_bool] = ACTIONS(961), [anon_sym_char] = ACTIONS(961), [anon_sym_str] = ACTIONS(961), [anon_sym_LBRACK] = ACTIONS(959), [anon_sym_contract] = ACTIONS(961), [anon_sym_script] = ACTIONS(961), [anon_sym_predicate] = ACTIONS(961), [anon_sym_library] = ACTIONS(961), [anon_sym_SQUOTE] = ACTIONS(961), [anon_sym_abi] = ACTIONS(961), [anon_sym_break] = ACTIONS(961), [anon_sym_configurable] = ACTIONS(961), [anon_sym_const] = ACTIONS(961), [anon_sym_continue] = ACTIONS(961), [anon_sym_default] = ACTIONS(961), [anon_sym_mod] = ACTIONS(961), [anon_sym_enum] = ACTIONS(961), [anon_sym_fn] = ACTIONS(961), [anon_sym_for] = ACTIONS(961), [anon_sym_if] = ACTIONS(961), [anon_sym_impl] = ACTIONS(961), [anon_sym_let] = ACTIONS(961), [anon_sym_match] = ACTIONS(961), [anon_sym_pub] = ACTIONS(961), [anon_sym_return] = ACTIONS(961), [anon_sym_storage] = ACTIONS(961), [anon_sym_struct] = ACTIONS(961), [anon_sym_trait] = ACTIONS(961), [anon_sym_type] = ACTIONS(961), [anon_sym_use] = ACTIONS(961), [anon_sym_while] = ACTIONS(961), [anon_sym_POUND] = ACTIONS(959), [anon_sym_BANG] = ACTIONS(959), [anon_sym_LBRACE] = ACTIONS(959), [anon_sym_RBRACE] = ACTIONS(959), [anon_sym_LPAREN] = ACTIONS(959), [anon_sym_asm] = ACTIONS(961), [anon_sym_LT] = ACTIONS(959), [anon_sym_COLON_COLON] = ACTIONS(959), [anon_sym_STAR] = ACTIONS(959), [anon_sym_AMP] = ACTIONS(959), [anon_sym_DOT_DOT] = ACTIONS(959), [anon_sym_DASH] = ACTIONS(959), [anon_sym_PIPE] = ACTIONS(959), [anon_sym_yield] = ACTIONS(961), [anon_sym_move] = ACTIONS(961), [sym_integer_literal] = ACTIONS(959), [aux_sym_string_literal_token1] = ACTIONS(959), [sym_char_literal] = ACTIONS(959), [anon_sym_true] = ACTIONS(961), [anon_sym_false] = ACTIONS(961), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(961), [sym_metavariable] = ACTIONS(959), [sym_raw_string_literal] = ACTIONS(959), [sym_float_literal] = ACTIONS(959), [sym_block_comment] = ACTIONS(3), }, [251] = { [ts_builtin_sym_end] = ACTIONS(963), [sym_identifier] = ACTIONS(965), [anon_sym_SEMI] = ACTIONS(963), [anon_sym_u8] = ACTIONS(965), [anon_sym_i8] = ACTIONS(965), [anon_sym_u16] = ACTIONS(965), [anon_sym_i16] = ACTIONS(965), [anon_sym_u32] = ACTIONS(965), [anon_sym_i32] = ACTIONS(965), [anon_sym_u64] = ACTIONS(965), [anon_sym_i64] = ACTIONS(965), [anon_sym_u128] = ACTIONS(965), [anon_sym_i128] = ACTIONS(965), [anon_sym_u256] = ACTIONS(965), [anon_sym_i256] = ACTIONS(965), [anon_sym_b256] = ACTIONS(965), [anon_sym_isize] = ACTIONS(965), [anon_sym_usize] = ACTIONS(965), [anon_sym_f32] = ACTIONS(965), [anon_sym_f64] = ACTIONS(965), [anon_sym_bool] = ACTIONS(965), [anon_sym_char] = ACTIONS(965), [anon_sym_str] = ACTIONS(965), [anon_sym_LBRACK] = ACTIONS(963), [anon_sym_contract] = ACTIONS(965), [anon_sym_script] = ACTIONS(965), [anon_sym_predicate] = ACTIONS(965), [anon_sym_library] = ACTIONS(965), [anon_sym_SQUOTE] = ACTIONS(965), [anon_sym_abi] = ACTIONS(965), [anon_sym_break] = ACTIONS(965), [anon_sym_configurable] = ACTIONS(965), [anon_sym_const] = ACTIONS(965), [anon_sym_continue] = ACTIONS(965), [anon_sym_default] = ACTIONS(965), [anon_sym_mod] = ACTIONS(965), [anon_sym_enum] = ACTIONS(965), [anon_sym_fn] = ACTIONS(965), [anon_sym_for] = ACTIONS(965), [anon_sym_if] = ACTIONS(965), [anon_sym_impl] = ACTIONS(965), [anon_sym_let] = ACTIONS(965), [anon_sym_match] = ACTIONS(965), [anon_sym_pub] = ACTIONS(965), [anon_sym_return] = ACTIONS(965), [anon_sym_storage] = ACTIONS(965), [anon_sym_struct] = ACTIONS(965), [anon_sym_trait] = ACTIONS(965), [anon_sym_type] = ACTIONS(965), [anon_sym_use] = ACTIONS(965), [anon_sym_while] = ACTIONS(965), [anon_sym_POUND] = ACTIONS(963), [anon_sym_BANG] = ACTIONS(963), [anon_sym_LBRACE] = ACTIONS(963), [anon_sym_RBRACE] = ACTIONS(963), [anon_sym_LPAREN] = ACTIONS(963), [anon_sym_asm] = ACTIONS(965), [anon_sym_LT] = ACTIONS(963), [anon_sym_COLON_COLON] = ACTIONS(963), [anon_sym_STAR] = ACTIONS(963), [anon_sym_AMP] = ACTIONS(963), [anon_sym_DOT_DOT] = ACTIONS(963), [anon_sym_DASH] = ACTIONS(963), [anon_sym_PIPE] = ACTIONS(963), [anon_sym_yield] = ACTIONS(965), [anon_sym_move] = ACTIONS(965), [sym_integer_literal] = ACTIONS(963), [aux_sym_string_literal_token1] = ACTIONS(963), [sym_char_literal] = ACTIONS(963), [anon_sym_true] = ACTIONS(965), [anon_sym_false] = ACTIONS(965), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(965), [sym_metavariable] = ACTIONS(963), [sym_raw_string_literal] = ACTIONS(963), [sym_float_literal] = ACTIONS(963), [sym_block_comment] = ACTIONS(3), }, [252] = { [ts_builtin_sym_end] = ACTIONS(967), [sym_identifier] = ACTIONS(969), [anon_sym_SEMI] = ACTIONS(967), [anon_sym_u8] = ACTIONS(969), [anon_sym_i8] = ACTIONS(969), [anon_sym_u16] = ACTIONS(969), [anon_sym_i16] = ACTIONS(969), [anon_sym_u32] = ACTIONS(969), [anon_sym_i32] = ACTIONS(969), [anon_sym_u64] = ACTIONS(969), [anon_sym_i64] = ACTIONS(969), [anon_sym_u128] = ACTIONS(969), [anon_sym_i128] = ACTIONS(969), [anon_sym_u256] = ACTIONS(969), [anon_sym_i256] = ACTIONS(969), [anon_sym_b256] = ACTIONS(969), [anon_sym_isize] = ACTIONS(969), [anon_sym_usize] = ACTIONS(969), [anon_sym_f32] = ACTIONS(969), [anon_sym_f64] = ACTIONS(969), [anon_sym_bool] = ACTIONS(969), [anon_sym_char] = ACTIONS(969), [anon_sym_str] = ACTIONS(969), [anon_sym_LBRACK] = ACTIONS(967), [anon_sym_contract] = ACTIONS(969), [anon_sym_script] = ACTIONS(969), [anon_sym_predicate] = ACTIONS(969), [anon_sym_library] = ACTIONS(969), [anon_sym_SQUOTE] = ACTIONS(969), [anon_sym_abi] = ACTIONS(969), [anon_sym_break] = ACTIONS(969), [anon_sym_configurable] = ACTIONS(969), [anon_sym_const] = ACTIONS(969), [anon_sym_continue] = ACTIONS(969), [anon_sym_default] = ACTIONS(969), [anon_sym_mod] = ACTIONS(969), [anon_sym_enum] = ACTIONS(969), [anon_sym_fn] = ACTIONS(969), [anon_sym_for] = ACTIONS(969), [anon_sym_if] = ACTIONS(969), [anon_sym_impl] = ACTIONS(969), [anon_sym_let] = ACTIONS(969), [anon_sym_match] = ACTIONS(969), [anon_sym_pub] = ACTIONS(969), [anon_sym_return] = ACTIONS(969), [anon_sym_storage] = ACTIONS(969), [anon_sym_struct] = ACTIONS(969), [anon_sym_trait] = ACTIONS(969), [anon_sym_type] = ACTIONS(969), [anon_sym_use] = ACTIONS(969), [anon_sym_while] = ACTIONS(969), [anon_sym_POUND] = ACTIONS(967), [anon_sym_BANG] = ACTIONS(967), [anon_sym_LBRACE] = ACTIONS(967), [anon_sym_RBRACE] = ACTIONS(967), [anon_sym_LPAREN] = ACTIONS(967), [anon_sym_asm] = ACTIONS(969), [anon_sym_LT] = ACTIONS(967), [anon_sym_COLON_COLON] = ACTIONS(967), [anon_sym_STAR] = ACTIONS(967), [anon_sym_AMP] = ACTIONS(967), [anon_sym_DOT_DOT] = ACTIONS(967), [anon_sym_DASH] = ACTIONS(967), [anon_sym_PIPE] = ACTIONS(967), [anon_sym_yield] = ACTIONS(969), [anon_sym_move] = ACTIONS(969), [sym_integer_literal] = ACTIONS(967), [aux_sym_string_literal_token1] = ACTIONS(967), [sym_char_literal] = ACTIONS(967), [anon_sym_true] = ACTIONS(969), [anon_sym_false] = ACTIONS(969), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(969), [sym_metavariable] = ACTIONS(967), [sym_raw_string_literal] = ACTIONS(967), [sym_float_literal] = ACTIONS(967), [sym_block_comment] = ACTIONS(3), }, [253] = { [ts_builtin_sym_end] = ACTIONS(971), [sym_identifier] = ACTIONS(973), [anon_sym_SEMI] = ACTIONS(971), [anon_sym_u8] = ACTIONS(973), [anon_sym_i8] = ACTIONS(973), [anon_sym_u16] = ACTIONS(973), [anon_sym_i16] = ACTIONS(973), [anon_sym_u32] = ACTIONS(973), [anon_sym_i32] = ACTIONS(973), [anon_sym_u64] = ACTIONS(973), [anon_sym_i64] = ACTIONS(973), [anon_sym_u128] = ACTIONS(973), [anon_sym_i128] = ACTIONS(973), [anon_sym_u256] = ACTIONS(973), [anon_sym_i256] = ACTIONS(973), [anon_sym_b256] = ACTIONS(973), [anon_sym_isize] = ACTIONS(973), [anon_sym_usize] = ACTIONS(973), [anon_sym_f32] = ACTIONS(973), [anon_sym_f64] = ACTIONS(973), [anon_sym_bool] = ACTIONS(973), [anon_sym_char] = ACTIONS(973), [anon_sym_str] = ACTIONS(973), [anon_sym_LBRACK] = ACTIONS(971), [anon_sym_contract] = ACTIONS(973), [anon_sym_script] = ACTIONS(973), [anon_sym_predicate] = ACTIONS(973), [anon_sym_library] = ACTIONS(973), [anon_sym_SQUOTE] = ACTIONS(973), [anon_sym_abi] = ACTIONS(973), [anon_sym_break] = ACTIONS(973), [anon_sym_configurable] = ACTIONS(973), [anon_sym_const] = ACTIONS(973), [anon_sym_continue] = ACTIONS(973), [anon_sym_default] = ACTIONS(973), [anon_sym_mod] = ACTIONS(973), [anon_sym_enum] = ACTIONS(973), [anon_sym_fn] = ACTIONS(973), [anon_sym_for] = ACTIONS(973), [anon_sym_if] = ACTIONS(973), [anon_sym_impl] = ACTIONS(973), [anon_sym_let] = ACTIONS(973), [anon_sym_match] = ACTIONS(973), [anon_sym_pub] = ACTIONS(973), [anon_sym_return] = ACTIONS(973), [anon_sym_storage] = ACTIONS(973), [anon_sym_struct] = ACTIONS(973), [anon_sym_trait] = ACTIONS(973), [anon_sym_type] = ACTIONS(973), [anon_sym_use] = ACTIONS(973), [anon_sym_while] = ACTIONS(973), [anon_sym_POUND] = ACTIONS(971), [anon_sym_BANG] = ACTIONS(971), [anon_sym_LBRACE] = ACTIONS(971), [anon_sym_RBRACE] = ACTIONS(971), [anon_sym_LPAREN] = ACTIONS(971), [anon_sym_asm] = ACTIONS(973), [anon_sym_LT] = ACTIONS(971), [anon_sym_COLON_COLON] = ACTIONS(971), [anon_sym_STAR] = ACTIONS(971), [anon_sym_AMP] = ACTIONS(971), [anon_sym_DOT_DOT] = ACTIONS(971), [anon_sym_DASH] = ACTIONS(971), [anon_sym_PIPE] = ACTIONS(971), [anon_sym_yield] = ACTIONS(973), [anon_sym_move] = ACTIONS(973), [sym_integer_literal] = ACTIONS(971), [aux_sym_string_literal_token1] = ACTIONS(971), [sym_char_literal] = ACTIONS(971), [anon_sym_true] = ACTIONS(973), [anon_sym_false] = ACTIONS(973), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(973), [sym_metavariable] = ACTIONS(971), [sym_raw_string_literal] = ACTIONS(971), [sym_float_literal] = ACTIONS(971), [sym_block_comment] = ACTIONS(3), }, [254] = { [ts_builtin_sym_end] = ACTIONS(975), [sym_identifier] = ACTIONS(977), [anon_sym_SEMI] = ACTIONS(975), [anon_sym_u8] = ACTIONS(977), [anon_sym_i8] = ACTIONS(977), [anon_sym_u16] = ACTIONS(977), [anon_sym_i16] = ACTIONS(977), [anon_sym_u32] = ACTIONS(977), [anon_sym_i32] = ACTIONS(977), [anon_sym_u64] = ACTIONS(977), [anon_sym_i64] = ACTIONS(977), [anon_sym_u128] = ACTIONS(977), [anon_sym_i128] = ACTIONS(977), [anon_sym_u256] = ACTIONS(977), [anon_sym_i256] = ACTIONS(977), [anon_sym_b256] = ACTIONS(977), [anon_sym_isize] = ACTIONS(977), [anon_sym_usize] = ACTIONS(977), [anon_sym_f32] = ACTIONS(977), [anon_sym_f64] = ACTIONS(977), [anon_sym_bool] = ACTIONS(977), [anon_sym_char] = ACTIONS(977), [anon_sym_str] = ACTIONS(977), [anon_sym_LBRACK] = ACTIONS(975), [anon_sym_contract] = ACTIONS(977), [anon_sym_script] = ACTIONS(977), [anon_sym_predicate] = ACTIONS(977), [anon_sym_library] = ACTIONS(977), [anon_sym_SQUOTE] = ACTIONS(977), [anon_sym_abi] = ACTIONS(977), [anon_sym_break] = ACTIONS(977), [anon_sym_configurable] = ACTIONS(977), [anon_sym_const] = ACTIONS(977), [anon_sym_continue] = ACTIONS(977), [anon_sym_default] = ACTIONS(977), [anon_sym_mod] = ACTIONS(977), [anon_sym_enum] = ACTIONS(977), [anon_sym_fn] = ACTIONS(977), [anon_sym_for] = ACTIONS(977), [anon_sym_if] = ACTIONS(977), [anon_sym_impl] = ACTIONS(977), [anon_sym_let] = ACTIONS(977), [anon_sym_match] = ACTIONS(977), [anon_sym_pub] = ACTIONS(977), [anon_sym_return] = ACTIONS(977), [anon_sym_storage] = ACTIONS(977), [anon_sym_struct] = ACTIONS(977), [anon_sym_trait] = ACTIONS(977), [anon_sym_type] = ACTIONS(977), [anon_sym_use] = ACTIONS(977), [anon_sym_while] = ACTIONS(977), [anon_sym_POUND] = ACTIONS(975), [anon_sym_BANG] = ACTIONS(975), [anon_sym_LBRACE] = ACTIONS(975), [anon_sym_RBRACE] = ACTIONS(975), [anon_sym_LPAREN] = ACTIONS(975), [anon_sym_asm] = ACTIONS(977), [anon_sym_LT] = ACTIONS(975), [anon_sym_COLON_COLON] = ACTIONS(975), [anon_sym_STAR] = ACTIONS(975), [anon_sym_AMP] = ACTIONS(975), [anon_sym_DOT_DOT] = ACTIONS(975), [anon_sym_DASH] = ACTIONS(975), [anon_sym_PIPE] = ACTIONS(975), [anon_sym_yield] = ACTIONS(977), [anon_sym_move] = ACTIONS(977), [sym_integer_literal] = ACTIONS(975), [aux_sym_string_literal_token1] = ACTIONS(975), [sym_char_literal] = ACTIONS(975), [anon_sym_true] = ACTIONS(977), [anon_sym_false] = ACTIONS(977), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(977), [sym_metavariable] = ACTIONS(975), [sym_raw_string_literal] = ACTIONS(975), [sym_float_literal] = ACTIONS(975), [sym_block_comment] = ACTIONS(3), }, [255] = { [ts_builtin_sym_end] = ACTIONS(979), [sym_identifier] = ACTIONS(981), [anon_sym_SEMI] = ACTIONS(979), [anon_sym_u8] = ACTIONS(981), [anon_sym_i8] = ACTIONS(981), [anon_sym_u16] = ACTIONS(981), [anon_sym_i16] = ACTIONS(981), [anon_sym_u32] = ACTIONS(981), [anon_sym_i32] = ACTIONS(981), [anon_sym_u64] = ACTIONS(981), [anon_sym_i64] = ACTIONS(981), [anon_sym_u128] = ACTIONS(981), [anon_sym_i128] = ACTIONS(981), [anon_sym_u256] = ACTIONS(981), [anon_sym_i256] = ACTIONS(981), [anon_sym_b256] = ACTIONS(981), [anon_sym_isize] = ACTIONS(981), [anon_sym_usize] = ACTIONS(981), [anon_sym_f32] = ACTIONS(981), [anon_sym_f64] = ACTIONS(981), [anon_sym_bool] = ACTIONS(981), [anon_sym_char] = ACTIONS(981), [anon_sym_str] = ACTIONS(981), [anon_sym_LBRACK] = ACTIONS(979), [anon_sym_contract] = ACTIONS(981), [anon_sym_script] = ACTIONS(981), [anon_sym_predicate] = ACTIONS(981), [anon_sym_library] = ACTIONS(981), [anon_sym_SQUOTE] = ACTIONS(981), [anon_sym_abi] = ACTIONS(981), [anon_sym_break] = ACTIONS(981), [anon_sym_configurable] = ACTIONS(981), [anon_sym_const] = ACTIONS(981), [anon_sym_continue] = ACTIONS(981), [anon_sym_default] = ACTIONS(981), [anon_sym_mod] = ACTIONS(981), [anon_sym_enum] = ACTIONS(981), [anon_sym_fn] = ACTIONS(981), [anon_sym_for] = ACTIONS(981), [anon_sym_if] = ACTIONS(981), [anon_sym_impl] = ACTIONS(981), [anon_sym_let] = ACTIONS(981), [anon_sym_match] = ACTIONS(981), [anon_sym_pub] = ACTIONS(981), [anon_sym_return] = ACTIONS(981), [anon_sym_storage] = ACTIONS(981), [anon_sym_struct] = ACTIONS(981), [anon_sym_trait] = ACTIONS(981), [anon_sym_type] = ACTIONS(981), [anon_sym_use] = ACTIONS(981), [anon_sym_while] = ACTIONS(981), [anon_sym_POUND] = ACTIONS(979), [anon_sym_BANG] = ACTIONS(979), [anon_sym_LBRACE] = ACTIONS(979), [anon_sym_RBRACE] = ACTIONS(979), [anon_sym_LPAREN] = ACTIONS(979), [anon_sym_asm] = ACTIONS(981), [anon_sym_LT] = ACTIONS(979), [anon_sym_COLON_COLON] = ACTIONS(979), [anon_sym_STAR] = ACTIONS(979), [anon_sym_AMP] = ACTIONS(979), [anon_sym_DOT_DOT] = ACTIONS(979), [anon_sym_DASH] = ACTIONS(979), [anon_sym_PIPE] = ACTIONS(979), [anon_sym_yield] = ACTIONS(981), [anon_sym_move] = ACTIONS(981), [sym_integer_literal] = ACTIONS(979), [aux_sym_string_literal_token1] = ACTIONS(979), [sym_char_literal] = ACTIONS(979), [anon_sym_true] = ACTIONS(981), [anon_sym_false] = ACTIONS(981), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(981), [sym_metavariable] = ACTIONS(979), [sym_raw_string_literal] = ACTIONS(979), [sym_float_literal] = ACTIONS(979), [sym_block_comment] = ACTIONS(3), }, [256] = { [ts_builtin_sym_end] = ACTIONS(983), [sym_identifier] = ACTIONS(985), [anon_sym_SEMI] = ACTIONS(983), [anon_sym_u8] = ACTIONS(985), [anon_sym_i8] = ACTIONS(985), [anon_sym_u16] = ACTIONS(985), [anon_sym_i16] = ACTIONS(985), [anon_sym_u32] = ACTIONS(985), [anon_sym_i32] = ACTIONS(985), [anon_sym_u64] = ACTIONS(985), [anon_sym_i64] = ACTIONS(985), [anon_sym_u128] = ACTIONS(985), [anon_sym_i128] = ACTIONS(985), [anon_sym_u256] = ACTIONS(985), [anon_sym_i256] = ACTIONS(985), [anon_sym_b256] = ACTIONS(985), [anon_sym_isize] = ACTIONS(985), [anon_sym_usize] = ACTIONS(985), [anon_sym_f32] = ACTIONS(985), [anon_sym_f64] = ACTIONS(985), [anon_sym_bool] = ACTIONS(985), [anon_sym_char] = ACTIONS(985), [anon_sym_str] = ACTIONS(985), [anon_sym_LBRACK] = ACTIONS(983), [anon_sym_contract] = ACTIONS(985), [anon_sym_script] = ACTIONS(985), [anon_sym_predicate] = ACTIONS(985), [anon_sym_library] = ACTIONS(985), [anon_sym_SQUOTE] = ACTIONS(985), [anon_sym_abi] = ACTIONS(985), [anon_sym_break] = ACTIONS(985), [anon_sym_configurable] = ACTIONS(985), [anon_sym_const] = ACTIONS(985), [anon_sym_continue] = ACTIONS(985), [anon_sym_default] = ACTIONS(985), [anon_sym_mod] = ACTIONS(985), [anon_sym_enum] = ACTIONS(985), [anon_sym_fn] = ACTIONS(985), [anon_sym_for] = ACTIONS(985), [anon_sym_if] = ACTIONS(985), [anon_sym_impl] = ACTIONS(985), [anon_sym_let] = ACTIONS(985), [anon_sym_match] = ACTIONS(985), [anon_sym_pub] = ACTIONS(985), [anon_sym_return] = ACTIONS(985), [anon_sym_storage] = ACTIONS(985), [anon_sym_struct] = ACTIONS(985), [anon_sym_trait] = ACTIONS(985), [anon_sym_type] = ACTIONS(985), [anon_sym_use] = ACTIONS(985), [anon_sym_while] = ACTIONS(985), [anon_sym_POUND] = ACTIONS(983), [anon_sym_BANG] = ACTIONS(983), [anon_sym_LBRACE] = ACTIONS(983), [anon_sym_RBRACE] = ACTIONS(983), [anon_sym_LPAREN] = ACTIONS(983), [anon_sym_asm] = ACTIONS(985), [anon_sym_LT] = ACTIONS(983), [anon_sym_COLON_COLON] = ACTIONS(983), [anon_sym_STAR] = ACTIONS(983), [anon_sym_AMP] = ACTIONS(983), [anon_sym_DOT_DOT] = ACTIONS(983), [anon_sym_DASH] = ACTIONS(983), [anon_sym_PIPE] = ACTIONS(983), [anon_sym_yield] = ACTIONS(985), [anon_sym_move] = ACTIONS(985), [sym_integer_literal] = ACTIONS(983), [aux_sym_string_literal_token1] = ACTIONS(983), [sym_char_literal] = ACTIONS(983), [anon_sym_true] = ACTIONS(985), [anon_sym_false] = ACTIONS(985), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(985), [sym_metavariable] = ACTIONS(983), [sym_raw_string_literal] = ACTIONS(983), [sym_float_literal] = ACTIONS(983), [sym_block_comment] = ACTIONS(3), }, [257] = { [ts_builtin_sym_end] = ACTIONS(987), [sym_identifier] = ACTIONS(989), [anon_sym_SEMI] = ACTIONS(987), [anon_sym_u8] = ACTIONS(989), [anon_sym_i8] = ACTIONS(989), [anon_sym_u16] = ACTIONS(989), [anon_sym_i16] = ACTIONS(989), [anon_sym_u32] = ACTIONS(989), [anon_sym_i32] = ACTIONS(989), [anon_sym_u64] = ACTIONS(989), [anon_sym_i64] = ACTIONS(989), [anon_sym_u128] = ACTIONS(989), [anon_sym_i128] = ACTIONS(989), [anon_sym_u256] = ACTIONS(989), [anon_sym_i256] = ACTIONS(989), [anon_sym_b256] = ACTIONS(989), [anon_sym_isize] = ACTIONS(989), [anon_sym_usize] = ACTIONS(989), [anon_sym_f32] = ACTIONS(989), [anon_sym_f64] = ACTIONS(989), [anon_sym_bool] = ACTIONS(989), [anon_sym_char] = ACTIONS(989), [anon_sym_str] = ACTIONS(989), [anon_sym_LBRACK] = ACTIONS(987), [anon_sym_contract] = ACTIONS(989), [anon_sym_script] = ACTIONS(989), [anon_sym_predicate] = ACTIONS(989), [anon_sym_library] = ACTIONS(989), [anon_sym_SQUOTE] = ACTIONS(989), [anon_sym_abi] = ACTIONS(989), [anon_sym_break] = ACTIONS(989), [anon_sym_configurable] = ACTIONS(989), [anon_sym_const] = ACTIONS(989), [anon_sym_continue] = ACTIONS(989), [anon_sym_default] = ACTIONS(989), [anon_sym_mod] = ACTIONS(989), [anon_sym_enum] = ACTIONS(989), [anon_sym_fn] = ACTIONS(989), [anon_sym_for] = ACTIONS(989), [anon_sym_if] = ACTIONS(989), [anon_sym_impl] = ACTIONS(989), [anon_sym_let] = ACTIONS(989), [anon_sym_match] = ACTIONS(989), [anon_sym_pub] = ACTIONS(989), [anon_sym_return] = ACTIONS(989), [anon_sym_storage] = ACTIONS(989), [anon_sym_struct] = ACTIONS(989), [anon_sym_trait] = ACTIONS(989), [anon_sym_type] = ACTIONS(989), [anon_sym_use] = ACTIONS(989), [anon_sym_while] = ACTIONS(989), [anon_sym_POUND] = ACTIONS(987), [anon_sym_BANG] = ACTIONS(987), [anon_sym_LBRACE] = ACTIONS(987), [anon_sym_RBRACE] = ACTIONS(987), [anon_sym_LPAREN] = ACTIONS(987), [anon_sym_asm] = ACTIONS(989), [anon_sym_LT] = ACTIONS(987), [anon_sym_COLON_COLON] = ACTIONS(987), [anon_sym_STAR] = ACTIONS(987), [anon_sym_AMP] = ACTIONS(987), [anon_sym_DOT_DOT] = ACTIONS(987), [anon_sym_DASH] = ACTIONS(987), [anon_sym_PIPE] = ACTIONS(987), [anon_sym_yield] = ACTIONS(989), [anon_sym_move] = ACTIONS(989), [sym_integer_literal] = ACTIONS(987), [aux_sym_string_literal_token1] = ACTIONS(987), [sym_char_literal] = ACTIONS(987), [anon_sym_true] = ACTIONS(989), [anon_sym_false] = ACTIONS(989), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(989), [sym_metavariable] = ACTIONS(987), [sym_raw_string_literal] = ACTIONS(987), [sym_float_literal] = ACTIONS(987), [sym_block_comment] = ACTIONS(3), }, [258] = { [ts_builtin_sym_end] = ACTIONS(991), [sym_identifier] = ACTIONS(993), [anon_sym_SEMI] = ACTIONS(991), [anon_sym_u8] = ACTIONS(993), [anon_sym_i8] = ACTIONS(993), [anon_sym_u16] = ACTIONS(993), [anon_sym_i16] = ACTIONS(993), [anon_sym_u32] = ACTIONS(993), [anon_sym_i32] = ACTIONS(993), [anon_sym_u64] = ACTIONS(993), [anon_sym_i64] = ACTIONS(993), [anon_sym_u128] = ACTIONS(993), [anon_sym_i128] = ACTIONS(993), [anon_sym_u256] = ACTIONS(993), [anon_sym_i256] = ACTIONS(993), [anon_sym_b256] = ACTIONS(993), [anon_sym_isize] = ACTIONS(993), [anon_sym_usize] = ACTIONS(993), [anon_sym_f32] = ACTIONS(993), [anon_sym_f64] = ACTIONS(993), [anon_sym_bool] = ACTIONS(993), [anon_sym_char] = ACTIONS(993), [anon_sym_str] = ACTIONS(993), [anon_sym_LBRACK] = ACTIONS(991), [anon_sym_contract] = ACTIONS(993), [anon_sym_script] = ACTIONS(993), [anon_sym_predicate] = ACTIONS(993), [anon_sym_library] = ACTIONS(993), [anon_sym_SQUOTE] = ACTIONS(993), [anon_sym_abi] = ACTIONS(993), [anon_sym_break] = ACTIONS(993), [anon_sym_configurable] = ACTIONS(993), [anon_sym_const] = ACTIONS(993), [anon_sym_continue] = ACTIONS(993), [anon_sym_default] = ACTIONS(993), [anon_sym_mod] = ACTIONS(993), [anon_sym_enum] = ACTIONS(993), [anon_sym_fn] = ACTIONS(993), [anon_sym_for] = ACTIONS(993), [anon_sym_if] = ACTIONS(993), [anon_sym_impl] = ACTIONS(993), [anon_sym_let] = ACTIONS(993), [anon_sym_match] = ACTIONS(993), [anon_sym_pub] = ACTIONS(993), [anon_sym_return] = ACTIONS(993), [anon_sym_storage] = ACTIONS(993), [anon_sym_struct] = ACTIONS(993), [anon_sym_trait] = ACTIONS(993), [anon_sym_type] = ACTIONS(993), [anon_sym_use] = ACTIONS(993), [anon_sym_while] = ACTIONS(993), [anon_sym_POUND] = ACTIONS(991), [anon_sym_BANG] = ACTIONS(991), [anon_sym_LBRACE] = ACTIONS(991), [anon_sym_RBRACE] = ACTIONS(991), [anon_sym_LPAREN] = ACTIONS(991), [anon_sym_asm] = ACTIONS(993), [anon_sym_LT] = ACTIONS(991), [anon_sym_COLON_COLON] = ACTIONS(991), [anon_sym_STAR] = ACTIONS(991), [anon_sym_AMP] = ACTIONS(991), [anon_sym_DOT_DOT] = ACTIONS(991), [anon_sym_DASH] = ACTIONS(991), [anon_sym_PIPE] = ACTIONS(991), [anon_sym_yield] = ACTIONS(993), [anon_sym_move] = ACTIONS(993), [sym_integer_literal] = ACTIONS(991), [aux_sym_string_literal_token1] = ACTIONS(991), [sym_char_literal] = ACTIONS(991), [anon_sym_true] = ACTIONS(993), [anon_sym_false] = ACTIONS(993), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(993), [sym_metavariable] = ACTIONS(991), [sym_raw_string_literal] = ACTIONS(991), [sym_float_literal] = ACTIONS(991), [sym_block_comment] = ACTIONS(3), }, [259] = { [ts_builtin_sym_end] = ACTIONS(995), [sym_identifier] = ACTIONS(997), [anon_sym_SEMI] = ACTIONS(995), [anon_sym_u8] = ACTIONS(997), [anon_sym_i8] = ACTIONS(997), [anon_sym_u16] = ACTIONS(997), [anon_sym_i16] = ACTIONS(997), [anon_sym_u32] = ACTIONS(997), [anon_sym_i32] = ACTIONS(997), [anon_sym_u64] = ACTIONS(997), [anon_sym_i64] = ACTIONS(997), [anon_sym_u128] = ACTIONS(997), [anon_sym_i128] = ACTIONS(997), [anon_sym_u256] = ACTIONS(997), [anon_sym_i256] = ACTIONS(997), [anon_sym_b256] = ACTIONS(997), [anon_sym_isize] = ACTIONS(997), [anon_sym_usize] = ACTIONS(997), [anon_sym_f32] = ACTIONS(997), [anon_sym_f64] = ACTIONS(997), [anon_sym_bool] = ACTIONS(997), [anon_sym_char] = ACTIONS(997), [anon_sym_str] = ACTIONS(997), [anon_sym_LBRACK] = ACTIONS(995), [anon_sym_contract] = ACTIONS(997), [anon_sym_script] = ACTIONS(997), [anon_sym_predicate] = ACTIONS(997), [anon_sym_library] = ACTIONS(997), [anon_sym_SQUOTE] = ACTIONS(997), [anon_sym_abi] = ACTIONS(997), [anon_sym_break] = ACTIONS(997), [anon_sym_configurable] = ACTIONS(997), [anon_sym_const] = ACTIONS(997), [anon_sym_continue] = ACTIONS(997), [anon_sym_default] = ACTIONS(997), [anon_sym_mod] = ACTIONS(997), [anon_sym_enum] = ACTIONS(997), [anon_sym_fn] = ACTIONS(997), [anon_sym_for] = ACTIONS(997), [anon_sym_if] = ACTIONS(997), [anon_sym_impl] = ACTIONS(997), [anon_sym_let] = ACTIONS(997), [anon_sym_match] = ACTIONS(997), [anon_sym_pub] = ACTIONS(997), [anon_sym_return] = ACTIONS(997), [anon_sym_storage] = ACTIONS(997), [anon_sym_struct] = ACTIONS(997), [anon_sym_trait] = ACTIONS(997), [anon_sym_type] = ACTIONS(997), [anon_sym_use] = ACTIONS(997), [anon_sym_while] = ACTIONS(997), [anon_sym_POUND] = ACTIONS(995), [anon_sym_BANG] = ACTIONS(995), [anon_sym_LBRACE] = ACTIONS(995), [anon_sym_RBRACE] = ACTIONS(995), [anon_sym_LPAREN] = ACTIONS(995), [anon_sym_asm] = ACTIONS(997), [anon_sym_LT] = ACTIONS(995), [anon_sym_COLON_COLON] = ACTIONS(995), [anon_sym_STAR] = ACTIONS(995), [anon_sym_AMP] = ACTIONS(995), [anon_sym_DOT_DOT] = ACTIONS(995), [anon_sym_DASH] = ACTIONS(995), [anon_sym_PIPE] = ACTIONS(995), [anon_sym_yield] = ACTIONS(997), [anon_sym_move] = ACTIONS(997), [sym_integer_literal] = ACTIONS(995), [aux_sym_string_literal_token1] = ACTIONS(995), [sym_char_literal] = ACTIONS(995), [anon_sym_true] = ACTIONS(997), [anon_sym_false] = ACTIONS(997), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(997), [sym_metavariable] = ACTIONS(995), [sym_raw_string_literal] = ACTIONS(995), [sym_float_literal] = ACTIONS(995), [sym_block_comment] = ACTIONS(3), }, [260] = { [ts_builtin_sym_end] = ACTIONS(999), [sym_identifier] = ACTIONS(1001), [anon_sym_SEMI] = ACTIONS(999), [anon_sym_u8] = ACTIONS(1001), [anon_sym_i8] = ACTIONS(1001), [anon_sym_u16] = ACTIONS(1001), [anon_sym_i16] = ACTIONS(1001), [anon_sym_u32] = ACTIONS(1001), [anon_sym_i32] = ACTIONS(1001), [anon_sym_u64] = ACTIONS(1001), [anon_sym_i64] = ACTIONS(1001), [anon_sym_u128] = ACTIONS(1001), [anon_sym_i128] = ACTIONS(1001), [anon_sym_u256] = ACTIONS(1001), [anon_sym_i256] = ACTIONS(1001), [anon_sym_b256] = ACTIONS(1001), [anon_sym_isize] = ACTIONS(1001), [anon_sym_usize] = ACTIONS(1001), [anon_sym_f32] = ACTIONS(1001), [anon_sym_f64] = ACTIONS(1001), [anon_sym_bool] = ACTIONS(1001), [anon_sym_char] = ACTIONS(1001), [anon_sym_str] = ACTIONS(1001), [anon_sym_LBRACK] = ACTIONS(999), [anon_sym_contract] = ACTIONS(1001), [anon_sym_script] = ACTIONS(1001), [anon_sym_predicate] = ACTIONS(1001), [anon_sym_library] = ACTIONS(1001), [anon_sym_SQUOTE] = ACTIONS(1001), [anon_sym_abi] = ACTIONS(1001), [anon_sym_break] = ACTIONS(1001), [anon_sym_configurable] = ACTIONS(1001), [anon_sym_const] = ACTIONS(1001), [anon_sym_continue] = ACTIONS(1001), [anon_sym_default] = ACTIONS(1001), [anon_sym_mod] = ACTIONS(1001), [anon_sym_enum] = ACTIONS(1001), [anon_sym_fn] = ACTIONS(1001), [anon_sym_for] = ACTIONS(1001), [anon_sym_if] = ACTIONS(1001), [anon_sym_impl] = ACTIONS(1001), [anon_sym_let] = ACTIONS(1001), [anon_sym_match] = ACTIONS(1001), [anon_sym_pub] = ACTIONS(1001), [anon_sym_return] = ACTIONS(1001), [anon_sym_storage] = ACTIONS(1001), [anon_sym_struct] = ACTIONS(1001), [anon_sym_trait] = ACTIONS(1001), [anon_sym_type] = ACTIONS(1001), [anon_sym_use] = ACTIONS(1001), [anon_sym_while] = ACTIONS(1001), [anon_sym_POUND] = ACTIONS(999), [anon_sym_BANG] = ACTIONS(999), [anon_sym_LBRACE] = ACTIONS(999), [anon_sym_RBRACE] = ACTIONS(999), [anon_sym_LPAREN] = ACTIONS(999), [anon_sym_asm] = ACTIONS(1001), [anon_sym_LT] = ACTIONS(999), [anon_sym_COLON_COLON] = ACTIONS(999), [anon_sym_STAR] = ACTIONS(999), [anon_sym_AMP] = ACTIONS(999), [anon_sym_DOT_DOT] = ACTIONS(999), [anon_sym_DASH] = ACTIONS(999), [anon_sym_PIPE] = ACTIONS(999), [anon_sym_yield] = ACTIONS(1001), [anon_sym_move] = ACTIONS(1001), [sym_integer_literal] = ACTIONS(999), [aux_sym_string_literal_token1] = ACTIONS(999), [sym_char_literal] = ACTIONS(999), [anon_sym_true] = ACTIONS(1001), [anon_sym_false] = ACTIONS(1001), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1001), [sym_metavariable] = ACTIONS(999), [sym_raw_string_literal] = ACTIONS(999), [sym_float_literal] = ACTIONS(999), [sym_block_comment] = ACTIONS(3), }, [261] = { [ts_builtin_sym_end] = ACTIONS(1003), [sym_identifier] = ACTIONS(1005), [anon_sym_SEMI] = ACTIONS(1003), [anon_sym_u8] = ACTIONS(1005), [anon_sym_i8] = ACTIONS(1005), [anon_sym_u16] = ACTIONS(1005), [anon_sym_i16] = ACTIONS(1005), [anon_sym_u32] = ACTIONS(1005), [anon_sym_i32] = ACTIONS(1005), [anon_sym_u64] = ACTIONS(1005), [anon_sym_i64] = ACTIONS(1005), [anon_sym_u128] = ACTIONS(1005), [anon_sym_i128] = ACTIONS(1005), [anon_sym_u256] = ACTIONS(1005), [anon_sym_i256] = ACTIONS(1005), [anon_sym_b256] = ACTIONS(1005), [anon_sym_isize] = ACTIONS(1005), [anon_sym_usize] = ACTIONS(1005), [anon_sym_f32] = ACTIONS(1005), [anon_sym_f64] = ACTIONS(1005), [anon_sym_bool] = ACTIONS(1005), [anon_sym_char] = ACTIONS(1005), [anon_sym_str] = ACTIONS(1005), [anon_sym_LBRACK] = ACTIONS(1003), [anon_sym_contract] = ACTIONS(1005), [anon_sym_script] = ACTIONS(1005), [anon_sym_predicate] = ACTIONS(1005), [anon_sym_library] = ACTIONS(1005), [anon_sym_SQUOTE] = ACTIONS(1005), [anon_sym_abi] = ACTIONS(1005), [anon_sym_break] = ACTIONS(1005), [anon_sym_configurable] = ACTIONS(1005), [anon_sym_const] = ACTIONS(1005), [anon_sym_continue] = ACTIONS(1005), [anon_sym_default] = ACTIONS(1005), [anon_sym_mod] = ACTIONS(1005), [anon_sym_enum] = ACTIONS(1005), [anon_sym_fn] = ACTIONS(1005), [anon_sym_for] = ACTIONS(1005), [anon_sym_if] = ACTIONS(1005), [anon_sym_impl] = ACTIONS(1005), [anon_sym_let] = ACTIONS(1005), [anon_sym_match] = ACTIONS(1005), [anon_sym_pub] = ACTIONS(1005), [anon_sym_return] = ACTIONS(1005), [anon_sym_storage] = ACTIONS(1005), [anon_sym_struct] = ACTIONS(1005), [anon_sym_trait] = ACTIONS(1005), [anon_sym_type] = ACTIONS(1005), [anon_sym_use] = ACTIONS(1005), [anon_sym_while] = ACTIONS(1005), [anon_sym_POUND] = ACTIONS(1003), [anon_sym_BANG] = ACTIONS(1003), [anon_sym_LBRACE] = ACTIONS(1003), [anon_sym_RBRACE] = ACTIONS(1003), [anon_sym_LPAREN] = ACTIONS(1003), [anon_sym_asm] = ACTIONS(1005), [anon_sym_LT] = ACTIONS(1003), [anon_sym_COLON_COLON] = ACTIONS(1003), [anon_sym_STAR] = ACTIONS(1003), [anon_sym_AMP] = ACTIONS(1003), [anon_sym_DOT_DOT] = ACTIONS(1003), [anon_sym_DASH] = ACTIONS(1003), [anon_sym_PIPE] = ACTIONS(1003), [anon_sym_yield] = ACTIONS(1005), [anon_sym_move] = ACTIONS(1005), [sym_integer_literal] = ACTIONS(1003), [aux_sym_string_literal_token1] = ACTIONS(1003), [sym_char_literal] = ACTIONS(1003), [anon_sym_true] = ACTIONS(1005), [anon_sym_false] = ACTIONS(1005), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1005), [sym_metavariable] = ACTIONS(1003), [sym_raw_string_literal] = ACTIONS(1003), [sym_float_literal] = ACTIONS(1003), [sym_block_comment] = ACTIONS(3), }, [262] = { [ts_builtin_sym_end] = ACTIONS(1007), [sym_identifier] = ACTIONS(1009), [anon_sym_SEMI] = ACTIONS(1007), [anon_sym_u8] = ACTIONS(1009), [anon_sym_i8] = ACTIONS(1009), [anon_sym_u16] = ACTIONS(1009), [anon_sym_i16] = ACTIONS(1009), [anon_sym_u32] = ACTIONS(1009), [anon_sym_i32] = ACTIONS(1009), [anon_sym_u64] = ACTIONS(1009), [anon_sym_i64] = ACTIONS(1009), [anon_sym_u128] = ACTIONS(1009), [anon_sym_i128] = ACTIONS(1009), [anon_sym_u256] = ACTIONS(1009), [anon_sym_i256] = ACTIONS(1009), [anon_sym_b256] = ACTIONS(1009), [anon_sym_isize] = ACTIONS(1009), [anon_sym_usize] = ACTIONS(1009), [anon_sym_f32] = ACTIONS(1009), [anon_sym_f64] = ACTIONS(1009), [anon_sym_bool] = ACTIONS(1009), [anon_sym_char] = ACTIONS(1009), [anon_sym_str] = ACTIONS(1009), [anon_sym_LBRACK] = ACTIONS(1007), [anon_sym_contract] = ACTIONS(1009), [anon_sym_script] = ACTIONS(1009), [anon_sym_predicate] = ACTIONS(1009), [anon_sym_library] = ACTIONS(1009), [anon_sym_SQUOTE] = ACTIONS(1009), [anon_sym_abi] = ACTIONS(1009), [anon_sym_break] = ACTIONS(1009), [anon_sym_configurable] = ACTIONS(1009), [anon_sym_const] = ACTIONS(1009), [anon_sym_continue] = ACTIONS(1009), [anon_sym_default] = ACTIONS(1009), [anon_sym_mod] = ACTIONS(1009), [anon_sym_enum] = ACTIONS(1009), [anon_sym_fn] = ACTIONS(1009), [anon_sym_for] = ACTIONS(1009), [anon_sym_if] = ACTIONS(1009), [anon_sym_impl] = ACTIONS(1009), [anon_sym_let] = ACTIONS(1009), [anon_sym_match] = ACTIONS(1009), [anon_sym_pub] = ACTIONS(1009), [anon_sym_return] = ACTIONS(1009), [anon_sym_storage] = ACTIONS(1009), [anon_sym_struct] = ACTIONS(1009), [anon_sym_trait] = ACTIONS(1009), [anon_sym_type] = ACTIONS(1009), [anon_sym_use] = ACTIONS(1009), [anon_sym_while] = ACTIONS(1009), [anon_sym_POUND] = ACTIONS(1007), [anon_sym_BANG] = ACTIONS(1007), [anon_sym_LBRACE] = ACTIONS(1007), [anon_sym_RBRACE] = ACTIONS(1007), [anon_sym_LPAREN] = ACTIONS(1007), [anon_sym_asm] = ACTIONS(1009), [anon_sym_LT] = ACTIONS(1007), [anon_sym_COLON_COLON] = ACTIONS(1007), [anon_sym_STAR] = ACTIONS(1007), [anon_sym_AMP] = ACTIONS(1007), [anon_sym_DOT_DOT] = ACTIONS(1007), [anon_sym_DASH] = ACTIONS(1007), [anon_sym_PIPE] = ACTIONS(1007), [anon_sym_yield] = ACTIONS(1009), [anon_sym_move] = ACTIONS(1009), [sym_integer_literal] = ACTIONS(1007), [aux_sym_string_literal_token1] = ACTIONS(1007), [sym_char_literal] = ACTIONS(1007), [anon_sym_true] = ACTIONS(1009), [anon_sym_false] = ACTIONS(1009), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1009), [sym_metavariable] = ACTIONS(1007), [sym_raw_string_literal] = ACTIONS(1007), [sym_float_literal] = ACTIONS(1007), [sym_block_comment] = ACTIONS(3), }, [263] = { [ts_builtin_sym_end] = ACTIONS(1011), [sym_identifier] = ACTIONS(1013), [anon_sym_SEMI] = ACTIONS(1011), [anon_sym_u8] = ACTIONS(1013), [anon_sym_i8] = ACTIONS(1013), [anon_sym_u16] = ACTIONS(1013), [anon_sym_i16] = ACTIONS(1013), [anon_sym_u32] = ACTIONS(1013), [anon_sym_i32] = ACTIONS(1013), [anon_sym_u64] = ACTIONS(1013), [anon_sym_i64] = ACTIONS(1013), [anon_sym_u128] = ACTIONS(1013), [anon_sym_i128] = ACTIONS(1013), [anon_sym_u256] = ACTIONS(1013), [anon_sym_i256] = ACTIONS(1013), [anon_sym_b256] = ACTIONS(1013), [anon_sym_isize] = ACTIONS(1013), [anon_sym_usize] = ACTIONS(1013), [anon_sym_f32] = ACTIONS(1013), [anon_sym_f64] = ACTIONS(1013), [anon_sym_bool] = ACTIONS(1013), [anon_sym_char] = ACTIONS(1013), [anon_sym_str] = ACTIONS(1013), [anon_sym_LBRACK] = ACTIONS(1011), [anon_sym_contract] = ACTIONS(1013), [anon_sym_script] = ACTIONS(1013), [anon_sym_predicate] = ACTIONS(1013), [anon_sym_library] = ACTIONS(1013), [anon_sym_SQUOTE] = ACTIONS(1013), [anon_sym_abi] = ACTIONS(1013), [anon_sym_break] = ACTIONS(1013), [anon_sym_configurable] = ACTIONS(1013), [anon_sym_const] = ACTIONS(1013), [anon_sym_continue] = ACTIONS(1013), [anon_sym_default] = ACTIONS(1013), [anon_sym_mod] = ACTIONS(1013), [anon_sym_enum] = ACTIONS(1013), [anon_sym_fn] = ACTIONS(1013), [anon_sym_for] = ACTIONS(1013), [anon_sym_if] = ACTIONS(1013), [anon_sym_impl] = ACTIONS(1013), [anon_sym_let] = ACTIONS(1013), [anon_sym_match] = ACTIONS(1013), [anon_sym_pub] = ACTIONS(1013), [anon_sym_return] = ACTIONS(1013), [anon_sym_storage] = ACTIONS(1013), [anon_sym_struct] = ACTIONS(1013), [anon_sym_trait] = ACTIONS(1013), [anon_sym_type] = ACTIONS(1013), [anon_sym_use] = ACTIONS(1013), [anon_sym_while] = ACTIONS(1013), [anon_sym_POUND] = ACTIONS(1011), [anon_sym_BANG] = ACTIONS(1011), [anon_sym_LBRACE] = ACTIONS(1011), [anon_sym_RBRACE] = ACTIONS(1011), [anon_sym_LPAREN] = ACTIONS(1011), [anon_sym_asm] = ACTIONS(1013), [anon_sym_LT] = ACTIONS(1011), [anon_sym_COLON_COLON] = ACTIONS(1011), [anon_sym_STAR] = ACTIONS(1011), [anon_sym_AMP] = ACTIONS(1011), [anon_sym_DOT_DOT] = ACTIONS(1011), [anon_sym_DASH] = ACTIONS(1011), [anon_sym_PIPE] = ACTIONS(1011), [anon_sym_yield] = ACTIONS(1013), [anon_sym_move] = ACTIONS(1013), [sym_integer_literal] = ACTIONS(1011), [aux_sym_string_literal_token1] = ACTIONS(1011), [sym_char_literal] = ACTIONS(1011), [anon_sym_true] = ACTIONS(1013), [anon_sym_false] = ACTIONS(1013), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1013), [sym_metavariable] = ACTIONS(1011), [sym_raw_string_literal] = ACTIONS(1011), [sym_float_literal] = ACTIONS(1011), [sym_block_comment] = ACTIONS(3), }, [264] = { [ts_builtin_sym_end] = ACTIONS(1015), [sym_identifier] = ACTIONS(1017), [anon_sym_SEMI] = ACTIONS(1015), [anon_sym_u8] = ACTIONS(1017), [anon_sym_i8] = ACTIONS(1017), [anon_sym_u16] = ACTIONS(1017), [anon_sym_i16] = ACTIONS(1017), [anon_sym_u32] = ACTIONS(1017), [anon_sym_i32] = ACTIONS(1017), [anon_sym_u64] = ACTIONS(1017), [anon_sym_i64] = ACTIONS(1017), [anon_sym_u128] = ACTIONS(1017), [anon_sym_i128] = ACTIONS(1017), [anon_sym_u256] = ACTIONS(1017), [anon_sym_i256] = ACTIONS(1017), [anon_sym_b256] = ACTIONS(1017), [anon_sym_isize] = ACTIONS(1017), [anon_sym_usize] = ACTIONS(1017), [anon_sym_f32] = ACTIONS(1017), [anon_sym_f64] = ACTIONS(1017), [anon_sym_bool] = ACTIONS(1017), [anon_sym_char] = ACTIONS(1017), [anon_sym_str] = ACTIONS(1017), [anon_sym_LBRACK] = ACTIONS(1015), [anon_sym_contract] = ACTIONS(1017), [anon_sym_script] = ACTIONS(1017), [anon_sym_predicate] = ACTIONS(1017), [anon_sym_library] = ACTIONS(1017), [anon_sym_SQUOTE] = ACTIONS(1017), [anon_sym_abi] = ACTIONS(1017), [anon_sym_break] = ACTIONS(1017), [anon_sym_configurable] = ACTIONS(1017), [anon_sym_const] = ACTIONS(1017), [anon_sym_continue] = ACTIONS(1017), [anon_sym_default] = ACTIONS(1017), [anon_sym_mod] = ACTIONS(1017), [anon_sym_enum] = ACTIONS(1017), [anon_sym_fn] = ACTIONS(1017), [anon_sym_for] = ACTIONS(1017), [anon_sym_if] = ACTIONS(1017), [anon_sym_impl] = ACTIONS(1017), [anon_sym_let] = ACTIONS(1017), [anon_sym_match] = ACTIONS(1017), [anon_sym_pub] = ACTIONS(1017), [anon_sym_return] = ACTIONS(1017), [anon_sym_storage] = ACTIONS(1017), [anon_sym_struct] = ACTIONS(1017), [anon_sym_trait] = ACTIONS(1017), [anon_sym_type] = ACTIONS(1017), [anon_sym_use] = ACTIONS(1017), [anon_sym_while] = ACTIONS(1017), [anon_sym_POUND] = ACTIONS(1015), [anon_sym_BANG] = ACTIONS(1015), [anon_sym_LBRACE] = ACTIONS(1015), [anon_sym_RBRACE] = ACTIONS(1015), [anon_sym_LPAREN] = ACTIONS(1015), [anon_sym_asm] = ACTIONS(1017), [anon_sym_LT] = ACTIONS(1015), [anon_sym_COLON_COLON] = ACTIONS(1015), [anon_sym_STAR] = ACTIONS(1015), [anon_sym_AMP] = ACTIONS(1015), [anon_sym_DOT_DOT] = ACTIONS(1015), [anon_sym_DASH] = ACTIONS(1015), [anon_sym_PIPE] = ACTIONS(1015), [anon_sym_yield] = ACTIONS(1017), [anon_sym_move] = ACTIONS(1017), [sym_integer_literal] = ACTIONS(1015), [aux_sym_string_literal_token1] = ACTIONS(1015), [sym_char_literal] = ACTIONS(1015), [anon_sym_true] = ACTIONS(1017), [anon_sym_false] = ACTIONS(1017), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1017), [sym_metavariable] = ACTIONS(1015), [sym_raw_string_literal] = ACTIONS(1015), [sym_float_literal] = ACTIONS(1015), [sym_block_comment] = ACTIONS(3), }, [265] = { [ts_builtin_sym_end] = ACTIONS(1019), [sym_identifier] = ACTIONS(1021), [anon_sym_SEMI] = ACTIONS(1019), [anon_sym_u8] = ACTIONS(1021), [anon_sym_i8] = ACTIONS(1021), [anon_sym_u16] = ACTIONS(1021), [anon_sym_i16] = ACTIONS(1021), [anon_sym_u32] = ACTIONS(1021), [anon_sym_i32] = ACTIONS(1021), [anon_sym_u64] = ACTIONS(1021), [anon_sym_i64] = ACTIONS(1021), [anon_sym_u128] = ACTIONS(1021), [anon_sym_i128] = ACTIONS(1021), [anon_sym_u256] = ACTIONS(1021), [anon_sym_i256] = ACTIONS(1021), [anon_sym_b256] = ACTIONS(1021), [anon_sym_isize] = ACTIONS(1021), [anon_sym_usize] = ACTIONS(1021), [anon_sym_f32] = ACTIONS(1021), [anon_sym_f64] = ACTIONS(1021), [anon_sym_bool] = ACTIONS(1021), [anon_sym_char] = ACTIONS(1021), [anon_sym_str] = ACTIONS(1021), [anon_sym_LBRACK] = ACTIONS(1019), [anon_sym_contract] = ACTIONS(1021), [anon_sym_script] = ACTIONS(1021), [anon_sym_predicate] = ACTIONS(1021), [anon_sym_library] = ACTIONS(1021), [anon_sym_SQUOTE] = ACTIONS(1021), [anon_sym_abi] = ACTIONS(1021), [anon_sym_break] = ACTIONS(1021), [anon_sym_configurable] = ACTIONS(1021), [anon_sym_const] = ACTIONS(1021), [anon_sym_continue] = ACTIONS(1021), [anon_sym_default] = ACTIONS(1021), [anon_sym_mod] = ACTIONS(1021), [anon_sym_enum] = ACTIONS(1021), [anon_sym_fn] = ACTIONS(1021), [anon_sym_for] = ACTIONS(1021), [anon_sym_if] = ACTIONS(1021), [anon_sym_impl] = ACTIONS(1021), [anon_sym_let] = ACTIONS(1021), [anon_sym_match] = ACTIONS(1021), [anon_sym_pub] = ACTIONS(1021), [anon_sym_return] = ACTIONS(1021), [anon_sym_storage] = ACTIONS(1021), [anon_sym_struct] = ACTIONS(1021), [anon_sym_trait] = ACTIONS(1021), [anon_sym_type] = ACTIONS(1021), [anon_sym_use] = ACTIONS(1021), [anon_sym_while] = ACTIONS(1021), [anon_sym_POUND] = ACTIONS(1019), [anon_sym_BANG] = ACTIONS(1019), [anon_sym_LBRACE] = ACTIONS(1019), [anon_sym_RBRACE] = ACTIONS(1019), [anon_sym_LPAREN] = ACTIONS(1019), [anon_sym_asm] = ACTIONS(1021), [anon_sym_LT] = ACTIONS(1019), [anon_sym_COLON_COLON] = ACTIONS(1019), [anon_sym_STAR] = ACTIONS(1019), [anon_sym_AMP] = ACTIONS(1019), [anon_sym_DOT_DOT] = ACTIONS(1019), [anon_sym_DASH] = ACTIONS(1019), [anon_sym_PIPE] = ACTIONS(1019), [anon_sym_yield] = ACTIONS(1021), [anon_sym_move] = ACTIONS(1021), [sym_integer_literal] = ACTIONS(1019), [aux_sym_string_literal_token1] = ACTIONS(1019), [sym_char_literal] = ACTIONS(1019), [anon_sym_true] = ACTIONS(1021), [anon_sym_false] = ACTIONS(1021), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1021), [sym_metavariable] = ACTIONS(1019), [sym_raw_string_literal] = ACTIONS(1019), [sym_float_literal] = ACTIONS(1019), [sym_block_comment] = ACTIONS(3), }, [266] = { [ts_builtin_sym_end] = ACTIONS(1023), [sym_identifier] = ACTIONS(1025), [anon_sym_SEMI] = ACTIONS(1023), [anon_sym_u8] = ACTIONS(1025), [anon_sym_i8] = ACTIONS(1025), [anon_sym_u16] = ACTIONS(1025), [anon_sym_i16] = ACTIONS(1025), [anon_sym_u32] = ACTIONS(1025), [anon_sym_i32] = ACTIONS(1025), [anon_sym_u64] = ACTIONS(1025), [anon_sym_i64] = ACTIONS(1025), [anon_sym_u128] = ACTIONS(1025), [anon_sym_i128] = ACTIONS(1025), [anon_sym_u256] = ACTIONS(1025), [anon_sym_i256] = ACTIONS(1025), [anon_sym_b256] = ACTIONS(1025), [anon_sym_isize] = ACTIONS(1025), [anon_sym_usize] = ACTIONS(1025), [anon_sym_f32] = ACTIONS(1025), [anon_sym_f64] = ACTIONS(1025), [anon_sym_bool] = ACTIONS(1025), [anon_sym_char] = ACTIONS(1025), [anon_sym_str] = ACTIONS(1025), [anon_sym_LBRACK] = ACTIONS(1023), [anon_sym_contract] = ACTIONS(1025), [anon_sym_script] = ACTIONS(1025), [anon_sym_predicate] = ACTIONS(1025), [anon_sym_library] = ACTIONS(1025), [anon_sym_SQUOTE] = ACTIONS(1025), [anon_sym_abi] = ACTIONS(1025), [anon_sym_break] = ACTIONS(1025), [anon_sym_configurable] = ACTIONS(1025), [anon_sym_const] = ACTIONS(1025), [anon_sym_continue] = ACTIONS(1025), [anon_sym_default] = ACTIONS(1025), [anon_sym_mod] = ACTIONS(1025), [anon_sym_enum] = ACTIONS(1025), [anon_sym_fn] = ACTIONS(1025), [anon_sym_for] = ACTIONS(1025), [anon_sym_if] = ACTIONS(1025), [anon_sym_impl] = ACTIONS(1025), [anon_sym_let] = ACTIONS(1025), [anon_sym_match] = ACTIONS(1025), [anon_sym_pub] = ACTIONS(1025), [anon_sym_return] = ACTIONS(1025), [anon_sym_storage] = ACTIONS(1025), [anon_sym_struct] = ACTIONS(1025), [anon_sym_trait] = ACTIONS(1025), [anon_sym_type] = ACTIONS(1025), [anon_sym_use] = ACTIONS(1025), [anon_sym_while] = ACTIONS(1025), [anon_sym_POUND] = ACTIONS(1023), [anon_sym_BANG] = ACTIONS(1023), [anon_sym_LBRACE] = ACTIONS(1023), [anon_sym_RBRACE] = ACTIONS(1023), [anon_sym_LPAREN] = ACTIONS(1023), [anon_sym_asm] = ACTIONS(1025), [anon_sym_LT] = ACTIONS(1023), [anon_sym_COLON_COLON] = ACTIONS(1023), [anon_sym_STAR] = ACTIONS(1023), [anon_sym_AMP] = ACTIONS(1023), [anon_sym_DOT_DOT] = ACTIONS(1023), [anon_sym_DASH] = ACTIONS(1023), [anon_sym_PIPE] = ACTIONS(1023), [anon_sym_yield] = ACTIONS(1025), [anon_sym_move] = ACTIONS(1025), [sym_integer_literal] = ACTIONS(1023), [aux_sym_string_literal_token1] = ACTIONS(1023), [sym_char_literal] = ACTIONS(1023), [anon_sym_true] = ACTIONS(1025), [anon_sym_false] = ACTIONS(1025), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1025), [sym_metavariable] = ACTIONS(1023), [sym_raw_string_literal] = ACTIONS(1023), [sym_float_literal] = ACTIONS(1023), [sym_block_comment] = ACTIONS(3), }, [267] = { [ts_builtin_sym_end] = ACTIONS(1027), [sym_identifier] = ACTIONS(1029), [anon_sym_SEMI] = ACTIONS(1027), [anon_sym_u8] = ACTIONS(1029), [anon_sym_i8] = ACTIONS(1029), [anon_sym_u16] = ACTIONS(1029), [anon_sym_i16] = ACTIONS(1029), [anon_sym_u32] = ACTIONS(1029), [anon_sym_i32] = ACTIONS(1029), [anon_sym_u64] = ACTIONS(1029), [anon_sym_i64] = ACTIONS(1029), [anon_sym_u128] = ACTIONS(1029), [anon_sym_i128] = ACTIONS(1029), [anon_sym_u256] = ACTIONS(1029), [anon_sym_i256] = ACTIONS(1029), [anon_sym_b256] = ACTIONS(1029), [anon_sym_isize] = ACTIONS(1029), [anon_sym_usize] = ACTIONS(1029), [anon_sym_f32] = ACTIONS(1029), [anon_sym_f64] = ACTIONS(1029), [anon_sym_bool] = ACTIONS(1029), [anon_sym_char] = ACTIONS(1029), [anon_sym_str] = ACTIONS(1029), [anon_sym_LBRACK] = ACTIONS(1027), [anon_sym_contract] = ACTIONS(1029), [anon_sym_script] = ACTIONS(1029), [anon_sym_predicate] = ACTIONS(1029), [anon_sym_library] = ACTIONS(1029), [anon_sym_SQUOTE] = ACTIONS(1029), [anon_sym_abi] = ACTIONS(1029), [anon_sym_break] = ACTIONS(1029), [anon_sym_configurable] = ACTIONS(1029), [anon_sym_const] = ACTIONS(1029), [anon_sym_continue] = ACTIONS(1029), [anon_sym_default] = ACTIONS(1029), [anon_sym_mod] = ACTIONS(1029), [anon_sym_enum] = ACTIONS(1029), [anon_sym_fn] = ACTIONS(1029), [anon_sym_for] = ACTIONS(1029), [anon_sym_if] = ACTIONS(1029), [anon_sym_impl] = ACTIONS(1029), [anon_sym_let] = ACTIONS(1029), [anon_sym_match] = ACTIONS(1029), [anon_sym_pub] = ACTIONS(1029), [anon_sym_return] = ACTIONS(1029), [anon_sym_storage] = ACTIONS(1029), [anon_sym_struct] = ACTIONS(1029), [anon_sym_trait] = ACTIONS(1029), [anon_sym_type] = ACTIONS(1029), [anon_sym_use] = ACTIONS(1029), [anon_sym_while] = ACTIONS(1029), [anon_sym_POUND] = ACTIONS(1027), [anon_sym_BANG] = ACTIONS(1027), [anon_sym_LBRACE] = ACTIONS(1027), [anon_sym_RBRACE] = ACTIONS(1027), [anon_sym_LPAREN] = ACTIONS(1027), [anon_sym_asm] = ACTIONS(1029), [anon_sym_LT] = ACTIONS(1027), [anon_sym_COLON_COLON] = ACTIONS(1027), [anon_sym_STAR] = ACTIONS(1027), [anon_sym_AMP] = ACTIONS(1027), [anon_sym_DOT_DOT] = ACTIONS(1027), [anon_sym_DASH] = ACTIONS(1027), [anon_sym_PIPE] = ACTIONS(1027), [anon_sym_yield] = ACTIONS(1029), [anon_sym_move] = ACTIONS(1029), [sym_integer_literal] = ACTIONS(1027), [aux_sym_string_literal_token1] = ACTIONS(1027), [sym_char_literal] = ACTIONS(1027), [anon_sym_true] = ACTIONS(1029), [anon_sym_false] = ACTIONS(1029), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1029), [sym_metavariable] = ACTIONS(1027), [sym_raw_string_literal] = ACTIONS(1027), [sym_float_literal] = ACTIONS(1027), [sym_block_comment] = ACTIONS(3), }, [268] = { [ts_builtin_sym_end] = ACTIONS(1031), [sym_identifier] = ACTIONS(1033), [anon_sym_SEMI] = ACTIONS(1031), [anon_sym_u8] = ACTIONS(1033), [anon_sym_i8] = ACTIONS(1033), [anon_sym_u16] = ACTIONS(1033), [anon_sym_i16] = ACTIONS(1033), [anon_sym_u32] = ACTIONS(1033), [anon_sym_i32] = ACTIONS(1033), [anon_sym_u64] = ACTIONS(1033), [anon_sym_i64] = ACTIONS(1033), [anon_sym_u128] = ACTIONS(1033), [anon_sym_i128] = ACTIONS(1033), [anon_sym_u256] = ACTIONS(1033), [anon_sym_i256] = ACTIONS(1033), [anon_sym_b256] = ACTIONS(1033), [anon_sym_isize] = ACTIONS(1033), [anon_sym_usize] = ACTIONS(1033), [anon_sym_f32] = ACTIONS(1033), [anon_sym_f64] = ACTIONS(1033), [anon_sym_bool] = ACTIONS(1033), [anon_sym_char] = ACTIONS(1033), [anon_sym_str] = ACTIONS(1033), [anon_sym_LBRACK] = ACTIONS(1031), [anon_sym_contract] = ACTIONS(1033), [anon_sym_script] = ACTIONS(1033), [anon_sym_predicate] = ACTIONS(1033), [anon_sym_library] = ACTIONS(1033), [anon_sym_SQUOTE] = ACTIONS(1033), [anon_sym_abi] = ACTIONS(1033), [anon_sym_break] = ACTIONS(1033), [anon_sym_configurable] = ACTIONS(1033), [anon_sym_const] = ACTIONS(1033), [anon_sym_continue] = ACTIONS(1033), [anon_sym_default] = ACTIONS(1033), [anon_sym_mod] = ACTIONS(1033), [anon_sym_enum] = ACTIONS(1033), [anon_sym_fn] = ACTIONS(1033), [anon_sym_for] = ACTIONS(1033), [anon_sym_if] = ACTIONS(1033), [anon_sym_impl] = ACTIONS(1033), [anon_sym_let] = ACTIONS(1033), [anon_sym_match] = ACTIONS(1033), [anon_sym_pub] = ACTIONS(1033), [anon_sym_return] = ACTIONS(1033), [anon_sym_storage] = ACTIONS(1033), [anon_sym_struct] = ACTIONS(1033), [anon_sym_trait] = ACTIONS(1033), [anon_sym_type] = ACTIONS(1033), [anon_sym_use] = ACTIONS(1033), [anon_sym_while] = ACTIONS(1033), [anon_sym_POUND] = ACTIONS(1031), [anon_sym_BANG] = ACTIONS(1031), [anon_sym_LBRACE] = ACTIONS(1031), [anon_sym_RBRACE] = ACTIONS(1031), [anon_sym_LPAREN] = ACTIONS(1031), [anon_sym_asm] = ACTIONS(1033), [anon_sym_LT] = ACTIONS(1031), [anon_sym_COLON_COLON] = ACTIONS(1031), [anon_sym_STAR] = ACTIONS(1031), [anon_sym_AMP] = ACTIONS(1031), [anon_sym_DOT_DOT] = ACTIONS(1031), [anon_sym_DASH] = ACTIONS(1031), [anon_sym_PIPE] = ACTIONS(1031), [anon_sym_yield] = ACTIONS(1033), [anon_sym_move] = ACTIONS(1033), [sym_integer_literal] = ACTIONS(1031), [aux_sym_string_literal_token1] = ACTIONS(1031), [sym_char_literal] = ACTIONS(1031), [anon_sym_true] = ACTIONS(1033), [anon_sym_false] = ACTIONS(1033), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1033), [sym_metavariable] = ACTIONS(1031), [sym_raw_string_literal] = ACTIONS(1031), [sym_float_literal] = ACTIONS(1031), [sym_block_comment] = ACTIONS(3), }, [269] = { [ts_builtin_sym_end] = ACTIONS(1035), [sym_identifier] = ACTIONS(1037), [anon_sym_SEMI] = ACTIONS(1035), [anon_sym_u8] = ACTIONS(1037), [anon_sym_i8] = ACTIONS(1037), [anon_sym_u16] = ACTIONS(1037), [anon_sym_i16] = ACTIONS(1037), [anon_sym_u32] = ACTIONS(1037), [anon_sym_i32] = ACTIONS(1037), [anon_sym_u64] = ACTIONS(1037), [anon_sym_i64] = ACTIONS(1037), [anon_sym_u128] = ACTIONS(1037), [anon_sym_i128] = ACTIONS(1037), [anon_sym_u256] = ACTIONS(1037), [anon_sym_i256] = ACTIONS(1037), [anon_sym_b256] = ACTIONS(1037), [anon_sym_isize] = ACTIONS(1037), [anon_sym_usize] = ACTIONS(1037), [anon_sym_f32] = ACTIONS(1037), [anon_sym_f64] = ACTIONS(1037), [anon_sym_bool] = ACTIONS(1037), [anon_sym_char] = ACTIONS(1037), [anon_sym_str] = ACTIONS(1037), [anon_sym_LBRACK] = ACTIONS(1035), [anon_sym_contract] = ACTIONS(1037), [anon_sym_script] = ACTIONS(1037), [anon_sym_predicate] = ACTIONS(1037), [anon_sym_library] = ACTIONS(1037), [anon_sym_SQUOTE] = ACTIONS(1037), [anon_sym_abi] = ACTIONS(1037), [anon_sym_break] = ACTIONS(1037), [anon_sym_configurable] = ACTIONS(1037), [anon_sym_const] = ACTIONS(1037), [anon_sym_continue] = ACTIONS(1037), [anon_sym_default] = ACTIONS(1037), [anon_sym_mod] = ACTIONS(1037), [anon_sym_enum] = ACTIONS(1037), [anon_sym_fn] = ACTIONS(1037), [anon_sym_for] = ACTIONS(1037), [anon_sym_if] = ACTIONS(1037), [anon_sym_impl] = ACTIONS(1037), [anon_sym_let] = ACTIONS(1037), [anon_sym_match] = ACTIONS(1037), [anon_sym_pub] = ACTIONS(1037), [anon_sym_return] = ACTIONS(1037), [anon_sym_storage] = ACTIONS(1037), [anon_sym_struct] = ACTIONS(1037), [anon_sym_trait] = ACTIONS(1037), [anon_sym_type] = ACTIONS(1037), [anon_sym_use] = ACTIONS(1037), [anon_sym_while] = ACTIONS(1037), [anon_sym_POUND] = ACTIONS(1035), [anon_sym_BANG] = ACTIONS(1035), [anon_sym_LBRACE] = ACTIONS(1035), [anon_sym_RBRACE] = ACTIONS(1035), [anon_sym_LPAREN] = ACTIONS(1035), [anon_sym_asm] = ACTIONS(1037), [anon_sym_LT] = ACTIONS(1035), [anon_sym_COLON_COLON] = ACTIONS(1035), [anon_sym_STAR] = ACTIONS(1035), [anon_sym_AMP] = ACTIONS(1035), [anon_sym_DOT_DOT] = ACTIONS(1035), [anon_sym_DASH] = ACTIONS(1035), [anon_sym_PIPE] = ACTIONS(1035), [anon_sym_yield] = ACTIONS(1037), [anon_sym_move] = ACTIONS(1037), [sym_integer_literal] = ACTIONS(1035), [aux_sym_string_literal_token1] = ACTIONS(1035), [sym_char_literal] = ACTIONS(1035), [anon_sym_true] = ACTIONS(1037), [anon_sym_false] = ACTIONS(1037), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1037), [sym_metavariable] = ACTIONS(1035), [sym_raw_string_literal] = ACTIONS(1035), [sym_float_literal] = ACTIONS(1035), [sym_block_comment] = ACTIONS(3), }, [270] = { [ts_builtin_sym_end] = ACTIONS(1039), [sym_identifier] = ACTIONS(1041), [anon_sym_SEMI] = ACTIONS(1039), [anon_sym_u8] = ACTIONS(1041), [anon_sym_i8] = ACTIONS(1041), [anon_sym_u16] = ACTIONS(1041), [anon_sym_i16] = ACTIONS(1041), [anon_sym_u32] = ACTIONS(1041), [anon_sym_i32] = ACTIONS(1041), [anon_sym_u64] = ACTIONS(1041), [anon_sym_i64] = ACTIONS(1041), [anon_sym_u128] = ACTIONS(1041), [anon_sym_i128] = ACTIONS(1041), [anon_sym_u256] = ACTIONS(1041), [anon_sym_i256] = ACTIONS(1041), [anon_sym_b256] = ACTIONS(1041), [anon_sym_isize] = ACTIONS(1041), [anon_sym_usize] = ACTIONS(1041), [anon_sym_f32] = ACTIONS(1041), [anon_sym_f64] = ACTIONS(1041), [anon_sym_bool] = ACTIONS(1041), [anon_sym_char] = ACTIONS(1041), [anon_sym_str] = ACTIONS(1041), [anon_sym_LBRACK] = ACTIONS(1039), [anon_sym_contract] = ACTIONS(1041), [anon_sym_script] = ACTIONS(1041), [anon_sym_predicate] = ACTIONS(1041), [anon_sym_library] = ACTIONS(1041), [anon_sym_SQUOTE] = ACTIONS(1041), [anon_sym_abi] = ACTIONS(1041), [anon_sym_break] = ACTIONS(1041), [anon_sym_configurable] = ACTIONS(1041), [anon_sym_const] = ACTIONS(1041), [anon_sym_continue] = ACTIONS(1041), [anon_sym_default] = ACTIONS(1041), [anon_sym_mod] = ACTIONS(1041), [anon_sym_enum] = ACTIONS(1041), [anon_sym_fn] = ACTIONS(1041), [anon_sym_for] = ACTIONS(1041), [anon_sym_if] = ACTIONS(1041), [anon_sym_impl] = ACTIONS(1041), [anon_sym_let] = ACTIONS(1041), [anon_sym_match] = ACTIONS(1041), [anon_sym_pub] = ACTIONS(1041), [anon_sym_return] = ACTIONS(1041), [anon_sym_storage] = ACTIONS(1041), [anon_sym_struct] = ACTIONS(1041), [anon_sym_trait] = ACTIONS(1041), [anon_sym_type] = ACTIONS(1041), [anon_sym_use] = ACTIONS(1041), [anon_sym_while] = ACTIONS(1041), [anon_sym_POUND] = ACTIONS(1039), [anon_sym_BANG] = ACTIONS(1039), [anon_sym_LBRACE] = ACTIONS(1039), [anon_sym_RBRACE] = ACTIONS(1039), [anon_sym_LPAREN] = ACTIONS(1039), [anon_sym_asm] = ACTIONS(1041), [anon_sym_LT] = ACTIONS(1039), [anon_sym_COLON_COLON] = ACTIONS(1039), [anon_sym_STAR] = ACTIONS(1039), [anon_sym_AMP] = ACTIONS(1039), [anon_sym_DOT_DOT] = ACTIONS(1039), [anon_sym_DASH] = ACTIONS(1039), [anon_sym_PIPE] = ACTIONS(1039), [anon_sym_yield] = ACTIONS(1041), [anon_sym_move] = ACTIONS(1041), [sym_integer_literal] = ACTIONS(1039), [aux_sym_string_literal_token1] = ACTIONS(1039), [sym_char_literal] = ACTIONS(1039), [anon_sym_true] = ACTIONS(1041), [anon_sym_false] = ACTIONS(1041), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1041), [sym_metavariable] = ACTIONS(1039), [sym_raw_string_literal] = ACTIONS(1039), [sym_float_literal] = ACTIONS(1039), [sym_block_comment] = ACTIONS(3), }, [271] = { [ts_builtin_sym_end] = ACTIONS(1043), [sym_identifier] = ACTIONS(1045), [anon_sym_SEMI] = ACTIONS(1043), [anon_sym_u8] = ACTIONS(1045), [anon_sym_i8] = ACTIONS(1045), [anon_sym_u16] = ACTIONS(1045), [anon_sym_i16] = ACTIONS(1045), [anon_sym_u32] = ACTIONS(1045), [anon_sym_i32] = ACTIONS(1045), [anon_sym_u64] = ACTIONS(1045), [anon_sym_i64] = ACTIONS(1045), [anon_sym_u128] = ACTIONS(1045), [anon_sym_i128] = ACTIONS(1045), [anon_sym_u256] = ACTIONS(1045), [anon_sym_i256] = ACTIONS(1045), [anon_sym_b256] = ACTIONS(1045), [anon_sym_isize] = ACTIONS(1045), [anon_sym_usize] = ACTIONS(1045), [anon_sym_f32] = ACTIONS(1045), [anon_sym_f64] = ACTIONS(1045), [anon_sym_bool] = ACTIONS(1045), [anon_sym_char] = ACTIONS(1045), [anon_sym_str] = ACTIONS(1045), [anon_sym_LBRACK] = ACTIONS(1043), [anon_sym_contract] = ACTIONS(1045), [anon_sym_script] = ACTIONS(1045), [anon_sym_predicate] = ACTIONS(1045), [anon_sym_library] = ACTIONS(1045), [anon_sym_SQUOTE] = ACTIONS(1045), [anon_sym_abi] = ACTIONS(1045), [anon_sym_break] = ACTIONS(1045), [anon_sym_configurable] = ACTIONS(1045), [anon_sym_const] = ACTIONS(1045), [anon_sym_continue] = ACTIONS(1045), [anon_sym_default] = ACTIONS(1045), [anon_sym_mod] = ACTIONS(1045), [anon_sym_enum] = ACTIONS(1045), [anon_sym_fn] = ACTIONS(1045), [anon_sym_for] = ACTIONS(1045), [anon_sym_if] = ACTIONS(1045), [anon_sym_impl] = ACTIONS(1045), [anon_sym_let] = ACTIONS(1045), [anon_sym_match] = ACTIONS(1045), [anon_sym_pub] = ACTIONS(1045), [anon_sym_return] = ACTIONS(1045), [anon_sym_storage] = ACTIONS(1045), [anon_sym_struct] = ACTIONS(1045), [anon_sym_trait] = ACTIONS(1045), [anon_sym_type] = ACTIONS(1045), [anon_sym_use] = ACTIONS(1045), [anon_sym_while] = ACTIONS(1045), [anon_sym_POUND] = ACTIONS(1043), [anon_sym_BANG] = ACTIONS(1043), [anon_sym_LBRACE] = ACTIONS(1043), [anon_sym_RBRACE] = ACTIONS(1043), [anon_sym_LPAREN] = ACTIONS(1043), [anon_sym_asm] = ACTIONS(1045), [anon_sym_LT] = ACTIONS(1043), [anon_sym_COLON_COLON] = ACTIONS(1043), [anon_sym_STAR] = ACTIONS(1043), [anon_sym_AMP] = ACTIONS(1043), [anon_sym_DOT_DOT] = ACTIONS(1043), [anon_sym_DASH] = ACTIONS(1043), [anon_sym_PIPE] = ACTIONS(1043), [anon_sym_yield] = ACTIONS(1045), [anon_sym_move] = ACTIONS(1045), [sym_integer_literal] = ACTIONS(1043), [aux_sym_string_literal_token1] = ACTIONS(1043), [sym_char_literal] = ACTIONS(1043), [anon_sym_true] = ACTIONS(1045), [anon_sym_false] = ACTIONS(1045), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1045), [sym_metavariable] = ACTIONS(1043), [sym_raw_string_literal] = ACTIONS(1043), [sym_float_literal] = ACTIONS(1043), [sym_block_comment] = ACTIONS(3), }, [272] = { [ts_builtin_sym_end] = ACTIONS(1047), [sym_identifier] = ACTIONS(1049), [anon_sym_SEMI] = ACTIONS(1047), [anon_sym_u8] = ACTIONS(1049), [anon_sym_i8] = ACTIONS(1049), [anon_sym_u16] = ACTIONS(1049), [anon_sym_i16] = ACTIONS(1049), [anon_sym_u32] = ACTIONS(1049), [anon_sym_i32] = ACTIONS(1049), [anon_sym_u64] = ACTIONS(1049), [anon_sym_i64] = ACTIONS(1049), [anon_sym_u128] = ACTIONS(1049), [anon_sym_i128] = ACTIONS(1049), [anon_sym_u256] = ACTIONS(1049), [anon_sym_i256] = ACTIONS(1049), [anon_sym_b256] = ACTIONS(1049), [anon_sym_isize] = ACTIONS(1049), [anon_sym_usize] = ACTIONS(1049), [anon_sym_f32] = ACTIONS(1049), [anon_sym_f64] = ACTIONS(1049), [anon_sym_bool] = ACTIONS(1049), [anon_sym_char] = ACTIONS(1049), [anon_sym_str] = ACTIONS(1049), [anon_sym_LBRACK] = ACTIONS(1047), [anon_sym_contract] = ACTIONS(1049), [anon_sym_script] = ACTIONS(1049), [anon_sym_predicate] = ACTIONS(1049), [anon_sym_library] = ACTIONS(1049), [anon_sym_SQUOTE] = ACTIONS(1049), [anon_sym_abi] = ACTIONS(1049), [anon_sym_break] = ACTIONS(1049), [anon_sym_configurable] = ACTIONS(1049), [anon_sym_const] = ACTIONS(1049), [anon_sym_continue] = ACTIONS(1049), [anon_sym_default] = ACTIONS(1049), [anon_sym_mod] = ACTIONS(1049), [anon_sym_enum] = ACTIONS(1049), [anon_sym_fn] = ACTIONS(1049), [anon_sym_for] = ACTIONS(1049), [anon_sym_if] = ACTIONS(1049), [anon_sym_impl] = ACTIONS(1049), [anon_sym_let] = ACTIONS(1049), [anon_sym_match] = ACTIONS(1049), [anon_sym_pub] = ACTIONS(1049), [anon_sym_return] = ACTIONS(1049), [anon_sym_storage] = ACTIONS(1049), [anon_sym_struct] = ACTIONS(1049), [anon_sym_trait] = ACTIONS(1049), [anon_sym_type] = ACTIONS(1049), [anon_sym_use] = ACTIONS(1049), [anon_sym_while] = ACTIONS(1049), [anon_sym_POUND] = ACTIONS(1047), [anon_sym_BANG] = ACTIONS(1047), [anon_sym_LBRACE] = ACTIONS(1047), [anon_sym_RBRACE] = ACTIONS(1047), [anon_sym_LPAREN] = ACTIONS(1047), [anon_sym_asm] = ACTIONS(1049), [anon_sym_LT] = ACTIONS(1047), [anon_sym_COLON_COLON] = ACTIONS(1047), [anon_sym_STAR] = ACTIONS(1047), [anon_sym_AMP] = ACTIONS(1047), [anon_sym_DOT_DOT] = ACTIONS(1047), [anon_sym_DASH] = ACTIONS(1047), [anon_sym_PIPE] = ACTIONS(1047), [anon_sym_yield] = ACTIONS(1049), [anon_sym_move] = ACTIONS(1049), [sym_integer_literal] = ACTIONS(1047), [aux_sym_string_literal_token1] = ACTIONS(1047), [sym_char_literal] = ACTIONS(1047), [anon_sym_true] = ACTIONS(1049), [anon_sym_false] = ACTIONS(1049), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1049), [sym_metavariable] = ACTIONS(1047), [sym_raw_string_literal] = ACTIONS(1047), [sym_float_literal] = ACTIONS(1047), [sym_block_comment] = ACTIONS(3), }, [273] = { [ts_builtin_sym_end] = ACTIONS(1051), [sym_identifier] = ACTIONS(1053), [anon_sym_SEMI] = ACTIONS(1051), [anon_sym_u8] = ACTIONS(1053), [anon_sym_i8] = ACTIONS(1053), [anon_sym_u16] = ACTIONS(1053), [anon_sym_i16] = ACTIONS(1053), [anon_sym_u32] = ACTIONS(1053), [anon_sym_i32] = ACTIONS(1053), [anon_sym_u64] = ACTIONS(1053), [anon_sym_i64] = ACTIONS(1053), [anon_sym_u128] = ACTIONS(1053), [anon_sym_i128] = ACTIONS(1053), [anon_sym_u256] = ACTIONS(1053), [anon_sym_i256] = ACTIONS(1053), [anon_sym_b256] = ACTIONS(1053), [anon_sym_isize] = ACTIONS(1053), [anon_sym_usize] = ACTIONS(1053), [anon_sym_f32] = ACTIONS(1053), [anon_sym_f64] = ACTIONS(1053), [anon_sym_bool] = ACTIONS(1053), [anon_sym_char] = ACTIONS(1053), [anon_sym_str] = ACTIONS(1053), [anon_sym_LBRACK] = ACTIONS(1051), [anon_sym_contract] = ACTIONS(1053), [anon_sym_script] = ACTIONS(1053), [anon_sym_predicate] = ACTIONS(1053), [anon_sym_library] = ACTIONS(1053), [anon_sym_SQUOTE] = ACTIONS(1053), [anon_sym_abi] = ACTIONS(1053), [anon_sym_break] = ACTIONS(1053), [anon_sym_configurable] = ACTIONS(1053), [anon_sym_const] = ACTIONS(1053), [anon_sym_continue] = ACTIONS(1053), [anon_sym_default] = ACTIONS(1053), [anon_sym_mod] = ACTIONS(1053), [anon_sym_enum] = ACTIONS(1053), [anon_sym_fn] = ACTIONS(1053), [anon_sym_for] = ACTIONS(1053), [anon_sym_if] = ACTIONS(1053), [anon_sym_impl] = ACTIONS(1053), [anon_sym_let] = ACTIONS(1053), [anon_sym_match] = ACTIONS(1053), [anon_sym_pub] = ACTIONS(1053), [anon_sym_return] = ACTIONS(1053), [anon_sym_storage] = ACTIONS(1053), [anon_sym_struct] = ACTIONS(1053), [anon_sym_trait] = ACTIONS(1053), [anon_sym_type] = ACTIONS(1053), [anon_sym_use] = ACTIONS(1053), [anon_sym_while] = ACTIONS(1053), [anon_sym_POUND] = ACTIONS(1051), [anon_sym_BANG] = ACTIONS(1051), [anon_sym_LBRACE] = ACTIONS(1051), [anon_sym_RBRACE] = ACTIONS(1051), [anon_sym_LPAREN] = ACTIONS(1051), [anon_sym_asm] = ACTIONS(1053), [anon_sym_LT] = ACTIONS(1051), [anon_sym_COLON_COLON] = ACTIONS(1051), [anon_sym_STAR] = ACTIONS(1051), [anon_sym_AMP] = ACTIONS(1051), [anon_sym_DOT_DOT] = ACTIONS(1051), [anon_sym_DASH] = ACTIONS(1051), [anon_sym_PIPE] = ACTIONS(1051), [anon_sym_yield] = ACTIONS(1053), [anon_sym_move] = ACTIONS(1053), [sym_integer_literal] = ACTIONS(1051), [aux_sym_string_literal_token1] = ACTIONS(1051), [sym_char_literal] = ACTIONS(1051), [anon_sym_true] = ACTIONS(1053), [anon_sym_false] = ACTIONS(1053), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1053), [sym_metavariable] = ACTIONS(1051), [sym_raw_string_literal] = ACTIONS(1051), [sym_float_literal] = ACTIONS(1051), [sym_block_comment] = ACTIONS(3), }, [274] = { [ts_builtin_sym_end] = ACTIONS(1055), [sym_identifier] = ACTIONS(1057), [anon_sym_SEMI] = ACTIONS(1055), [anon_sym_u8] = ACTIONS(1057), [anon_sym_i8] = ACTIONS(1057), [anon_sym_u16] = ACTIONS(1057), [anon_sym_i16] = ACTIONS(1057), [anon_sym_u32] = ACTIONS(1057), [anon_sym_i32] = ACTIONS(1057), [anon_sym_u64] = ACTIONS(1057), [anon_sym_i64] = ACTIONS(1057), [anon_sym_u128] = ACTIONS(1057), [anon_sym_i128] = ACTIONS(1057), [anon_sym_u256] = ACTIONS(1057), [anon_sym_i256] = ACTIONS(1057), [anon_sym_b256] = ACTIONS(1057), [anon_sym_isize] = ACTIONS(1057), [anon_sym_usize] = ACTIONS(1057), [anon_sym_f32] = ACTIONS(1057), [anon_sym_f64] = ACTIONS(1057), [anon_sym_bool] = ACTIONS(1057), [anon_sym_char] = ACTIONS(1057), [anon_sym_str] = ACTIONS(1057), [anon_sym_LBRACK] = ACTIONS(1055), [anon_sym_contract] = ACTIONS(1057), [anon_sym_script] = ACTIONS(1057), [anon_sym_predicate] = ACTIONS(1057), [anon_sym_library] = ACTIONS(1057), [anon_sym_SQUOTE] = ACTIONS(1057), [anon_sym_abi] = ACTIONS(1057), [anon_sym_break] = ACTIONS(1057), [anon_sym_configurable] = ACTIONS(1057), [anon_sym_const] = ACTIONS(1057), [anon_sym_continue] = ACTIONS(1057), [anon_sym_default] = ACTIONS(1057), [anon_sym_mod] = ACTIONS(1057), [anon_sym_enum] = ACTIONS(1057), [anon_sym_fn] = ACTIONS(1057), [anon_sym_for] = ACTIONS(1057), [anon_sym_if] = ACTIONS(1057), [anon_sym_impl] = ACTIONS(1057), [anon_sym_let] = ACTIONS(1057), [anon_sym_match] = ACTIONS(1057), [anon_sym_pub] = ACTIONS(1057), [anon_sym_return] = ACTIONS(1057), [anon_sym_storage] = ACTIONS(1057), [anon_sym_struct] = ACTIONS(1057), [anon_sym_trait] = ACTIONS(1057), [anon_sym_type] = ACTIONS(1057), [anon_sym_use] = ACTIONS(1057), [anon_sym_while] = ACTIONS(1057), [anon_sym_POUND] = ACTIONS(1055), [anon_sym_BANG] = ACTIONS(1055), [anon_sym_LBRACE] = ACTIONS(1055), [anon_sym_RBRACE] = ACTIONS(1055), [anon_sym_LPAREN] = ACTIONS(1055), [anon_sym_asm] = ACTIONS(1057), [anon_sym_LT] = ACTIONS(1055), [anon_sym_COLON_COLON] = ACTIONS(1055), [anon_sym_STAR] = ACTIONS(1055), [anon_sym_AMP] = ACTIONS(1055), [anon_sym_DOT_DOT] = ACTIONS(1055), [anon_sym_DASH] = ACTIONS(1055), [anon_sym_PIPE] = ACTIONS(1055), [anon_sym_yield] = ACTIONS(1057), [anon_sym_move] = ACTIONS(1057), [sym_integer_literal] = ACTIONS(1055), [aux_sym_string_literal_token1] = ACTIONS(1055), [sym_char_literal] = ACTIONS(1055), [anon_sym_true] = ACTIONS(1057), [anon_sym_false] = ACTIONS(1057), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1057), [sym_metavariable] = ACTIONS(1055), [sym_raw_string_literal] = ACTIONS(1055), [sym_float_literal] = ACTIONS(1055), [sym_block_comment] = ACTIONS(3), }, [275] = { [ts_builtin_sym_end] = ACTIONS(1059), [sym_identifier] = ACTIONS(1061), [anon_sym_SEMI] = ACTIONS(1059), [anon_sym_u8] = ACTIONS(1061), [anon_sym_i8] = ACTIONS(1061), [anon_sym_u16] = ACTIONS(1061), [anon_sym_i16] = ACTIONS(1061), [anon_sym_u32] = ACTIONS(1061), [anon_sym_i32] = ACTIONS(1061), [anon_sym_u64] = ACTIONS(1061), [anon_sym_i64] = ACTIONS(1061), [anon_sym_u128] = ACTIONS(1061), [anon_sym_i128] = ACTIONS(1061), [anon_sym_u256] = ACTIONS(1061), [anon_sym_i256] = ACTIONS(1061), [anon_sym_b256] = ACTIONS(1061), [anon_sym_isize] = ACTIONS(1061), [anon_sym_usize] = ACTIONS(1061), [anon_sym_f32] = ACTIONS(1061), [anon_sym_f64] = ACTIONS(1061), [anon_sym_bool] = ACTIONS(1061), [anon_sym_char] = ACTIONS(1061), [anon_sym_str] = ACTIONS(1061), [anon_sym_LBRACK] = ACTIONS(1059), [anon_sym_contract] = ACTIONS(1061), [anon_sym_script] = ACTIONS(1061), [anon_sym_predicate] = ACTIONS(1061), [anon_sym_library] = ACTIONS(1061), [anon_sym_SQUOTE] = ACTIONS(1061), [anon_sym_abi] = ACTIONS(1061), [anon_sym_break] = ACTIONS(1061), [anon_sym_configurable] = ACTIONS(1061), [anon_sym_const] = ACTIONS(1061), [anon_sym_continue] = ACTIONS(1061), [anon_sym_default] = ACTIONS(1061), [anon_sym_mod] = ACTIONS(1061), [anon_sym_enum] = ACTIONS(1061), [anon_sym_fn] = ACTIONS(1061), [anon_sym_for] = ACTIONS(1061), [anon_sym_if] = ACTIONS(1061), [anon_sym_impl] = ACTIONS(1061), [anon_sym_let] = ACTIONS(1061), [anon_sym_match] = ACTIONS(1061), [anon_sym_pub] = ACTIONS(1061), [anon_sym_return] = ACTIONS(1061), [anon_sym_storage] = ACTIONS(1061), [anon_sym_struct] = ACTIONS(1061), [anon_sym_trait] = ACTIONS(1061), [anon_sym_type] = ACTIONS(1061), [anon_sym_use] = ACTIONS(1061), [anon_sym_while] = ACTIONS(1061), [anon_sym_POUND] = ACTIONS(1059), [anon_sym_BANG] = ACTIONS(1059), [anon_sym_LBRACE] = ACTIONS(1059), [anon_sym_RBRACE] = ACTIONS(1059), [anon_sym_LPAREN] = ACTIONS(1059), [anon_sym_asm] = ACTIONS(1061), [anon_sym_LT] = ACTIONS(1059), [anon_sym_COLON_COLON] = ACTIONS(1059), [anon_sym_STAR] = ACTIONS(1059), [anon_sym_AMP] = ACTIONS(1059), [anon_sym_DOT_DOT] = ACTIONS(1059), [anon_sym_DASH] = ACTIONS(1059), [anon_sym_PIPE] = ACTIONS(1059), [anon_sym_yield] = ACTIONS(1061), [anon_sym_move] = ACTIONS(1061), [sym_integer_literal] = ACTIONS(1059), [aux_sym_string_literal_token1] = ACTIONS(1059), [sym_char_literal] = ACTIONS(1059), [anon_sym_true] = ACTIONS(1061), [anon_sym_false] = ACTIONS(1061), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1061), [sym_metavariable] = ACTIONS(1059), [sym_raw_string_literal] = ACTIONS(1059), [sym_float_literal] = ACTIONS(1059), [sym_block_comment] = ACTIONS(3), }, [276] = { [ts_builtin_sym_end] = ACTIONS(1063), [sym_identifier] = ACTIONS(1065), [anon_sym_SEMI] = ACTIONS(1063), [anon_sym_u8] = ACTIONS(1065), [anon_sym_i8] = ACTIONS(1065), [anon_sym_u16] = ACTIONS(1065), [anon_sym_i16] = ACTIONS(1065), [anon_sym_u32] = ACTIONS(1065), [anon_sym_i32] = ACTIONS(1065), [anon_sym_u64] = ACTIONS(1065), [anon_sym_i64] = ACTIONS(1065), [anon_sym_u128] = ACTIONS(1065), [anon_sym_i128] = ACTIONS(1065), [anon_sym_u256] = ACTIONS(1065), [anon_sym_i256] = ACTIONS(1065), [anon_sym_b256] = ACTIONS(1065), [anon_sym_isize] = ACTIONS(1065), [anon_sym_usize] = ACTIONS(1065), [anon_sym_f32] = ACTIONS(1065), [anon_sym_f64] = ACTIONS(1065), [anon_sym_bool] = ACTIONS(1065), [anon_sym_char] = ACTIONS(1065), [anon_sym_str] = ACTIONS(1065), [anon_sym_LBRACK] = ACTIONS(1063), [anon_sym_contract] = ACTIONS(1065), [anon_sym_script] = ACTIONS(1065), [anon_sym_predicate] = ACTIONS(1065), [anon_sym_library] = ACTIONS(1065), [anon_sym_SQUOTE] = ACTIONS(1065), [anon_sym_abi] = ACTIONS(1065), [anon_sym_break] = ACTIONS(1065), [anon_sym_configurable] = ACTIONS(1065), [anon_sym_const] = ACTIONS(1065), [anon_sym_continue] = ACTIONS(1065), [anon_sym_default] = ACTIONS(1065), [anon_sym_mod] = ACTIONS(1065), [anon_sym_enum] = ACTIONS(1065), [anon_sym_fn] = ACTIONS(1065), [anon_sym_for] = ACTIONS(1065), [anon_sym_if] = ACTIONS(1065), [anon_sym_impl] = ACTIONS(1065), [anon_sym_let] = ACTIONS(1065), [anon_sym_match] = ACTIONS(1065), [anon_sym_pub] = ACTIONS(1065), [anon_sym_return] = ACTIONS(1065), [anon_sym_storage] = ACTIONS(1065), [anon_sym_struct] = ACTIONS(1065), [anon_sym_trait] = ACTIONS(1065), [anon_sym_type] = ACTIONS(1065), [anon_sym_use] = ACTIONS(1065), [anon_sym_while] = ACTIONS(1065), [anon_sym_POUND] = ACTIONS(1063), [anon_sym_BANG] = ACTIONS(1063), [anon_sym_LBRACE] = ACTIONS(1063), [anon_sym_RBRACE] = ACTIONS(1063), [anon_sym_LPAREN] = ACTIONS(1063), [anon_sym_asm] = ACTIONS(1065), [anon_sym_LT] = ACTIONS(1063), [anon_sym_COLON_COLON] = ACTIONS(1063), [anon_sym_STAR] = ACTIONS(1063), [anon_sym_AMP] = ACTIONS(1063), [anon_sym_DOT_DOT] = ACTIONS(1063), [anon_sym_DASH] = ACTIONS(1063), [anon_sym_PIPE] = ACTIONS(1063), [anon_sym_yield] = ACTIONS(1065), [anon_sym_move] = ACTIONS(1065), [sym_integer_literal] = ACTIONS(1063), [aux_sym_string_literal_token1] = ACTIONS(1063), [sym_char_literal] = ACTIONS(1063), [anon_sym_true] = ACTIONS(1065), [anon_sym_false] = ACTIONS(1065), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1065), [sym_metavariable] = ACTIONS(1063), [sym_raw_string_literal] = ACTIONS(1063), [sym_float_literal] = ACTIONS(1063), [sym_block_comment] = ACTIONS(3), }, [277] = { [ts_builtin_sym_end] = ACTIONS(1067), [sym_identifier] = ACTIONS(1069), [anon_sym_SEMI] = ACTIONS(1067), [anon_sym_u8] = ACTIONS(1069), [anon_sym_i8] = ACTIONS(1069), [anon_sym_u16] = ACTIONS(1069), [anon_sym_i16] = ACTIONS(1069), [anon_sym_u32] = ACTIONS(1069), [anon_sym_i32] = ACTIONS(1069), [anon_sym_u64] = ACTIONS(1069), [anon_sym_i64] = ACTIONS(1069), [anon_sym_u128] = ACTIONS(1069), [anon_sym_i128] = ACTIONS(1069), [anon_sym_u256] = ACTIONS(1069), [anon_sym_i256] = ACTIONS(1069), [anon_sym_b256] = ACTIONS(1069), [anon_sym_isize] = ACTIONS(1069), [anon_sym_usize] = ACTIONS(1069), [anon_sym_f32] = ACTIONS(1069), [anon_sym_f64] = ACTIONS(1069), [anon_sym_bool] = ACTIONS(1069), [anon_sym_char] = ACTIONS(1069), [anon_sym_str] = ACTIONS(1069), [anon_sym_LBRACK] = ACTIONS(1067), [anon_sym_contract] = ACTIONS(1069), [anon_sym_script] = ACTIONS(1069), [anon_sym_predicate] = ACTIONS(1069), [anon_sym_library] = ACTIONS(1069), [anon_sym_SQUOTE] = ACTIONS(1069), [anon_sym_abi] = ACTIONS(1069), [anon_sym_break] = ACTIONS(1069), [anon_sym_configurable] = ACTIONS(1069), [anon_sym_const] = ACTIONS(1069), [anon_sym_continue] = ACTIONS(1069), [anon_sym_default] = ACTIONS(1069), [anon_sym_mod] = ACTIONS(1069), [anon_sym_enum] = ACTIONS(1069), [anon_sym_fn] = ACTIONS(1069), [anon_sym_for] = ACTIONS(1069), [anon_sym_if] = ACTIONS(1069), [anon_sym_impl] = ACTIONS(1069), [anon_sym_let] = ACTIONS(1069), [anon_sym_match] = ACTIONS(1069), [anon_sym_pub] = ACTIONS(1069), [anon_sym_return] = ACTIONS(1069), [anon_sym_storage] = ACTIONS(1069), [anon_sym_struct] = ACTIONS(1069), [anon_sym_trait] = ACTIONS(1069), [anon_sym_type] = ACTIONS(1069), [anon_sym_use] = ACTIONS(1069), [anon_sym_while] = ACTIONS(1069), [anon_sym_POUND] = ACTIONS(1067), [anon_sym_BANG] = ACTIONS(1067), [anon_sym_LBRACE] = ACTIONS(1067), [anon_sym_RBRACE] = ACTIONS(1067), [anon_sym_LPAREN] = ACTIONS(1067), [anon_sym_asm] = ACTIONS(1069), [anon_sym_LT] = ACTIONS(1067), [anon_sym_COLON_COLON] = ACTIONS(1067), [anon_sym_STAR] = ACTIONS(1067), [anon_sym_AMP] = ACTIONS(1067), [anon_sym_DOT_DOT] = ACTIONS(1067), [anon_sym_DASH] = ACTIONS(1067), [anon_sym_PIPE] = ACTIONS(1067), [anon_sym_yield] = ACTIONS(1069), [anon_sym_move] = ACTIONS(1069), [sym_integer_literal] = ACTIONS(1067), [aux_sym_string_literal_token1] = ACTIONS(1067), [sym_char_literal] = ACTIONS(1067), [anon_sym_true] = ACTIONS(1069), [anon_sym_false] = ACTIONS(1069), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1069), [sym_metavariable] = ACTIONS(1067), [sym_raw_string_literal] = ACTIONS(1067), [sym_float_literal] = ACTIONS(1067), [sym_block_comment] = ACTIONS(3), }, [278] = { [ts_builtin_sym_end] = ACTIONS(1071), [sym_identifier] = ACTIONS(1073), [anon_sym_SEMI] = ACTIONS(1071), [anon_sym_u8] = ACTIONS(1073), [anon_sym_i8] = ACTIONS(1073), [anon_sym_u16] = ACTIONS(1073), [anon_sym_i16] = ACTIONS(1073), [anon_sym_u32] = ACTIONS(1073), [anon_sym_i32] = ACTIONS(1073), [anon_sym_u64] = ACTIONS(1073), [anon_sym_i64] = ACTIONS(1073), [anon_sym_u128] = ACTIONS(1073), [anon_sym_i128] = ACTIONS(1073), [anon_sym_u256] = ACTIONS(1073), [anon_sym_i256] = ACTIONS(1073), [anon_sym_b256] = ACTIONS(1073), [anon_sym_isize] = ACTIONS(1073), [anon_sym_usize] = ACTIONS(1073), [anon_sym_f32] = ACTIONS(1073), [anon_sym_f64] = ACTIONS(1073), [anon_sym_bool] = ACTIONS(1073), [anon_sym_char] = ACTIONS(1073), [anon_sym_str] = ACTIONS(1073), [anon_sym_LBRACK] = ACTIONS(1071), [anon_sym_contract] = ACTIONS(1073), [anon_sym_script] = ACTIONS(1073), [anon_sym_predicate] = ACTIONS(1073), [anon_sym_library] = ACTIONS(1073), [anon_sym_SQUOTE] = ACTIONS(1073), [anon_sym_abi] = ACTIONS(1073), [anon_sym_break] = ACTIONS(1073), [anon_sym_configurable] = ACTIONS(1073), [anon_sym_const] = ACTIONS(1073), [anon_sym_continue] = ACTIONS(1073), [anon_sym_default] = ACTIONS(1073), [anon_sym_mod] = ACTIONS(1073), [anon_sym_enum] = ACTIONS(1073), [anon_sym_fn] = ACTIONS(1073), [anon_sym_for] = ACTIONS(1073), [anon_sym_if] = ACTIONS(1073), [anon_sym_impl] = ACTIONS(1073), [anon_sym_let] = ACTIONS(1073), [anon_sym_match] = ACTIONS(1073), [anon_sym_pub] = ACTIONS(1073), [anon_sym_return] = ACTIONS(1073), [anon_sym_storage] = ACTIONS(1073), [anon_sym_struct] = ACTIONS(1073), [anon_sym_trait] = ACTIONS(1073), [anon_sym_type] = ACTIONS(1073), [anon_sym_use] = ACTIONS(1073), [anon_sym_while] = ACTIONS(1073), [anon_sym_POUND] = ACTIONS(1071), [anon_sym_BANG] = ACTIONS(1071), [anon_sym_LBRACE] = ACTIONS(1071), [anon_sym_RBRACE] = ACTIONS(1071), [anon_sym_LPAREN] = ACTIONS(1071), [anon_sym_asm] = ACTIONS(1073), [anon_sym_LT] = ACTIONS(1071), [anon_sym_COLON_COLON] = ACTIONS(1071), [anon_sym_STAR] = ACTIONS(1071), [anon_sym_AMP] = ACTIONS(1071), [anon_sym_DOT_DOT] = ACTIONS(1071), [anon_sym_DASH] = ACTIONS(1071), [anon_sym_PIPE] = ACTIONS(1071), [anon_sym_yield] = ACTIONS(1073), [anon_sym_move] = ACTIONS(1073), [sym_integer_literal] = ACTIONS(1071), [aux_sym_string_literal_token1] = ACTIONS(1071), [sym_char_literal] = ACTIONS(1071), [anon_sym_true] = ACTIONS(1073), [anon_sym_false] = ACTIONS(1073), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1073), [sym_metavariable] = ACTIONS(1071), [sym_raw_string_literal] = ACTIONS(1071), [sym_float_literal] = ACTIONS(1071), [sym_block_comment] = ACTIONS(3), }, [279] = { [ts_builtin_sym_end] = ACTIONS(1075), [sym_identifier] = ACTIONS(1077), [anon_sym_SEMI] = ACTIONS(1075), [anon_sym_u8] = ACTIONS(1077), [anon_sym_i8] = ACTIONS(1077), [anon_sym_u16] = ACTIONS(1077), [anon_sym_i16] = ACTIONS(1077), [anon_sym_u32] = ACTIONS(1077), [anon_sym_i32] = ACTIONS(1077), [anon_sym_u64] = ACTIONS(1077), [anon_sym_i64] = ACTIONS(1077), [anon_sym_u128] = ACTIONS(1077), [anon_sym_i128] = ACTIONS(1077), [anon_sym_u256] = ACTIONS(1077), [anon_sym_i256] = ACTIONS(1077), [anon_sym_b256] = ACTIONS(1077), [anon_sym_isize] = ACTIONS(1077), [anon_sym_usize] = ACTIONS(1077), [anon_sym_f32] = ACTIONS(1077), [anon_sym_f64] = ACTIONS(1077), [anon_sym_bool] = ACTIONS(1077), [anon_sym_char] = ACTIONS(1077), [anon_sym_str] = ACTIONS(1077), [anon_sym_LBRACK] = ACTIONS(1075), [anon_sym_contract] = ACTIONS(1077), [anon_sym_script] = ACTIONS(1077), [anon_sym_predicate] = ACTIONS(1077), [anon_sym_library] = ACTIONS(1077), [anon_sym_SQUOTE] = ACTIONS(1077), [anon_sym_abi] = ACTIONS(1077), [anon_sym_break] = ACTIONS(1077), [anon_sym_configurable] = ACTIONS(1077), [anon_sym_const] = ACTIONS(1077), [anon_sym_continue] = ACTIONS(1077), [anon_sym_default] = ACTIONS(1077), [anon_sym_mod] = ACTIONS(1077), [anon_sym_enum] = ACTIONS(1077), [anon_sym_fn] = ACTIONS(1077), [anon_sym_for] = ACTIONS(1077), [anon_sym_if] = ACTIONS(1077), [anon_sym_impl] = ACTIONS(1077), [anon_sym_let] = ACTIONS(1077), [anon_sym_match] = ACTIONS(1077), [anon_sym_pub] = ACTIONS(1077), [anon_sym_return] = ACTIONS(1077), [anon_sym_storage] = ACTIONS(1077), [anon_sym_struct] = ACTIONS(1077), [anon_sym_trait] = ACTIONS(1077), [anon_sym_type] = ACTIONS(1077), [anon_sym_use] = ACTIONS(1077), [anon_sym_while] = ACTIONS(1077), [anon_sym_POUND] = ACTIONS(1075), [anon_sym_BANG] = ACTIONS(1075), [anon_sym_LBRACE] = ACTIONS(1075), [anon_sym_RBRACE] = ACTIONS(1075), [anon_sym_LPAREN] = ACTIONS(1075), [anon_sym_asm] = ACTIONS(1077), [anon_sym_LT] = ACTIONS(1075), [anon_sym_COLON_COLON] = ACTIONS(1075), [anon_sym_STAR] = ACTIONS(1075), [anon_sym_AMP] = ACTIONS(1075), [anon_sym_DOT_DOT] = ACTIONS(1075), [anon_sym_DASH] = ACTIONS(1075), [anon_sym_PIPE] = ACTIONS(1075), [anon_sym_yield] = ACTIONS(1077), [anon_sym_move] = ACTIONS(1077), [sym_integer_literal] = ACTIONS(1075), [aux_sym_string_literal_token1] = ACTIONS(1075), [sym_char_literal] = ACTIONS(1075), [anon_sym_true] = ACTIONS(1077), [anon_sym_false] = ACTIONS(1077), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1077), [sym_metavariable] = ACTIONS(1075), [sym_raw_string_literal] = ACTIONS(1075), [sym_float_literal] = ACTIONS(1075), [sym_block_comment] = ACTIONS(3), }, [280] = { [ts_builtin_sym_end] = ACTIONS(1079), [sym_identifier] = ACTIONS(1081), [anon_sym_SEMI] = ACTIONS(1079), [anon_sym_u8] = ACTIONS(1081), [anon_sym_i8] = ACTIONS(1081), [anon_sym_u16] = ACTIONS(1081), [anon_sym_i16] = ACTIONS(1081), [anon_sym_u32] = ACTIONS(1081), [anon_sym_i32] = ACTIONS(1081), [anon_sym_u64] = ACTIONS(1081), [anon_sym_i64] = ACTIONS(1081), [anon_sym_u128] = ACTIONS(1081), [anon_sym_i128] = ACTIONS(1081), [anon_sym_u256] = ACTIONS(1081), [anon_sym_i256] = ACTIONS(1081), [anon_sym_b256] = ACTIONS(1081), [anon_sym_isize] = ACTIONS(1081), [anon_sym_usize] = ACTIONS(1081), [anon_sym_f32] = ACTIONS(1081), [anon_sym_f64] = ACTIONS(1081), [anon_sym_bool] = ACTIONS(1081), [anon_sym_char] = ACTIONS(1081), [anon_sym_str] = ACTIONS(1081), [anon_sym_LBRACK] = ACTIONS(1079), [anon_sym_contract] = ACTIONS(1081), [anon_sym_script] = ACTIONS(1081), [anon_sym_predicate] = ACTIONS(1081), [anon_sym_library] = ACTIONS(1081), [anon_sym_SQUOTE] = ACTIONS(1081), [anon_sym_abi] = ACTIONS(1081), [anon_sym_break] = ACTIONS(1081), [anon_sym_configurable] = ACTIONS(1081), [anon_sym_const] = ACTIONS(1081), [anon_sym_continue] = ACTIONS(1081), [anon_sym_default] = ACTIONS(1081), [anon_sym_mod] = ACTIONS(1081), [anon_sym_enum] = ACTIONS(1081), [anon_sym_fn] = ACTIONS(1081), [anon_sym_for] = ACTIONS(1081), [anon_sym_if] = ACTIONS(1081), [anon_sym_impl] = ACTIONS(1081), [anon_sym_let] = ACTIONS(1081), [anon_sym_match] = ACTIONS(1081), [anon_sym_pub] = ACTIONS(1081), [anon_sym_return] = ACTIONS(1081), [anon_sym_storage] = ACTIONS(1081), [anon_sym_struct] = ACTIONS(1081), [anon_sym_trait] = ACTIONS(1081), [anon_sym_type] = ACTIONS(1081), [anon_sym_use] = ACTIONS(1081), [anon_sym_while] = ACTIONS(1081), [anon_sym_POUND] = ACTIONS(1079), [anon_sym_BANG] = ACTIONS(1079), [anon_sym_LBRACE] = ACTIONS(1079), [anon_sym_RBRACE] = ACTIONS(1079), [anon_sym_LPAREN] = ACTIONS(1079), [anon_sym_asm] = ACTIONS(1081), [anon_sym_LT] = ACTIONS(1079), [anon_sym_COLON_COLON] = ACTIONS(1079), [anon_sym_STAR] = ACTIONS(1079), [anon_sym_AMP] = ACTIONS(1079), [anon_sym_DOT_DOT] = ACTIONS(1079), [anon_sym_DASH] = ACTIONS(1079), [anon_sym_PIPE] = ACTIONS(1079), [anon_sym_yield] = ACTIONS(1081), [anon_sym_move] = ACTIONS(1081), [sym_integer_literal] = ACTIONS(1079), [aux_sym_string_literal_token1] = ACTIONS(1079), [sym_char_literal] = ACTIONS(1079), [anon_sym_true] = ACTIONS(1081), [anon_sym_false] = ACTIONS(1081), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1081), [sym_metavariable] = ACTIONS(1079), [sym_raw_string_literal] = ACTIONS(1079), [sym_float_literal] = ACTIONS(1079), [sym_block_comment] = ACTIONS(3), }, [281] = { [ts_builtin_sym_end] = ACTIONS(1083), [sym_identifier] = ACTIONS(1085), [anon_sym_SEMI] = ACTIONS(1083), [anon_sym_u8] = ACTIONS(1085), [anon_sym_i8] = ACTIONS(1085), [anon_sym_u16] = ACTIONS(1085), [anon_sym_i16] = ACTIONS(1085), [anon_sym_u32] = ACTIONS(1085), [anon_sym_i32] = ACTIONS(1085), [anon_sym_u64] = ACTIONS(1085), [anon_sym_i64] = ACTIONS(1085), [anon_sym_u128] = ACTIONS(1085), [anon_sym_i128] = ACTIONS(1085), [anon_sym_u256] = ACTIONS(1085), [anon_sym_i256] = ACTIONS(1085), [anon_sym_b256] = ACTIONS(1085), [anon_sym_isize] = ACTIONS(1085), [anon_sym_usize] = ACTIONS(1085), [anon_sym_f32] = ACTIONS(1085), [anon_sym_f64] = ACTIONS(1085), [anon_sym_bool] = ACTIONS(1085), [anon_sym_char] = ACTIONS(1085), [anon_sym_str] = ACTIONS(1085), [anon_sym_LBRACK] = ACTIONS(1083), [anon_sym_contract] = ACTIONS(1085), [anon_sym_script] = ACTIONS(1085), [anon_sym_predicate] = ACTIONS(1085), [anon_sym_library] = ACTIONS(1085), [anon_sym_SQUOTE] = ACTIONS(1085), [anon_sym_abi] = ACTIONS(1085), [anon_sym_break] = ACTIONS(1085), [anon_sym_configurable] = ACTIONS(1085), [anon_sym_const] = ACTIONS(1085), [anon_sym_continue] = ACTIONS(1085), [anon_sym_default] = ACTIONS(1085), [anon_sym_mod] = ACTIONS(1085), [anon_sym_enum] = ACTIONS(1085), [anon_sym_fn] = ACTIONS(1085), [anon_sym_for] = ACTIONS(1085), [anon_sym_if] = ACTIONS(1085), [anon_sym_impl] = ACTIONS(1085), [anon_sym_let] = ACTIONS(1085), [anon_sym_match] = ACTIONS(1085), [anon_sym_pub] = ACTIONS(1085), [anon_sym_return] = ACTIONS(1085), [anon_sym_storage] = ACTIONS(1085), [anon_sym_struct] = ACTIONS(1085), [anon_sym_trait] = ACTIONS(1085), [anon_sym_type] = ACTIONS(1085), [anon_sym_use] = ACTIONS(1085), [anon_sym_while] = ACTIONS(1085), [anon_sym_POUND] = ACTIONS(1083), [anon_sym_BANG] = ACTIONS(1083), [anon_sym_LBRACE] = ACTIONS(1083), [anon_sym_RBRACE] = ACTIONS(1083), [anon_sym_LPAREN] = ACTIONS(1083), [anon_sym_asm] = ACTIONS(1085), [anon_sym_LT] = ACTIONS(1083), [anon_sym_COLON_COLON] = ACTIONS(1083), [anon_sym_STAR] = ACTIONS(1083), [anon_sym_AMP] = ACTIONS(1083), [anon_sym_DOT_DOT] = ACTIONS(1083), [anon_sym_DASH] = ACTIONS(1083), [anon_sym_PIPE] = ACTIONS(1083), [anon_sym_yield] = ACTIONS(1085), [anon_sym_move] = ACTIONS(1085), [sym_integer_literal] = ACTIONS(1083), [aux_sym_string_literal_token1] = ACTIONS(1083), [sym_char_literal] = ACTIONS(1083), [anon_sym_true] = ACTIONS(1085), [anon_sym_false] = ACTIONS(1085), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1085), [sym_metavariable] = ACTIONS(1083), [sym_raw_string_literal] = ACTIONS(1083), [sym_float_literal] = ACTIONS(1083), [sym_block_comment] = ACTIONS(3), }, [282] = { [ts_builtin_sym_end] = ACTIONS(1087), [sym_identifier] = ACTIONS(1089), [anon_sym_SEMI] = ACTIONS(1087), [anon_sym_u8] = ACTIONS(1089), [anon_sym_i8] = ACTIONS(1089), [anon_sym_u16] = ACTIONS(1089), [anon_sym_i16] = ACTIONS(1089), [anon_sym_u32] = ACTIONS(1089), [anon_sym_i32] = ACTIONS(1089), [anon_sym_u64] = ACTIONS(1089), [anon_sym_i64] = ACTIONS(1089), [anon_sym_u128] = ACTIONS(1089), [anon_sym_i128] = ACTIONS(1089), [anon_sym_u256] = ACTIONS(1089), [anon_sym_i256] = ACTIONS(1089), [anon_sym_b256] = ACTIONS(1089), [anon_sym_isize] = ACTIONS(1089), [anon_sym_usize] = ACTIONS(1089), [anon_sym_f32] = ACTIONS(1089), [anon_sym_f64] = ACTIONS(1089), [anon_sym_bool] = ACTIONS(1089), [anon_sym_char] = ACTIONS(1089), [anon_sym_str] = ACTIONS(1089), [anon_sym_LBRACK] = ACTIONS(1087), [anon_sym_contract] = ACTIONS(1089), [anon_sym_script] = ACTIONS(1089), [anon_sym_predicate] = ACTIONS(1089), [anon_sym_library] = ACTIONS(1089), [anon_sym_SQUOTE] = ACTIONS(1089), [anon_sym_abi] = ACTIONS(1089), [anon_sym_break] = ACTIONS(1089), [anon_sym_configurable] = ACTIONS(1089), [anon_sym_const] = ACTIONS(1089), [anon_sym_continue] = ACTIONS(1089), [anon_sym_default] = ACTIONS(1089), [anon_sym_mod] = ACTIONS(1089), [anon_sym_enum] = ACTIONS(1089), [anon_sym_fn] = ACTIONS(1089), [anon_sym_for] = ACTIONS(1089), [anon_sym_if] = ACTIONS(1089), [anon_sym_impl] = ACTIONS(1089), [anon_sym_let] = ACTIONS(1089), [anon_sym_match] = ACTIONS(1089), [anon_sym_pub] = ACTIONS(1089), [anon_sym_return] = ACTIONS(1089), [anon_sym_storage] = ACTIONS(1089), [anon_sym_struct] = ACTIONS(1089), [anon_sym_trait] = ACTIONS(1089), [anon_sym_type] = ACTIONS(1089), [anon_sym_use] = ACTIONS(1089), [anon_sym_while] = ACTIONS(1089), [anon_sym_POUND] = ACTIONS(1087), [anon_sym_BANG] = ACTIONS(1087), [anon_sym_LBRACE] = ACTIONS(1087), [anon_sym_RBRACE] = ACTIONS(1087), [anon_sym_LPAREN] = ACTIONS(1087), [anon_sym_asm] = ACTIONS(1089), [anon_sym_LT] = ACTIONS(1087), [anon_sym_COLON_COLON] = ACTIONS(1087), [anon_sym_STAR] = ACTIONS(1087), [anon_sym_AMP] = ACTIONS(1087), [anon_sym_DOT_DOT] = ACTIONS(1087), [anon_sym_DASH] = ACTIONS(1087), [anon_sym_PIPE] = ACTIONS(1087), [anon_sym_yield] = ACTIONS(1089), [anon_sym_move] = ACTIONS(1089), [sym_integer_literal] = ACTIONS(1087), [aux_sym_string_literal_token1] = ACTIONS(1087), [sym_char_literal] = ACTIONS(1087), [anon_sym_true] = ACTIONS(1089), [anon_sym_false] = ACTIONS(1089), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1089), [sym_metavariable] = ACTIONS(1087), [sym_raw_string_literal] = ACTIONS(1087), [sym_float_literal] = ACTIONS(1087), [sym_block_comment] = ACTIONS(3), }, [283] = { [ts_builtin_sym_end] = ACTIONS(1091), [sym_identifier] = ACTIONS(1093), [anon_sym_SEMI] = ACTIONS(1091), [anon_sym_u8] = ACTIONS(1093), [anon_sym_i8] = ACTIONS(1093), [anon_sym_u16] = ACTIONS(1093), [anon_sym_i16] = ACTIONS(1093), [anon_sym_u32] = ACTIONS(1093), [anon_sym_i32] = ACTIONS(1093), [anon_sym_u64] = ACTIONS(1093), [anon_sym_i64] = ACTIONS(1093), [anon_sym_u128] = ACTIONS(1093), [anon_sym_i128] = ACTIONS(1093), [anon_sym_u256] = ACTIONS(1093), [anon_sym_i256] = ACTIONS(1093), [anon_sym_b256] = ACTIONS(1093), [anon_sym_isize] = ACTIONS(1093), [anon_sym_usize] = ACTIONS(1093), [anon_sym_f32] = ACTIONS(1093), [anon_sym_f64] = ACTIONS(1093), [anon_sym_bool] = ACTIONS(1093), [anon_sym_char] = ACTIONS(1093), [anon_sym_str] = ACTIONS(1093), [anon_sym_LBRACK] = ACTIONS(1091), [anon_sym_contract] = ACTIONS(1093), [anon_sym_script] = ACTIONS(1093), [anon_sym_predicate] = ACTIONS(1093), [anon_sym_library] = ACTIONS(1093), [anon_sym_SQUOTE] = ACTIONS(1093), [anon_sym_abi] = ACTIONS(1093), [anon_sym_break] = ACTIONS(1093), [anon_sym_configurable] = ACTIONS(1093), [anon_sym_const] = ACTIONS(1093), [anon_sym_continue] = ACTIONS(1093), [anon_sym_default] = ACTIONS(1093), [anon_sym_mod] = ACTIONS(1093), [anon_sym_enum] = ACTIONS(1093), [anon_sym_fn] = ACTIONS(1093), [anon_sym_for] = ACTIONS(1093), [anon_sym_if] = ACTIONS(1093), [anon_sym_impl] = ACTIONS(1093), [anon_sym_let] = ACTIONS(1093), [anon_sym_match] = ACTIONS(1093), [anon_sym_pub] = ACTIONS(1093), [anon_sym_return] = ACTIONS(1093), [anon_sym_storage] = ACTIONS(1093), [anon_sym_struct] = ACTIONS(1093), [anon_sym_trait] = ACTIONS(1093), [anon_sym_type] = ACTIONS(1093), [anon_sym_use] = ACTIONS(1093), [anon_sym_while] = ACTIONS(1093), [anon_sym_POUND] = ACTIONS(1091), [anon_sym_BANG] = ACTIONS(1091), [anon_sym_LBRACE] = ACTIONS(1091), [anon_sym_RBRACE] = ACTIONS(1091), [anon_sym_LPAREN] = ACTIONS(1091), [anon_sym_asm] = ACTIONS(1093), [anon_sym_LT] = ACTIONS(1091), [anon_sym_COLON_COLON] = ACTIONS(1091), [anon_sym_STAR] = ACTIONS(1091), [anon_sym_AMP] = ACTIONS(1091), [anon_sym_DOT_DOT] = ACTIONS(1091), [anon_sym_DASH] = ACTIONS(1091), [anon_sym_PIPE] = ACTIONS(1091), [anon_sym_yield] = ACTIONS(1093), [anon_sym_move] = ACTIONS(1093), [sym_integer_literal] = ACTIONS(1091), [aux_sym_string_literal_token1] = ACTIONS(1091), [sym_char_literal] = ACTIONS(1091), [anon_sym_true] = ACTIONS(1093), [anon_sym_false] = ACTIONS(1093), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1093), [sym_metavariable] = ACTIONS(1091), [sym_raw_string_literal] = ACTIONS(1091), [sym_float_literal] = ACTIONS(1091), [sym_block_comment] = ACTIONS(3), }, [284] = { [ts_builtin_sym_end] = ACTIONS(1095), [sym_identifier] = ACTIONS(1097), [anon_sym_SEMI] = ACTIONS(1095), [anon_sym_u8] = ACTIONS(1097), [anon_sym_i8] = ACTIONS(1097), [anon_sym_u16] = ACTIONS(1097), [anon_sym_i16] = ACTIONS(1097), [anon_sym_u32] = ACTIONS(1097), [anon_sym_i32] = ACTIONS(1097), [anon_sym_u64] = ACTIONS(1097), [anon_sym_i64] = ACTIONS(1097), [anon_sym_u128] = ACTIONS(1097), [anon_sym_i128] = ACTIONS(1097), [anon_sym_u256] = ACTIONS(1097), [anon_sym_i256] = ACTIONS(1097), [anon_sym_b256] = ACTIONS(1097), [anon_sym_isize] = ACTIONS(1097), [anon_sym_usize] = ACTIONS(1097), [anon_sym_f32] = ACTIONS(1097), [anon_sym_f64] = ACTIONS(1097), [anon_sym_bool] = ACTIONS(1097), [anon_sym_char] = ACTIONS(1097), [anon_sym_str] = ACTIONS(1097), [anon_sym_LBRACK] = ACTIONS(1095), [anon_sym_contract] = ACTIONS(1097), [anon_sym_script] = ACTIONS(1097), [anon_sym_predicate] = ACTIONS(1097), [anon_sym_library] = ACTIONS(1097), [anon_sym_SQUOTE] = ACTIONS(1097), [anon_sym_abi] = ACTIONS(1097), [anon_sym_break] = ACTIONS(1097), [anon_sym_configurable] = ACTIONS(1097), [anon_sym_const] = ACTIONS(1097), [anon_sym_continue] = ACTIONS(1097), [anon_sym_default] = ACTIONS(1097), [anon_sym_mod] = ACTIONS(1097), [anon_sym_enum] = ACTIONS(1097), [anon_sym_fn] = ACTIONS(1097), [anon_sym_for] = ACTIONS(1097), [anon_sym_if] = ACTIONS(1097), [anon_sym_impl] = ACTIONS(1097), [anon_sym_let] = ACTIONS(1097), [anon_sym_match] = ACTIONS(1097), [anon_sym_pub] = ACTIONS(1097), [anon_sym_return] = ACTIONS(1097), [anon_sym_storage] = ACTIONS(1097), [anon_sym_struct] = ACTIONS(1097), [anon_sym_trait] = ACTIONS(1097), [anon_sym_type] = ACTIONS(1097), [anon_sym_use] = ACTIONS(1097), [anon_sym_while] = ACTIONS(1097), [anon_sym_POUND] = ACTIONS(1095), [anon_sym_BANG] = ACTIONS(1095), [anon_sym_LBRACE] = ACTIONS(1095), [anon_sym_RBRACE] = ACTIONS(1095), [anon_sym_LPAREN] = ACTIONS(1095), [anon_sym_asm] = ACTIONS(1097), [anon_sym_LT] = ACTIONS(1095), [anon_sym_COLON_COLON] = ACTIONS(1095), [anon_sym_STAR] = ACTIONS(1095), [anon_sym_AMP] = ACTIONS(1095), [anon_sym_DOT_DOT] = ACTIONS(1095), [anon_sym_DASH] = ACTIONS(1095), [anon_sym_PIPE] = ACTIONS(1095), [anon_sym_yield] = ACTIONS(1097), [anon_sym_move] = ACTIONS(1097), [sym_integer_literal] = ACTIONS(1095), [aux_sym_string_literal_token1] = ACTIONS(1095), [sym_char_literal] = ACTIONS(1095), [anon_sym_true] = ACTIONS(1097), [anon_sym_false] = ACTIONS(1097), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1097), [sym_metavariable] = ACTIONS(1095), [sym_raw_string_literal] = ACTIONS(1095), [sym_float_literal] = ACTIONS(1095), [sym_block_comment] = ACTIONS(3), }, [285] = { [ts_builtin_sym_end] = ACTIONS(1099), [sym_identifier] = ACTIONS(1101), [anon_sym_SEMI] = ACTIONS(1099), [anon_sym_u8] = ACTIONS(1101), [anon_sym_i8] = ACTIONS(1101), [anon_sym_u16] = ACTIONS(1101), [anon_sym_i16] = ACTIONS(1101), [anon_sym_u32] = ACTIONS(1101), [anon_sym_i32] = ACTIONS(1101), [anon_sym_u64] = ACTIONS(1101), [anon_sym_i64] = ACTIONS(1101), [anon_sym_u128] = ACTIONS(1101), [anon_sym_i128] = ACTIONS(1101), [anon_sym_u256] = ACTIONS(1101), [anon_sym_i256] = ACTIONS(1101), [anon_sym_b256] = ACTIONS(1101), [anon_sym_isize] = ACTIONS(1101), [anon_sym_usize] = ACTIONS(1101), [anon_sym_f32] = ACTIONS(1101), [anon_sym_f64] = ACTIONS(1101), [anon_sym_bool] = ACTIONS(1101), [anon_sym_char] = ACTIONS(1101), [anon_sym_str] = ACTIONS(1101), [anon_sym_LBRACK] = ACTIONS(1099), [anon_sym_contract] = ACTIONS(1101), [anon_sym_script] = ACTIONS(1101), [anon_sym_predicate] = ACTIONS(1101), [anon_sym_library] = ACTIONS(1101), [anon_sym_SQUOTE] = ACTIONS(1101), [anon_sym_abi] = ACTIONS(1101), [anon_sym_break] = ACTIONS(1101), [anon_sym_configurable] = ACTIONS(1101), [anon_sym_const] = ACTIONS(1101), [anon_sym_continue] = ACTIONS(1101), [anon_sym_default] = ACTIONS(1101), [anon_sym_mod] = ACTIONS(1101), [anon_sym_enum] = ACTIONS(1101), [anon_sym_fn] = ACTIONS(1101), [anon_sym_for] = ACTIONS(1101), [anon_sym_if] = ACTIONS(1101), [anon_sym_impl] = ACTIONS(1101), [anon_sym_let] = ACTIONS(1101), [anon_sym_match] = ACTIONS(1101), [anon_sym_pub] = ACTIONS(1101), [anon_sym_return] = ACTIONS(1101), [anon_sym_storage] = ACTIONS(1101), [anon_sym_struct] = ACTIONS(1101), [anon_sym_trait] = ACTIONS(1101), [anon_sym_type] = ACTIONS(1101), [anon_sym_use] = ACTIONS(1101), [anon_sym_while] = ACTIONS(1101), [anon_sym_POUND] = ACTIONS(1099), [anon_sym_BANG] = ACTIONS(1099), [anon_sym_LBRACE] = ACTIONS(1099), [anon_sym_RBRACE] = ACTIONS(1099), [anon_sym_LPAREN] = ACTIONS(1099), [anon_sym_asm] = ACTIONS(1101), [anon_sym_LT] = ACTIONS(1099), [anon_sym_COLON_COLON] = ACTIONS(1099), [anon_sym_STAR] = ACTIONS(1099), [anon_sym_AMP] = ACTIONS(1099), [anon_sym_DOT_DOT] = ACTIONS(1099), [anon_sym_DASH] = ACTIONS(1099), [anon_sym_PIPE] = ACTIONS(1099), [anon_sym_yield] = ACTIONS(1101), [anon_sym_move] = ACTIONS(1101), [sym_integer_literal] = ACTIONS(1099), [aux_sym_string_literal_token1] = ACTIONS(1099), [sym_char_literal] = ACTIONS(1099), [anon_sym_true] = ACTIONS(1101), [anon_sym_false] = ACTIONS(1101), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1101), [sym_metavariable] = ACTIONS(1099), [sym_raw_string_literal] = ACTIONS(1099), [sym_float_literal] = ACTIONS(1099), [sym_block_comment] = ACTIONS(3), }, [286] = { [ts_builtin_sym_end] = ACTIONS(1103), [sym_identifier] = ACTIONS(1105), [anon_sym_SEMI] = ACTIONS(1103), [anon_sym_u8] = ACTIONS(1105), [anon_sym_i8] = ACTIONS(1105), [anon_sym_u16] = ACTIONS(1105), [anon_sym_i16] = ACTIONS(1105), [anon_sym_u32] = ACTIONS(1105), [anon_sym_i32] = ACTIONS(1105), [anon_sym_u64] = ACTIONS(1105), [anon_sym_i64] = ACTIONS(1105), [anon_sym_u128] = ACTIONS(1105), [anon_sym_i128] = ACTIONS(1105), [anon_sym_u256] = ACTIONS(1105), [anon_sym_i256] = ACTIONS(1105), [anon_sym_b256] = ACTIONS(1105), [anon_sym_isize] = ACTIONS(1105), [anon_sym_usize] = ACTIONS(1105), [anon_sym_f32] = ACTIONS(1105), [anon_sym_f64] = ACTIONS(1105), [anon_sym_bool] = ACTIONS(1105), [anon_sym_char] = ACTIONS(1105), [anon_sym_str] = ACTIONS(1105), [anon_sym_LBRACK] = ACTIONS(1103), [anon_sym_contract] = ACTIONS(1105), [anon_sym_script] = ACTIONS(1105), [anon_sym_predicate] = ACTIONS(1105), [anon_sym_library] = ACTIONS(1105), [anon_sym_SQUOTE] = ACTIONS(1105), [anon_sym_abi] = ACTIONS(1105), [anon_sym_break] = ACTIONS(1105), [anon_sym_configurable] = ACTIONS(1105), [anon_sym_const] = ACTIONS(1105), [anon_sym_continue] = ACTIONS(1105), [anon_sym_default] = ACTIONS(1105), [anon_sym_mod] = ACTIONS(1105), [anon_sym_enum] = ACTIONS(1105), [anon_sym_fn] = ACTIONS(1105), [anon_sym_for] = ACTIONS(1105), [anon_sym_if] = ACTIONS(1105), [anon_sym_impl] = ACTIONS(1105), [anon_sym_let] = ACTIONS(1105), [anon_sym_match] = ACTIONS(1105), [anon_sym_pub] = ACTIONS(1105), [anon_sym_return] = ACTIONS(1105), [anon_sym_storage] = ACTIONS(1105), [anon_sym_struct] = ACTIONS(1105), [anon_sym_trait] = ACTIONS(1105), [anon_sym_type] = ACTIONS(1105), [anon_sym_use] = ACTIONS(1105), [anon_sym_while] = ACTIONS(1105), [anon_sym_POUND] = ACTIONS(1103), [anon_sym_BANG] = ACTIONS(1103), [anon_sym_LBRACE] = ACTIONS(1103), [anon_sym_RBRACE] = ACTIONS(1103), [anon_sym_LPAREN] = ACTIONS(1103), [anon_sym_asm] = ACTIONS(1105), [anon_sym_LT] = ACTIONS(1103), [anon_sym_COLON_COLON] = ACTIONS(1103), [anon_sym_STAR] = ACTIONS(1103), [anon_sym_AMP] = ACTIONS(1103), [anon_sym_DOT_DOT] = ACTIONS(1103), [anon_sym_DASH] = ACTIONS(1103), [anon_sym_PIPE] = ACTIONS(1103), [anon_sym_yield] = ACTIONS(1105), [anon_sym_move] = ACTIONS(1105), [sym_integer_literal] = ACTIONS(1103), [aux_sym_string_literal_token1] = ACTIONS(1103), [sym_char_literal] = ACTIONS(1103), [anon_sym_true] = ACTIONS(1105), [anon_sym_false] = ACTIONS(1105), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1105), [sym_metavariable] = ACTIONS(1103), [sym_raw_string_literal] = ACTIONS(1103), [sym_float_literal] = ACTIONS(1103), [sym_block_comment] = ACTIONS(3), }, [287] = { [ts_builtin_sym_end] = ACTIONS(1107), [sym_identifier] = ACTIONS(1109), [anon_sym_SEMI] = ACTIONS(1107), [anon_sym_u8] = ACTIONS(1109), [anon_sym_i8] = ACTIONS(1109), [anon_sym_u16] = ACTIONS(1109), [anon_sym_i16] = ACTIONS(1109), [anon_sym_u32] = ACTIONS(1109), [anon_sym_i32] = ACTIONS(1109), [anon_sym_u64] = ACTIONS(1109), [anon_sym_i64] = ACTIONS(1109), [anon_sym_u128] = ACTIONS(1109), [anon_sym_i128] = ACTIONS(1109), [anon_sym_u256] = ACTIONS(1109), [anon_sym_i256] = ACTIONS(1109), [anon_sym_b256] = ACTIONS(1109), [anon_sym_isize] = ACTIONS(1109), [anon_sym_usize] = ACTIONS(1109), [anon_sym_f32] = ACTIONS(1109), [anon_sym_f64] = ACTIONS(1109), [anon_sym_bool] = ACTIONS(1109), [anon_sym_char] = ACTIONS(1109), [anon_sym_str] = ACTIONS(1109), [anon_sym_LBRACK] = ACTIONS(1107), [anon_sym_contract] = ACTIONS(1109), [anon_sym_script] = ACTIONS(1109), [anon_sym_predicate] = ACTIONS(1109), [anon_sym_library] = ACTIONS(1109), [anon_sym_SQUOTE] = ACTIONS(1109), [anon_sym_abi] = ACTIONS(1109), [anon_sym_break] = ACTIONS(1109), [anon_sym_configurable] = ACTIONS(1109), [anon_sym_const] = ACTIONS(1109), [anon_sym_continue] = ACTIONS(1109), [anon_sym_default] = ACTIONS(1109), [anon_sym_mod] = ACTIONS(1109), [anon_sym_enum] = ACTIONS(1109), [anon_sym_fn] = ACTIONS(1109), [anon_sym_for] = ACTIONS(1109), [anon_sym_if] = ACTIONS(1109), [anon_sym_impl] = ACTIONS(1109), [anon_sym_let] = ACTIONS(1109), [anon_sym_match] = ACTIONS(1109), [anon_sym_pub] = ACTIONS(1109), [anon_sym_return] = ACTIONS(1109), [anon_sym_storage] = ACTIONS(1109), [anon_sym_struct] = ACTIONS(1109), [anon_sym_trait] = ACTIONS(1109), [anon_sym_type] = ACTIONS(1109), [anon_sym_use] = ACTIONS(1109), [anon_sym_while] = ACTIONS(1109), [anon_sym_POUND] = ACTIONS(1107), [anon_sym_BANG] = ACTIONS(1107), [anon_sym_LBRACE] = ACTIONS(1107), [anon_sym_RBRACE] = ACTIONS(1107), [anon_sym_LPAREN] = ACTIONS(1107), [anon_sym_asm] = ACTIONS(1109), [anon_sym_LT] = ACTIONS(1107), [anon_sym_COLON_COLON] = ACTIONS(1107), [anon_sym_STAR] = ACTIONS(1107), [anon_sym_AMP] = ACTIONS(1107), [anon_sym_DOT_DOT] = ACTIONS(1107), [anon_sym_DASH] = ACTIONS(1107), [anon_sym_PIPE] = ACTIONS(1107), [anon_sym_yield] = ACTIONS(1109), [anon_sym_move] = ACTIONS(1109), [sym_integer_literal] = ACTIONS(1107), [aux_sym_string_literal_token1] = ACTIONS(1107), [sym_char_literal] = ACTIONS(1107), [anon_sym_true] = ACTIONS(1109), [anon_sym_false] = ACTIONS(1109), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1109), [sym_metavariable] = ACTIONS(1107), [sym_raw_string_literal] = ACTIONS(1107), [sym_float_literal] = ACTIONS(1107), [sym_block_comment] = ACTIONS(3), }, [288] = { [ts_builtin_sym_end] = ACTIONS(1111), [sym_identifier] = ACTIONS(1113), [anon_sym_SEMI] = ACTIONS(1111), [anon_sym_u8] = ACTIONS(1113), [anon_sym_i8] = ACTIONS(1113), [anon_sym_u16] = ACTIONS(1113), [anon_sym_i16] = ACTIONS(1113), [anon_sym_u32] = ACTIONS(1113), [anon_sym_i32] = ACTIONS(1113), [anon_sym_u64] = ACTIONS(1113), [anon_sym_i64] = ACTIONS(1113), [anon_sym_u128] = ACTIONS(1113), [anon_sym_i128] = ACTIONS(1113), [anon_sym_u256] = ACTIONS(1113), [anon_sym_i256] = ACTIONS(1113), [anon_sym_b256] = ACTIONS(1113), [anon_sym_isize] = ACTIONS(1113), [anon_sym_usize] = ACTIONS(1113), [anon_sym_f32] = ACTIONS(1113), [anon_sym_f64] = ACTIONS(1113), [anon_sym_bool] = ACTIONS(1113), [anon_sym_char] = ACTIONS(1113), [anon_sym_str] = ACTIONS(1113), [anon_sym_LBRACK] = ACTIONS(1111), [anon_sym_contract] = ACTIONS(1113), [anon_sym_script] = ACTIONS(1113), [anon_sym_predicate] = ACTIONS(1113), [anon_sym_library] = ACTIONS(1113), [anon_sym_SQUOTE] = ACTIONS(1113), [anon_sym_abi] = ACTIONS(1113), [anon_sym_break] = ACTIONS(1113), [anon_sym_configurable] = ACTIONS(1113), [anon_sym_const] = ACTIONS(1113), [anon_sym_continue] = ACTIONS(1113), [anon_sym_default] = ACTIONS(1113), [anon_sym_mod] = ACTIONS(1113), [anon_sym_enum] = ACTIONS(1113), [anon_sym_fn] = ACTIONS(1113), [anon_sym_for] = ACTIONS(1113), [anon_sym_if] = ACTIONS(1113), [anon_sym_impl] = ACTIONS(1113), [anon_sym_let] = ACTIONS(1113), [anon_sym_match] = ACTIONS(1113), [anon_sym_pub] = ACTIONS(1113), [anon_sym_return] = ACTIONS(1113), [anon_sym_storage] = ACTIONS(1113), [anon_sym_struct] = ACTIONS(1113), [anon_sym_trait] = ACTIONS(1113), [anon_sym_type] = ACTIONS(1113), [anon_sym_use] = ACTIONS(1113), [anon_sym_while] = ACTIONS(1113), [anon_sym_POUND] = ACTIONS(1111), [anon_sym_BANG] = ACTIONS(1111), [anon_sym_LBRACE] = ACTIONS(1111), [anon_sym_RBRACE] = ACTIONS(1111), [anon_sym_LPAREN] = ACTIONS(1111), [anon_sym_asm] = ACTIONS(1113), [anon_sym_LT] = ACTIONS(1111), [anon_sym_COLON_COLON] = ACTIONS(1111), [anon_sym_STAR] = ACTIONS(1111), [anon_sym_AMP] = ACTIONS(1111), [anon_sym_DOT_DOT] = ACTIONS(1111), [anon_sym_DASH] = ACTIONS(1111), [anon_sym_PIPE] = ACTIONS(1111), [anon_sym_yield] = ACTIONS(1113), [anon_sym_move] = ACTIONS(1113), [sym_integer_literal] = ACTIONS(1111), [aux_sym_string_literal_token1] = ACTIONS(1111), [sym_char_literal] = ACTIONS(1111), [anon_sym_true] = ACTIONS(1113), [anon_sym_false] = ACTIONS(1113), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1113), [sym_metavariable] = ACTIONS(1111), [sym_raw_string_literal] = ACTIONS(1111), [sym_float_literal] = ACTIONS(1111), [sym_block_comment] = ACTIONS(3), }, [289] = { [ts_builtin_sym_end] = ACTIONS(1115), [sym_identifier] = ACTIONS(1117), [anon_sym_SEMI] = ACTIONS(1115), [anon_sym_u8] = ACTIONS(1117), [anon_sym_i8] = ACTIONS(1117), [anon_sym_u16] = ACTIONS(1117), [anon_sym_i16] = ACTIONS(1117), [anon_sym_u32] = ACTIONS(1117), [anon_sym_i32] = ACTIONS(1117), [anon_sym_u64] = ACTIONS(1117), [anon_sym_i64] = ACTIONS(1117), [anon_sym_u128] = ACTIONS(1117), [anon_sym_i128] = ACTIONS(1117), [anon_sym_u256] = ACTIONS(1117), [anon_sym_i256] = ACTIONS(1117), [anon_sym_b256] = ACTIONS(1117), [anon_sym_isize] = ACTIONS(1117), [anon_sym_usize] = ACTIONS(1117), [anon_sym_f32] = ACTIONS(1117), [anon_sym_f64] = ACTIONS(1117), [anon_sym_bool] = ACTIONS(1117), [anon_sym_char] = ACTIONS(1117), [anon_sym_str] = ACTIONS(1117), [anon_sym_LBRACK] = ACTIONS(1115), [anon_sym_contract] = ACTIONS(1117), [anon_sym_script] = ACTIONS(1117), [anon_sym_predicate] = ACTIONS(1117), [anon_sym_library] = ACTIONS(1117), [anon_sym_SQUOTE] = ACTIONS(1117), [anon_sym_abi] = ACTIONS(1117), [anon_sym_break] = ACTIONS(1117), [anon_sym_configurable] = ACTIONS(1117), [anon_sym_const] = ACTIONS(1117), [anon_sym_continue] = ACTIONS(1117), [anon_sym_default] = ACTIONS(1117), [anon_sym_mod] = ACTIONS(1117), [anon_sym_enum] = ACTIONS(1117), [anon_sym_fn] = ACTIONS(1117), [anon_sym_for] = ACTIONS(1117), [anon_sym_if] = ACTIONS(1117), [anon_sym_impl] = ACTIONS(1117), [anon_sym_let] = ACTIONS(1117), [anon_sym_match] = ACTIONS(1117), [anon_sym_pub] = ACTIONS(1117), [anon_sym_return] = ACTIONS(1117), [anon_sym_storage] = ACTIONS(1117), [anon_sym_struct] = ACTIONS(1117), [anon_sym_trait] = ACTIONS(1117), [anon_sym_type] = ACTIONS(1117), [anon_sym_use] = ACTIONS(1117), [anon_sym_while] = ACTIONS(1117), [anon_sym_POUND] = ACTIONS(1115), [anon_sym_BANG] = ACTIONS(1115), [anon_sym_LBRACE] = ACTIONS(1115), [anon_sym_RBRACE] = ACTIONS(1115), [anon_sym_LPAREN] = ACTIONS(1115), [anon_sym_asm] = ACTIONS(1117), [anon_sym_LT] = ACTIONS(1115), [anon_sym_COLON_COLON] = ACTIONS(1115), [anon_sym_STAR] = ACTIONS(1115), [anon_sym_AMP] = ACTIONS(1115), [anon_sym_DOT_DOT] = ACTIONS(1115), [anon_sym_DASH] = ACTIONS(1115), [anon_sym_PIPE] = ACTIONS(1115), [anon_sym_yield] = ACTIONS(1117), [anon_sym_move] = ACTIONS(1117), [sym_integer_literal] = ACTIONS(1115), [aux_sym_string_literal_token1] = ACTIONS(1115), [sym_char_literal] = ACTIONS(1115), [anon_sym_true] = ACTIONS(1117), [anon_sym_false] = ACTIONS(1117), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1117), [sym_metavariable] = ACTIONS(1115), [sym_raw_string_literal] = ACTIONS(1115), [sym_float_literal] = ACTIONS(1115), [sym_block_comment] = ACTIONS(3), }, [290] = { [ts_builtin_sym_end] = ACTIONS(1119), [sym_identifier] = ACTIONS(1121), [anon_sym_SEMI] = ACTIONS(1119), [anon_sym_u8] = ACTIONS(1121), [anon_sym_i8] = ACTIONS(1121), [anon_sym_u16] = ACTIONS(1121), [anon_sym_i16] = ACTIONS(1121), [anon_sym_u32] = ACTIONS(1121), [anon_sym_i32] = ACTIONS(1121), [anon_sym_u64] = ACTIONS(1121), [anon_sym_i64] = ACTIONS(1121), [anon_sym_u128] = ACTIONS(1121), [anon_sym_i128] = ACTIONS(1121), [anon_sym_u256] = ACTIONS(1121), [anon_sym_i256] = ACTIONS(1121), [anon_sym_b256] = ACTIONS(1121), [anon_sym_isize] = ACTIONS(1121), [anon_sym_usize] = ACTIONS(1121), [anon_sym_f32] = ACTIONS(1121), [anon_sym_f64] = ACTIONS(1121), [anon_sym_bool] = ACTIONS(1121), [anon_sym_char] = ACTIONS(1121), [anon_sym_str] = ACTIONS(1121), [anon_sym_LBRACK] = ACTIONS(1119), [anon_sym_contract] = ACTIONS(1121), [anon_sym_script] = ACTIONS(1121), [anon_sym_predicate] = ACTIONS(1121), [anon_sym_library] = ACTIONS(1121), [anon_sym_SQUOTE] = ACTIONS(1121), [anon_sym_abi] = ACTIONS(1121), [anon_sym_break] = ACTIONS(1121), [anon_sym_configurable] = ACTIONS(1121), [anon_sym_const] = ACTIONS(1121), [anon_sym_continue] = ACTIONS(1121), [anon_sym_default] = ACTIONS(1121), [anon_sym_mod] = ACTIONS(1121), [anon_sym_enum] = ACTIONS(1121), [anon_sym_fn] = ACTIONS(1121), [anon_sym_for] = ACTIONS(1121), [anon_sym_if] = ACTIONS(1121), [anon_sym_impl] = ACTIONS(1121), [anon_sym_let] = ACTIONS(1121), [anon_sym_match] = ACTIONS(1121), [anon_sym_pub] = ACTIONS(1121), [anon_sym_return] = ACTIONS(1121), [anon_sym_storage] = ACTIONS(1121), [anon_sym_struct] = ACTIONS(1121), [anon_sym_trait] = ACTIONS(1121), [anon_sym_type] = ACTIONS(1121), [anon_sym_use] = ACTIONS(1121), [anon_sym_while] = ACTIONS(1121), [anon_sym_POUND] = ACTIONS(1119), [anon_sym_BANG] = ACTIONS(1119), [anon_sym_LBRACE] = ACTIONS(1119), [anon_sym_RBRACE] = ACTIONS(1119), [anon_sym_LPAREN] = ACTIONS(1119), [anon_sym_asm] = ACTIONS(1121), [anon_sym_LT] = ACTIONS(1119), [anon_sym_COLON_COLON] = ACTIONS(1119), [anon_sym_STAR] = ACTIONS(1119), [anon_sym_AMP] = ACTIONS(1119), [anon_sym_DOT_DOT] = ACTIONS(1119), [anon_sym_DASH] = ACTIONS(1119), [anon_sym_PIPE] = ACTIONS(1119), [anon_sym_yield] = ACTIONS(1121), [anon_sym_move] = ACTIONS(1121), [sym_integer_literal] = ACTIONS(1119), [aux_sym_string_literal_token1] = ACTIONS(1119), [sym_char_literal] = ACTIONS(1119), [anon_sym_true] = ACTIONS(1121), [anon_sym_false] = ACTIONS(1121), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1121), [sym_metavariable] = ACTIONS(1119), [sym_raw_string_literal] = ACTIONS(1119), [sym_float_literal] = ACTIONS(1119), [sym_block_comment] = ACTIONS(3), }, [291] = { [ts_builtin_sym_end] = ACTIONS(1123), [sym_identifier] = ACTIONS(1125), [anon_sym_SEMI] = ACTIONS(1123), [anon_sym_u8] = ACTIONS(1125), [anon_sym_i8] = ACTIONS(1125), [anon_sym_u16] = ACTIONS(1125), [anon_sym_i16] = ACTIONS(1125), [anon_sym_u32] = ACTIONS(1125), [anon_sym_i32] = ACTIONS(1125), [anon_sym_u64] = ACTIONS(1125), [anon_sym_i64] = ACTIONS(1125), [anon_sym_u128] = ACTIONS(1125), [anon_sym_i128] = ACTIONS(1125), [anon_sym_u256] = ACTIONS(1125), [anon_sym_i256] = ACTIONS(1125), [anon_sym_b256] = ACTIONS(1125), [anon_sym_isize] = ACTIONS(1125), [anon_sym_usize] = ACTIONS(1125), [anon_sym_f32] = ACTIONS(1125), [anon_sym_f64] = ACTIONS(1125), [anon_sym_bool] = ACTIONS(1125), [anon_sym_char] = ACTIONS(1125), [anon_sym_str] = ACTIONS(1125), [anon_sym_LBRACK] = ACTIONS(1123), [anon_sym_contract] = ACTIONS(1125), [anon_sym_script] = ACTIONS(1125), [anon_sym_predicate] = ACTIONS(1125), [anon_sym_library] = ACTIONS(1125), [anon_sym_SQUOTE] = ACTIONS(1125), [anon_sym_abi] = ACTIONS(1125), [anon_sym_break] = ACTIONS(1125), [anon_sym_configurable] = ACTIONS(1125), [anon_sym_const] = ACTIONS(1125), [anon_sym_continue] = ACTIONS(1125), [anon_sym_default] = ACTIONS(1125), [anon_sym_mod] = ACTIONS(1125), [anon_sym_enum] = ACTIONS(1125), [anon_sym_fn] = ACTIONS(1125), [anon_sym_for] = ACTIONS(1125), [anon_sym_if] = ACTIONS(1125), [anon_sym_impl] = ACTIONS(1125), [anon_sym_let] = ACTIONS(1125), [anon_sym_match] = ACTIONS(1125), [anon_sym_pub] = ACTIONS(1125), [anon_sym_return] = ACTIONS(1125), [anon_sym_storage] = ACTIONS(1125), [anon_sym_struct] = ACTIONS(1125), [anon_sym_trait] = ACTIONS(1125), [anon_sym_type] = ACTIONS(1125), [anon_sym_use] = ACTIONS(1125), [anon_sym_while] = ACTIONS(1125), [anon_sym_POUND] = ACTIONS(1123), [anon_sym_BANG] = ACTIONS(1123), [anon_sym_LBRACE] = ACTIONS(1123), [anon_sym_RBRACE] = ACTIONS(1123), [anon_sym_LPAREN] = ACTIONS(1123), [anon_sym_asm] = ACTIONS(1125), [anon_sym_LT] = ACTIONS(1123), [anon_sym_COLON_COLON] = ACTIONS(1123), [anon_sym_STAR] = ACTIONS(1123), [anon_sym_AMP] = ACTIONS(1123), [anon_sym_DOT_DOT] = ACTIONS(1123), [anon_sym_DASH] = ACTIONS(1123), [anon_sym_PIPE] = ACTIONS(1123), [anon_sym_yield] = ACTIONS(1125), [anon_sym_move] = ACTIONS(1125), [sym_integer_literal] = ACTIONS(1123), [aux_sym_string_literal_token1] = ACTIONS(1123), [sym_char_literal] = ACTIONS(1123), [anon_sym_true] = ACTIONS(1125), [anon_sym_false] = ACTIONS(1125), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1125), [sym_metavariable] = ACTIONS(1123), [sym_raw_string_literal] = ACTIONS(1123), [sym_float_literal] = ACTIONS(1123), [sym_block_comment] = ACTIONS(3), }, [292] = { [ts_builtin_sym_end] = ACTIONS(1127), [sym_identifier] = ACTIONS(1129), [anon_sym_SEMI] = ACTIONS(1127), [anon_sym_u8] = ACTIONS(1129), [anon_sym_i8] = ACTIONS(1129), [anon_sym_u16] = ACTIONS(1129), [anon_sym_i16] = ACTIONS(1129), [anon_sym_u32] = ACTIONS(1129), [anon_sym_i32] = ACTIONS(1129), [anon_sym_u64] = ACTIONS(1129), [anon_sym_i64] = ACTIONS(1129), [anon_sym_u128] = ACTIONS(1129), [anon_sym_i128] = ACTIONS(1129), [anon_sym_u256] = ACTIONS(1129), [anon_sym_i256] = ACTIONS(1129), [anon_sym_b256] = ACTIONS(1129), [anon_sym_isize] = ACTIONS(1129), [anon_sym_usize] = ACTIONS(1129), [anon_sym_f32] = ACTIONS(1129), [anon_sym_f64] = ACTIONS(1129), [anon_sym_bool] = ACTIONS(1129), [anon_sym_char] = ACTIONS(1129), [anon_sym_str] = ACTIONS(1129), [anon_sym_LBRACK] = ACTIONS(1127), [anon_sym_contract] = ACTIONS(1129), [anon_sym_script] = ACTIONS(1129), [anon_sym_predicate] = ACTIONS(1129), [anon_sym_library] = ACTIONS(1129), [anon_sym_SQUOTE] = ACTIONS(1129), [anon_sym_abi] = ACTIONS(1129), [anon_sym_break] = ACTIONS(1129), [anon_sym_configurable] = ACTIONS(1129), [anon_sym_const] = ACTIONS(1129), [anon_sym_continue] = ACTIONS(1129), [anon_sym_default] = ACTIONS(1129), [anon_sym_mod] = ACTIONS(1129), [anon_sym_enum] = ACTIONS(1129), [anon_sym_fn] = ACTIONS(1129), [anon_sym_for] = ACTIONS(1129), [anon_sym_if] = ACTIONS(1129), [anon_sym_impl] = ACTIONS(1129), [anon_sym_let] = ACTIONS(1129), [anon_sym_match] = ACTIONS(1129), [anon_sym_pub] = ACTIONS(1129), [anon_sym_return] = ACTIONS(1129), [anon_sym_storage] = ACTIONS(1129), [anon_sym_struct] = ACTIONS(1129), [anon_sym_trait] = ACTIONS(1129), [anon_sym_type] = ACTIONS(1129), [anon_sym_use] = ACTIONS(1129), [anon_sym_while] = ACTIONS(1129), [anon_sym_POUND] = ACTIONS(1127), [anon_sym_BANG] = ACTIONS(1127), [anon_sym_LBRACE] = ACTIONS(1127), [anon_sym_RBRACE] = ACTIONS(1127), [anon_sym_LPAREN] = ACTIONS(1127), [anon_sym_asm] = ACTIONS(1129), [anon_sym_LT] = ACTIONS(1127), [anon_sym_COLON_COLON] = ACTIONS(1127), [anon_sym_STAR] = ACTIONS(1127), [anon_sym_AMP] = ACTIONS(1127), [anon_sym_DOT_DOT] = ACTIONS(1127), [anon_sym_DASH] = ACTIONS(1127), [anon_sym_PIPE] = ACTIONS(1127), [anon_sym_yield] = ACTIONS(1129), [anon_sym_move] = ACTIONS(1129), [sym_integer_literal] = ACTIONS(1127), [aux_sym_string_literal_token1] = ACTIONS(1127), [sym_char_literal] = ACTIONS(1127), [anon_sym_true] = ACTIONS(1129), [anon_sym_false] = ACTIONS(1129), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1129), [sym_metavariable] = ACTIONS(1127), [sym_raw_string_literal] = ACTIONS(1127), [sym_float_literal] = ACTIONS(1127), [sym_block_comment] = ACTIONS(3), }, [293] = { [ts_builtin_sym_end] = ACTIONS(1131), [sym_identifier] = ACTIONS(1133), [anon_sym_SEMI] = ACTIONS(1131), [anon_sym_u8] = ACTIONS(1133), [anon_sym_i8] = ACTIONS(1133), [anon_sym_u16] = ACTIONS(1133), [anon_sym_i16] = ACTIONS(1133), [anon_sym_u32] = ACTIONS(1133), [anon_sym_i32] = ACTIONS(1133), [anon_sym_u64] = ACTIONS(1133), [anon_sym_i64] = ACTIONS(1133), [anon_sym_u128] = ACTIONS(1133), [anon_sym_i128] = ACTIONS(1133), [anon_sym_u256] = ACTIONS(1133), [anon_sym_i256] = ACTIONS(1133), [anon_sym_b256] = ACTIONS(1133), [anon_sym_isize] = ACTIONS(1133), [anon_sym_usize] = ACTIONS(1133), [anon_sym_f32] = ACTIONS(1133), [anon_sym_f64] = ACTIONS(1133), [anon_sym_bool] = ACTIONS(1133), [anon_sym_char] = ACTIONS(1133), [anon_sym_str] = ACTIONS(1133), [anon_sym_LBRACK] = ACTIONS(1131), [anon_sym_contract] = ACTIONS(1133), [anon_sym_script] = ACTIONS(1133), [anon_sym_predicate] = ACTIONS(1133), [anon_sym_library] = ACTIONS(1133), [anon_sym_SQUOTE] = ACTIONS(1133), [anon_sym_abi] = ACTIONS(1133), [anon_sym_break] = ACTIONS(1133), [anon_sym_configurable] = ACTIONS(1133), [anon_sym_const] = ACTIONS(1133), [anon_sym_continue] = ACTIONS(1133), [anon_sym_default] = ACTIONS(1133), [anon_sym_mod] = ACTIONS(1133), [anon_sym_enum] = ACTIONS(1133), [anon_sym_fn] = ACTIONS(1133), [anon_sym_for] = ACTIONS(1133), [anon_sym_if] = ACTIONS(1133), [anon_sym_impl] = ACTIONS(1133), [anon_sym_let] = ACTIONS(1133), [anon_sym_match] = ACTIONS(1133), [anon_sym_pub] = ACTIONS(1133), [anon_sym_return] = ACTIONS(1133), [anon_sym_storage] = ACTIONS(1133), [anon_sym_struct] = ACTIONS(1133), [anon_sym_trait] = ACTIONS(1133), [anon_sym_type] = ACTIONS(1133), [anon_sym_use] = ACTIONS(1133), [anon_sym_while] = ACTIONS(1133), [anon_sym_POUND] = ACTIONS(1131), [anon_sym_BANG] = ACTIONS(1131), [anon_sym_LBRACE] = ACTIONS(1131), [anon_sym_RBRACE] = ACTIONS(1131), [anon_sym_LPAREN] = ACTIONS(1131), [anon_sym_asm] = ACTIONS(1133), [anon_sym_LT] = ACTIONS(1131), [anon_sym_COLON_COLON] = ACTIONS(1131), [anon_sym_STAR] = ACTIONS(1131), [anon_sym_AMP] = ACTIONS(1131), [anon_sym_DOT_DOT] = ACTIONS(1131), [anon_sym_DASH] = ACTIONS(1131), [anon_sym_PIPE] = ACTIONS(1131), [anon_sym_yield] = ACTIONS(1133), [anon_sym_move] = ACTIONS(1133), [sym_integer_literal] = ACTIONS(1131), [aux_sym_string_literal_token1] = ACTIONS(1131), [sym_char_literal] = ACTIONS(1131), [anon_sym_true] = ACTIONS(1133), [anon_sym_false] = ACTIONS(1133), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1133), [sym_metavariable] = ACTIONS(1131), [sym_raw_string_literal] = ACTIONS(1131), [sym_float_literal] = ACTIONS(1131), [sym_block_comment] = ACTIONS(3), }, [294] = { [ts_builtin_sym_end] = ACTIONS(1135), [sym_identifier] = ACTIONS(1137), [anon_sym_SEMI] = ACTIONS(1135), [anon_sym_u8] = ACTIONS(1137), [anon_sym_i8] = ACTIONS(1137), [anon_sym_u16] = ACTIONS(1137), [anon_sym_i16] = ACTIONS(1137), [anon_sym_u32] = ACTIONS(1137), [anon_sym_i32] = ACTIONS(1137), [anon_sym_u64] = ACTIONS(1137), [anon_sym_i64] = ACTIONS(1137), [anon_sym_u128] = ACTIONS(1137), [anon_sym_i128] = ACTIONS(1137), [anon_sym_u256] = ACTIONS(1137), [anon_sym_i256] = ACTIONS(1137), [anon_sym_b256] = ACTIONS(1137), [anon_sym_isize] = ACTIONS(1137), [anon_sym_usize] = ACTIONS(1137), [anon_sym_f32] = ACTIONS(1137), [anon_sym_f64] = ACTIONS(1137), [anon_sym_bool] = ACTIONS(1137), [anon_sym_char] = ACTIONS(1137), [anon_sym_str] = ACTIONS(1137), [anon_sym_LBRACK] = ACTIONS(1135), [anon_sym_contract] = ACTIONS(1137), [anon_sym_script] = ACTIONS(1137), [anon_sym_predicate] = ACTIONS(1137), [anon_sym_library] = ACTIONS(1137), [anon_sym_SQUOTE] = ACTIONS(1137), [anon_sym_abi] = ACTIONS(1137), [anon_sym_break] = ACTIONS(1137), [anon_sym_configurable] = ACTIONS(1137), [anon_sym_const] = ACTIONS(1137), [anon_sym_continue] = ACTIONS(1137), [anon_sym_default] = ACTIONS(1137), [anon_sym_mod] = ACTIONS(1137), [anon_sym_enum] = ACTIONS(1137), [anon_sym_fn] = ACTIONS(1137), [anon_sym_for] = ACTIONS(1137), [anon_sym_if] = ACTIONS(1137), [anon_sym_impl] = ACTIONS(1137), [anon_sym_let] = ACTIONS(1137), [anon_sym_match] = ACTIONS(1137), [anon_sym_pub] = ACTIONS(1137), [anon_sym_return] = ACTIONS(1137), [anon_sym_storage] = ACTIONS(1137), [anon_sym_struct] = ACTIONS(1137), [anon_sym_trait] = ACTIONS(1137), [anon_sym_type] = ACTIONS(1137), [anon_sym_use] = ACTIONS(1137), [anon_sym_while] = ACTIONS(1137), [anon_sym_POUND] = ACTIONS(1135), [anon_sym_BANG] = ACTIONS(1135), [anon_sym_LBRACE] = ACTIONS(1135), [anon_sym_RBRACE] = ACTIONS(1135), [anon_sym_LPAREN] = ACTIONS(1135), [anon_sym_asm] = ACTIONS(1137), [anon_sym_LT] = ACTIONS(1135), [anon_sym_COLON_COLON] = ACTIONS(1135), [anon_sym_STAR] = ACTIONS(1135), [anon_sym_AMP] = ACTIONS(1135), [anon_sym_DOT_DOT] = ACTIONS(1135), [anon_sym_DASH] = ACTIONS(1135), [anon_sym_PIPE] = ACTIONS(1135), [anon_sym_yield] = ACTIONS(1137), [anon_sym_move] = ACTIONS(1137), [sym_integer_literal] = ACTIONS(1135), [aux_sym_string_literal_token1] = ACTIONS(1135), [sym_char_literal] = ACTIONS(1135), [anon_sym_true] = ACTIONS(1137), [anon_sym_false] = ACTIONS(1137), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1137), [sym_metavariable] = ACTIONS(1135), [sym_raw_string_literal] = ACTIONS(1135), [sym_float_literal] = ACTIONS(1135), [sym_block_comment] = ACTIONS(3), }, [295] = { [ts_builtin_sym_end] = ACTIONS(1139), [sym_identifier] = ACTIONS(1141), [anon_sym_SEMI] = ACTIONS(1139), [anon_sym_u8] = ACTIONS(1141), [anon_sym_i8] = ACTIONS(1141), [anon_sym_u16] = ACTIONS(1141), [anon_sym_i16] = ACTIONS(1141), [anon_sym_u32] = ACTIONS(1141), [anon_sym_i32] = ACTIONS(1141), [anon_sym_u64] = ACTIONS(1141), [anon_sym_i64] = ACTIONS(1141), [anon_sym_u128] = ACTIONS(1141), [anon_sym_i128] = ACTIONS(1141), [anon_sym_u256] = ACTIONS(1141), [anon_sym_i256] = ACTIONS(1141), [anon_sym_b256] = ACTIONS(1141), [anon_sym_isize] = ACTIONS(1141), [anon_sym_usize] = ACTIONS(1141), [anon_sym_f32] = ACTIONS(1141), [anon_sym_f64] = ACTIONS(1141), [anon_sym_bool] = ACTIONS(1141), [anon_sym_char] = ACTIONS(1141), [anon_sym_str] = ACTIONS(1141), [anon_sym_LBRACK] = ACTIONS(1139), [anon_sym_contract] = ACTIONS(1141), [anon_sym_script] = ACTIONS(1141), [anon_sym_predicate] = ACTIONS(1141), [anon_sym_library] = ACTIONS(1141), [anon_sym_SQUOTE] = ACTIONS(1141), [anon_sym_abi] = ACTIONS(1141), [anon_sym_break] = ACTIONS(1141), [anon_sym_configurable] = ACTIONS(1141), [anon_sym_const] = ACTIONS(1141), [anon_sym_continue] = ACTIONS(1141), [anon_sym_default] = ACTIONS(1141), [anon_sym_mod] = ACTIONS(1141), [anon_sym_enum] = ACTIONS(1141), [anon_sym_fn] = ACTIONS(1141), [anon_sym_for] = ACTIONS(1141), [anon_sym_if] = ACTIONS(1141), [anon_sym_impl] = ACTIONS(1141), [anon_sym_let] = ACTIONS(1141), [anon_sym_match] = ACTIONS(1141), [anon_sym_pub] = ACTIONS(1141), [anon_sym_return] = ACTIONS(1141), [anon_sym_storage] = ACTIONS(1141), [anon_sym_struct] = ACTIONS(1141), [anon_sym_trait] = ACTIONS(1141), [anon_sym_type] = ACTIONS(1141), [anon_sym_use] = ACTIONS(1141), [anon_sym_while] = ACTIONS(1141), [anon_sym_POUND] = ACTIONS(1139), [anon_sym_BANG] = ACTIONS(1139), [anon_sym_LBRACE] = ACTIONS(1139), [anon_sym_RBRACE] = ACTIONS(1139), [anon_sym_LPAREN] = ACTIONS(1139), [anon_sym_asm] = ACTIONS(1141), [anon_sym_LT] = ACTIONS(1139), [anon_sym_COLON_COLON] = ACTIONS(1139), [anon_sym_STAR] = ACTIONS(1139), [anon_sym_AMP] = ACTIONS(1139), [anon_sym_DOT_DOT] = ACTIONS(1139), [anon_sym_DASH] = ACTIONS(1139), [anon_sym_PIPE] = ACTIONS(1139), [anon_sym_yield] = ACTIONS(1141), [anon_sym_move] = ACTIONS(1141), [sym_integer_literal] = ACTIONS(1139), [aux_sym_string_literal_token1] = ACTIONS(1139), [sym_char_literal] = ACTIONS(1139), [anon_sym_true] = ACTIONS(1141), [anon_sym_false] = ACTIONS(1141), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1141), [sym_metavariable] = ACTIONS(1139), [sym_raw_string_literal] = ACTIONS(1139), [sym_float_literal] = ACTIONS(1139), [sym_block_comment] = ACTIONS(3), }, [296] = { [ts_builtin_sym_end] = ACTIONS(1143), [sym_identifier] = ACTIONS(1145), [anon_sym_SEMI] = ACTIONS(1143), [anon_sym_u8] = ACTIONS(1145), [anon_sym_i8] = ACTIONS(1145), [anon_sym_u16] = ACTIONS(1145), [anon_sym_i16] = ACTIONS(1145), [anon_sym_u32] = ACTIONS(1145), [anon_sym_i32] = ACTIONS(1145), [anon_sym_u64] = ACTIONS(1145), [anon_sym_i64] = ACTIONS(1145), [anon_sym_u128] = ACTIONS(1145), [anon_sym_i128] = ACTIONS(1145), [anon_sym_u256] = ACTIONS(1145), [anon_sym_i256] = ACTIONS(1145), [anon_sym_b256] = ACTIONS(1145), [anon_sym_isize] = ACTIONS(1145), [anon_sym_usize] = ACTIONS(1145), [anon_sym_f32] = ACTIONS(1145), [anon_sym_f64] = ACTIONS(1145), [anon_sym_bool] = ACTIONS(1145), [anon_sym_char] = ACTIONS(1145), [anon_sym_str] = ACTIONS(1145), [anon_sym_LBRACK] = ACTIONS(1143), [anon_sym_contract] = ACTIONS(1145), [anon_sym_script] = ACTIONS(1145), [anon_sym_predicate] = ACTIONS(1145), [anon_sym_library] = ACTIONS(1145), [anon_sym_SQUOTE] = ACTIONS(1145), [anon_sym_abi] = ACTIONS(1145), [anon_sym_break] = ACTIONS(1145), [anon_sym_configurable] = ACTIONS(1145), [anon_sym_const] = ACTIONS(1145), [anon_sym_continue] = ACTIONS(1145), [anon_sym_default] = ACTIONS(1145), [anon_sym_mod] = ACTIONS(1145), [anon_sym_enum] = ACTIONS(1145), [anon_sym_fn] = ACTIONS(1145), [anon_sym_for] = ACTIONS(1145), [anon_sym_if] = ACTIONS(1145), [anon_sym_impl] = ACTIONS(1145), [anon_sym_let] = ACTIONS(1145), [anon_sym_match] = ACTIONS(1145), [anon_sym_pub] = ACTIONS(1145), [anon_sym_return] = ACTIONS(1145), [anon_sym_storage] = ACTIONS(1145), [anon_sym_struct] = ACTIONS(1145), [anon_sym_trait] = ACTIONS(1145), [anon_sym_type] = ACTIONS(1145), [anon_sym_use] = ACTIONS(1145), [anon_sym_while] = ACTIONS(1145), [anon_sym_POUND] = ACTIONS(1143), [anon_sym_BANG] = ACTIONS(1143), [anon_sym_LBRACE] = ACTIONS(1143), [anon_sym_RBRACE] = ACTIONS(1143), [anon_sym_LPAREN] = ACTIONS(1143), [anon_sym_asm] = ACTIONS(1145), [anon_sym_LT] = ACTIONS(1143), [anon_sym_COLON_COLON] = ACTIONS(1143), [anon_sym_STAR] = ACTIONS(1143), [anon_sym_AMP] = ACTIONS(1143), [anon_sym_DOT_DOT] = ACTIONS(1143), [anon_sym_DASH] = ACTIONS(1143), [anon_sym_PIPE] = ACTIONS(1143), [anon_sym_yield] = ACTIONS(1145), [anon_sym_move] = ACTIONS(1145), [sym_integer_literal] = ACTIONS(1143), [aux_sym_string_literal_token1] = ACTIONS(1143), [sym_char_literal] = ACTIONS(1143), [anon_sym_true] = ACTIONS(1145), [anon_sym_false] = ACTIONS(1145), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1145), [sym_metavariable] = ACTIONS(1143), [sym_raw_string_literal] = ACTIONS(1143), [sym_float_literal] = ACTIONS(1143), [sym_block_comment] = ACTIONS(3), }, [297] = { [ts_builtin_sym_end] = ACTIONS(1147), [sym_identifier] = ACTIONS(1149), [anon_sym_SEMI] = ACTIONS(1147), [anon_sym_u8] = ACTIONS(1149), [anon_sym_i8] = ACTIONS(1149), [anon_sym_u16] = ACTIONS(1149), [anon_sym_i16] = ACTIONS(1149), [anon_sym_u32] = ACTIONS(1149), [anon_sym_i32] = ACTIONS(1149), [anon_sym_u64] = ACTIONS(1149), [anon_sym_i64] = ACTIONS(1149), [anon_sym_u128] = ACTIONS(1149), [anon_sym_i128] = ACTIONS(1149), [anon_sym_u256] = ACTIONS(1149), [anon_sym_i256] = ACTIONS(1149), [anon_sym_b256] = ACTIONS(1149), [anon_sym_isize] = ACTIONS(1149), [anon_sym_usize] = ACTIONS(1149), [anon_sym_f32] = ACTIONS(1149), [anon_sym_f64] = ACTIONS(1149), [anon_sym_bool] = ACTIONS(1149), [anon_sym_char] = ACTIONS(1149), [anon_sym_str] = ACTIONS(1149), [anon_sym_LBRACK] = ACTIONS(1147), [anon_sym_contract] = ACTIONS(1149), [anon_sym_script] = ACTIONS(1149), [anon_sym_predicate] = ACTIONS(1149), [anon_sym_library] = ACTIONS(1149), [anon_sym_SQUOTE] = ACTIONS(1149), [anon_sym_abi] = ACTIONS(1149), [anon_sym_break] = ACTIONS(1149), [anon_sym_configurable] = ACTIONS(1149), [anon_sym_const] = ACTIONS(1149), [anon_sym_continue] = ACTIONS(1149), [anon_sym_default] = ACTIONS(1149), [anon_sym_mod] = ACTIONS(1149), [anon_sym_enum] = ACTIONS(1149), [anon_sym_fn] = ACTIONS(1149), [anon_sym_for] = ACTIONS(1149), [anon_sym_if] = ACTIONS(1149), [anon_sym_impl] = ACTIONS(1149), [anon_sym_let] = ACTIONS(1149), [anon_sym_match] = ACTIONS(1149), [anon_sym_pub] = ACTIONS(1149), [anon_sym_return] = ACTIONS(1149), [anon_sym_storage] = ACTIONS(1149), [anon_sym_struct] = ACTIONS(1149), [anon_sym_trait] = ACTIONS(1149), [anon_sym_type] = ACTIONS(1149), [anon_sym_use] = ACTIONS(1149), [anon_sym_while] = ACTIONS(1149), [anon_sym_POUND] = ACTIONS(1147), [anon_sym_BANG] = ACTIONS(1147), [anon_sym_LBRACE] = ACTIONS(1147), [anon_sym_RBRACE] = ACTIONS(1147), [anon_sym_LPAREN] = ACTIONS(1147), [anon_sym_asm] = ACTIONS(1149), [anon_sym_LT] = ACTIONS(1147), [anon_sym_COLON_COLON] = ACTIONS(1147), [anon_sym_STAR] = ACTIONS(1147), [anon_sym_AMP] = ACTIONS(1147), [anon_sym_DOT_DOT] = ACTIONS(1147), [anon_sym_DASH] = ACTIONS(1147), [anon_sym_PIPE] = ACTIONS(1147), [anon_sym_yield] = ACTIONS(1149), [anon_sym_move] = ACTIONS(1149), [sym_integer_literal] = ACTIONS(1147), [aux_sym_string_literal_token1] = ACTIONS(1147), [sym_char_literal] = ACTIONS(1147), [anon_sym_true] = ACTIONS(1149), [anon_sym_false] = ACTIONS(1149), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1149), [sym_metavariable] = ACTIONS(1147), [sym_raw_string_literal] = ACTIONS(1147), [sym_float_literal] = ACTIONS(1147), [sym_block_comment] = ACTIONS(3), }, [298] = { [ts_builtin_sym_end] = ACTIONS(1151), [sym_identifier] = ACTIONS(1153), [anon_sym_SEMI] = ACTIONS(1151), [anon_sym_u8] = ACTIONS(1153), [anon_sym_i8] = ACTIONS(1153), [anon_sym_u16] = ACTIONS(1153), [anon_sym_i16] = ACTIONS(1153), [anon_sym_u32] = ACTIONS(1153), [anon_sym_i32] = ACTIONS(1153), [anon_sym_u64] = ACTIONS(1153), [anon_sym_i64] = ACTIONS(1153), [anon_sym_u128] = ACTIONS(1153), [anon_sym_i128] = ACTIONS(1153), [anon_sym_u256] = ACTIONS(1153), [anon_sym_i256] = ACTIONS(1153), [anon_sym_b256] = ACTIONS(1153), [anon_sym_isize] = ACTIONS(1153), [anon_sym_usize] = ACTIONS(1153), [anon_sym_f32] = ACTIONS(1153), [anon_sym_f64] = ACTIONS(1153), [anon_sym_bool] = ACTIONS(1153), [anon_sym_char] = ACTIONS(1153), [anon_sym_str] = ACTIONS(1153), [anon_sym_LBRACK] = ACTIONS(1151), [anon_sym_contract] = ACTIONS(1153), [anon_sym_script] = ACTIONS(1153), [anon_sym_predicate] = ACTIONS(1153), [anon_sym_library] = ACTIONS(1153), [anon_sym_SQUOTE] = ACTIONS(1153), [anon_sym_abi] = ACTIONS(1153), [anon_sym_break] = ACTIONS(1153), [anon_sym_configurable] = ACTIONS(1153), [anon_sym_const] = ACTIONS(1153), [anon_sym_continue] = ACTIONS(1153), [anon_sym_default] = ACTIONS(1153), [anon_sym_mod] = ACTIONS(1153), [anon_sym_enum] = ACTIONS(1153), [anon_sym_fn] = ACTIONS(1153), [anon_sym_for] = ACTIONS(1153), [anon_sym_if] = ACTIONS(1153), [anon_sym_impl] = ACTIONS(1153), [anon_sym_let] = ACTIONS(1153), [anon_sym_match] = ACTIONS(1153), [anon_sym_pub] = ACTIONS(1153), [anon_sym_return] = ACTIONS(1153), [anon_sym_storage] = ACTIONS(1153), [anon_sym_struct] = ACTIONS(1153), [anon_sym_trait] = ACTIONS(1153), [anon_sym_type] = ACTIONS(1153), [anon_sym_use] = ACTIONS(1153), [anon_sym_while] = ACTIONS(1153), [anon_sym_POUND] = ACTIONS(1151), [anon_sym_BANG] = ACTIONS(1151), [anon_sym_LBRACE] = ACTIONS(1151), [anon_sym_RBRACE] = ACTIONS(1151), [anon_sym_LPAREN] = ACTIONS(1151), [anon_sym_asm] = ACTIONS(1153), [anon_sym_LT] = ACTIONS(1151), [anon_sym_COLON_COLON] = ACTIONS(1151), [anon_sym_STAR] = ACTIONS(1151), [anon_sym_AMP] = ACTIONS(1151), [anon_sym_DOT_DOT] = ACTIONS(1151), [anon_sym_DASH] = ACTIONS(1151), [anon_sym_PIPE] = ACTIONS(1151), [anon_sym_yield] = ACTIONS(1153), [anon_sym_move] = ACTIONS(1153), [sym_integer_literal] = ACTIONS(1151), [aux_sym_string_literal_token1] = ACTIONS(1151), [sym_char_literal] = ACTIONS(1151), [anon_sym_true] = ACTIONS(1153), [anon_sym_false] = ACTIONS(1153), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1153), [sym_metavariable] = ACTIONS(1151), [sym_raw_string_literal] = ACTIONS(1151), [sym_float_literal] = ACTIONS(1151), [sym_block_comment] = ACTIONS(3), }, [299] = { [ts_builtin_sym_end] = ACTIONS(1155), [sym_identifier] = ACTIONS(1157), [anon_sym_SEMI] = ACTIONS(1155), [anon_sym_u8] = ACTIONS(1157), [anon_sym_i8] = ACTIONS(1157), [anon_sym_u16] = ACTIONS(1157), [anon_sym_i16] = ACTIONS(1157), [anon_sym_u32] = ACTIONS(1157), [anon_sym_i32] = ACTIONS(1157), [anon_sym_u64] = ACTIONS(1157), [anon_sym_i64] = ACTIONS(1157), [anon_sym_u128] = ACTIONS(1157), [anon_sym_i128] = ACTIONS(1157), [anon_sym_u256] = ACTIONS(1157), [anon_sym_i256] = ACTIONS(1157), [anon_sym_b256] = ACTIONS(1157), [anon_sym_isize] = ACTIONS(1157), [anon_sym_usize] = ACTIONS(1157), [anon_sym_f32] = ACTIONS(1157), [anon_sym_f64] = ACTIONS(1157), [anon_sym_bool] = ACTIONS(1157), [anon_sym_char] = ACTIONS(1157), [anon_sym_str] = ACTIONS(1157), [anon_sym_LBRACK] = ACTIONS(1155), [anon_sym_contract] = ACTIONS(1157), [anon_sym_script] = ACTIONS(1157), [anon_sym_predicate] = ACTIONS(1157), [anon_sym_library] = ACTIONS(1157), [anon_sym_SQUOTE] = ACTIONS(1157), [anon_sym_abi] = ACTIONS(1157), [anon_sym_break] = ACTIONS(1157), [anon_sym_configurable] = ACTIONS(1157), [anon_sym_const] = ACTIONS(1157), [anon_sym_continue] = ACTIONS(1157), [anon_sym_default] = ACTIONS(1157), [anon_sym_mod] = ACTIONS(1157), [anon_sym_enum] = ACTIONS(1157), [anon_sym_fn] = ACTIONS(1157), [anon_sym_for] = ACTIONS(1157), [anon_sym_if] = ACTIONS(1157), [anon_sym_impl] = ACTIONS(1157), [anon_sym_let] = ACTIONS(1157), [anon_sym_match] = ACTIONS(1157), [anon_sym_pub] = ACTIONS(1157), [anon_sym_return] = ACTIONS(1157), [anon_sym_storage] = ACTIONS(1157), [anon_sym_struct] = ACTIONS(1157), [anon_sym_trait] = ACTIONS(1157), [anon_sym_type] = ACTIONS(1157), [anon_sym_use] = ACTIONS(1157), [anon_sym_while] = ACTIONS(1157), [anon_sym_POUND] = ACTIONS(1155), [anon_sym_BANG] = ACTIONS(1155), [anon_sym_LBRACE] = ACTIONS(1155), [anon_sym_RBRACE] = ACTIONS(1155), [anon_sym_LPAREN] = ACTIONS(1155), [anon_sym_asm] = ACTIONS(1157), [anon_sym_LT] = ACTIONS(1155), [anon_sym_COLON_COLON] = ACTIONS(1155), [anon_sym_STAR] = ACTIONS(1155), [anon_sym_AMP] = ACTIONS(1155), [anon_sym_DOT_DOT] = ACTIONS(1155), [anon_sym_DASH] = ACTIONS(1155), [anon_sym_PIPE] = ACTIONS(1155), [anon_sym_yield] = ACTIONS(1157), [anon_sym_move] = ACTIONS(1157), [sym_integer_literal] = ACTIONS(1155), [aux_sym_string_literal_token1] = ACTIONS(1155), [sym_char_literal] = ACTIONS(1155), [anon_sym_true] = ACTIONS(1157), [anon_sym_false] = ACTIONS(1157), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1157), [sym_metavariable] = ACTIONS(1155), [sym_raw_string_literal] = ACTIONS(1155), [sym_float_literal] = ACTIONS(1155), [sym_block_comment] = ACTIONS(3), }, [300] = { [ts_builtin_sym_end] = ACTIONS(1159), [sym_identifier] = ACTIONS(1161), [anon_sym_SEMI] = ACTIONS(1159), [anon_sym_u8] = ACTIONS(1161), [anon_sym_i8] = ACTIONS(1161), [anon_sym_u16] = ACTIONS(1161), [anon_sym_i16] = ACTIONS(1161), [anon_sym_u32] = ACTIONS(1161), [anon_sym_i32] = ACTIONS(1161), [anon_sym_u64] = ACTIONS(1161), [anon_sym_i64] = ACTIONS(1161), [anon_sym_u128] = ACTIONS(1161), [anon_sym_i128] = ACTIONS(1161), [anon_sym_u256] = ACTIONS(1161), [anon_sym_i256] = ACTIONS(1161), [anon_sym_b256] = ACTIONS(1161), [anon_sym_isize] = ACTIONS(1161), [anon_sym_usize] = ACTIONS(1161), [anon_sym_f32] = ACTIONS(1161), [anon_sym_f64] = ACTIONS(1161), [anon_sym_bool] = ACTIONS(1161), [anon_sym_char] = ACTIONS(1161), [anon_sym_str] = ACTIONS(1161), [anon_sym_LBRACK] = ACTIONS(1159), [anon_sym_contract] = ACTIONS(1161), [anon_sym_script] = ACTIONS(1161), [anon_sym_predicate] = ACTIONS(1161), [anon_sym_library] = ACTIONS(1161), [anon_sym_SQUOTE] = ACTIONS(1161), [anon_sym_abi] = ACTIONS(1161), [anon_sym_break] = ACTIONS(1161), [anon_sym_configurable] = ACTIONS(1161), [anon_sym_const] = ACTIONS(1161), [anon_sym_continue] = ACTIONS(1161), [anon_sym_default] = ACTIONS(1161), [anon_sym_mod] = ACTIONS(1161), [anon_sym_enum] = ACTIONS(1161), [anon_sym_fn] = ACTIONS(1161), [anon_sym_for] = ACTIONS(1161), [anon_sym_if] = ACTIONS(1161), [anon_sym_impl] = ACTIONS(1161), [anon_sym_let] = ACTIONS(1161), [anon_sym_match] = ACTIONS(1161), [anon_sym_pub] = ACTIONS(1161), [anon_sym_return] = ACTIONS(1161), [anon_sym_storage] = ACTIONS(1161), [anon_sym_struct] = ACTIONS(1161), [anon_sym_trait] = ACTIONS(1161), [anon_sym_type] = ACTIONS(1161), [anon_sym_use] = ACTIONS(1161), [anon_sym_while] = ACTIONS(1161), [anon_sym_POUND] = ACTIONS(1159), [anon_sym_BANG] = ACTIONS(1159), [anon_sym_LBRACE] = ACTIONS(1159), [anon_sym_RBRACE] = ACTIONS(1159), [anon_sym_LPAREN] = ACTIONS(1159), [anon_sym_asm] = ACTIONS(1161), [anon_sym_LT] = ACTIONS(1159), [anon_sym_COLON_COLON] = ACTIONS(1159), [anon_sym_STAR] = ACTIONS(1159), [anon_sym_AMP] = ACTIONS(1159), [anon_sym_DOT_DOT] = ACTIONS(1159), [anon_sym_DASH] = ACTIONS(1159), [anon_sym_PIPE] = ACTIONS(1159), [anon_sym_yield] = ACTIONS(1161), [anon_sym_move] = ACTIONS(1161), [sym_integer_literal] = ACTIONS(1159), [aux_sym_string_literal_token1] = ACTIONS(1159), [sym_char_literal] = ACTIONS(1159), [anon_sym_true] = ACTIONS(1161), [anon_sym_false] = ACTIONS(1161), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1161), [sym_metavariable] = ACTIONS(1159), [sym_raw_string_literal] = ACTIONS(1159), [sym_float_literal] = ACTIONS(1159), [sym_block_comment] = ACTIONS(3), }, [301] = { [ts_builtin_sym_end] = ACTIONS(1163), [sym_identifier] = ACTIONS(1165), [anon_sym_SEMI] = ACTIONS(1163), [anon_sym_u8] = ACTIONS(1165), [anon_sym_i8] = ACTIONS(1165), [anon_sym_u16] = ACTIONS(1165), [anon_sym_i16] = ACTIONS(1165), [anon_sym_u32] = ACTIONS(1165), [anon_sym_i32] = ACTIONS(1165), [anon_sym_u64] = ACTIONS(1165), [anon_sym_i64] = ACTIONS(1165), [anon_sym_u128] = ACTIONS(1165), [anon_sym_i128] = ACTIONS(1165), [anon_sym_u256] = ACTIONS(1165), [anon_sym_i256] = ACTIONS(1165), [anon_sym_b256] = ACTIONS(1165), [anon_sym_isize] = ACTIONS(1165), [anon_sym_usize] = ACTIONS(1165), [anon_sym_f32] = ACTIONS(1165), [anon_sym_f64] = ACTIONS(1165), [anon_sym_bool] = ACTIONS(1165), [anon_sym_char] = ACTIONS(1165), [anon_sym_str] = ACTIONS(1165), [anon_sym_LBRACK] = ACTIONS(1163), [anon_sym_contract] = ACTIONS(1165), [anon_sym_script] = ACTIONS(1165), [anon_sym_predicate] = ACTIONS(1165), [anon_sym_library] = ACTIONS(1165), [anon_sym_SQUOTE] = ACTIONS(1165), [anon_sym_abi] = ACTIONS(1165), [anon_sym_break] = ACTIONS(1165), [anon_sym_configurable] = ACTIONS(1165), [anon_sym_const] = ACTIONS(1165), [anon_sym_continue] = ACTIONS(1165), [anon_sym_default] = ACTIONS(1165), [anon_sym_mod] = ACTIONS(1165), [anon_sym_enum] = ACTIONS(1165), [anon_sym_fn] = ACTIONS(1165), [anon_sym_for] = ACTIONS(1165), [anon_sym_if] = ACTIONS(1165), [anon_sym_impl] = ACTIONS(1165), [anon_sym_let] = ACTIONS(1165), [anon_sym_match] = ACTIONS(1165), [anon_sym_pub] = ACTIONS(1165), [anon_sym_return] = ACTIONS(1165), [anon_sym_storage] = ACTIONS(1165), [anon_sym_struct] = ACTIONS(1165), [anon_sym_trait] = ACTIONS(1165), [anon_sym_type] = ACTIONS(1165), [anon_sym_use] = ACTIONS(1165), [anon_sym_while] = ACTIONS(1165), [anon_sym_POUND] = ACTIONS(1163), [anon_sym_BANG] = ACTIONS(1163), [anon_sym_LBRACE] = ACTIONS(1163), [anon_sym_RBRACE] = ACTIONS(1163), [anon_sym_LPAREN] = ACTIONS(1163), [anon_sym_asm] = ACTIONS(1165), [anon_sym_LT] = ACTIONS(1163), [anon_sym_COLON_COLON] = ACTIONS(1163), [anon_sym_STAR] = ACTIONS(1163), [anon_sym_AMP] = ACTIONS(1163), [anon_sym_DOT_DOT] = ACTIONS(1163), [anon_sym_DASH] = ACTIONS(1163), [anon_sym_PIPE] = ACTIONS(1163), [anon_sym_yield] = ACTIONS(1165), [anon_sym_move] = ACTIONS(1165), [sym_integer_literal] = ACTIONS(1163), [aux_sym_string_literal_token1] = ACTIONS(1163), [sym_char_literal] = ACTIONS(1163), [anon_sym_true] = ACTIONS(1165), [anon_sym_false] = ACTIONS(1165), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1165), [sym_metavariable] = ACTIONS(1163), [sym_raw_string_literal] = ACTIONS(1163), [sym_float_literal] = ACTIONS(1163), [sym_block_comment] = ACTIONS(3), }, [302] = { [ts_builtin_sym_end] = ACTIONS(1167), [sym_identifier] = ACTIONS(1169), [anon_sym_SEMI] = ACTIONS(1167), [anon_sym_u8] = ACTIONS(1169), [anon_sym_i8] = ACTIONS(1169), [anon_sym_u16] = ACTIONS(1169), [anon_sym_i16] = ACTIONS(1169), [anon_sym_u32] = ACTIONS(1169), [anon_sym_i32] = ACTIONS(1169), [anon_sym_u64] = ACTIONS(1169), [anon_sym_i64] = ACTIONS(1169), [anon_sym_u128] = ACTIONS(1169), [anon_sym_i128] = ACTIONS(1169), [anon_sym_u256] = ACTIONS(1169), [anon_sym_i256] = ACTIONS(1169), [anon_sym_b256] = ACTIONS(1169), [anon_sym_isize] = ACTIONS(1169), [anon_sym_usize] = ACTIONS(1169), [anon_sym_f32] = ACTIONS(1169), [anon_sym_f64] = ACTIONS(1169), [anon_sym_bool] = ACTIONS(1169), [anon_sym_char] = ACTIONS(1169), [anon_sym_str] = ACTIONS(1169), [anon_sym_LBRACK] = ACTIONS(1167), [anon_sym_contract] = ACTIONS(1169), [anon_sym_script] = ACTIONS(1169), [anon_sym_predicate] = ACTIONS(1169), [anon_sym_library] = ACTIONS(1169), [anon_sym_SQUOTE] = ACTIONS(1169), [anon_sym_abi] = ACTIONS(1169), [anon_sym_break] = ACTIONS(1169), [anon_sym_configurable] = ACTIONS(1169), [anon_sym_const] = ACTIONS(1169), [anon_sym_continue] = ACTIONS(1169), [anon_sym_default] = ACTIONS(1169), [anon_sym_mod] = ACTIONS(1169), [anon_sym_enum] = ACTIONS(1169), [anon_sym_fn] = ACTIONS(1169), [anon_sym_for] = ACTIONS(1169), [anon_sym_if] = ACTIONS(1169), [anon_sym_impl] = ACTIONS(1169), [anon_sym_let] = ACTIONS(1169), [anon_sym_match] = ACTIONS(1169), [anon_sym_pub] = ACTIONS(1169), [anon_sym_return] = ACTIONS(1169), [anon_sym_storage] = ACTIONS(1169), [anon_sym_struct] = ACTIONS(1169), [anon_sym_trait] = ACTIONS(1169), [anon_sym_type] = ACTIONS(1169), [anon_sym_use] = ACTIONS(1169), [anon_sym_while] = ACTIONS(1169), [anon_sym_POUND] = ACTIONS(1167), [anon_sym_BANG] = ACTIONS(1167), [anon_sym_LBRACE] = ACTIONS(1167), [anon_sym_RBRACE] = ACTIONS(1167), [anon_sym_LPAREN] = ACTIONS(1167), [anon_sym_asm] = ACTIONS(1169), [anon_sym_LT] = ACTIONS(1167), [anon_sym_COLON_COLON] = ACTIONS(1167), [anon_sym_STAR] = ACTIONS(1167), [anon_sym_AMP] = ACTIONS(1167), [anon_sym_DOT_DOT] = ACTIONS(1167), [anon_sym_DASH] = ACTIONS(1167), [anon_sym_PIPE] = ACTIONS(1167), [anon_sym_yield] = ACTIONS(1169), [anon_sym_move] = ACTIONS(1169), [sym_integer_literal] = ACTIONS(1167), [aux_sym_string_literal_token1] = ACTIONS(1167), [sym_char_literal] = ACTIONS(1167), [anon_sym_true] = ACTIONS(1169), [anon_sym_false] = ACTIONS(1169), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1169), [sym_metavariable] = ACTIONS(1167), [sym_raw_string_literal] = ACTIONS(1167), [sym_float_literal] = ACTIONS(1167), [sym_block_comment] = ACTIONS(3), }, [303] = { [ts_builtin_sym_end] = ACTIONS(1171), [sym_identifier] = ACTIONS(1173), [anon_sym_SEMI] = ACTIONS(1171), [anon_sym_u8] = ACTIONS(1173), [anon_sym_i8] = ACTIONS(1173), [anon_sym_u16] = ACTIONS(1173), [anon_sym_i16] = ACTIONS(1173), [anon_sym_u32] = ACTIONS(1173), [anon_sym_i32] = ACTIONS(1173), [anon_sym_u64] = ACTIONS(1173), [anon_sym_i64] = ACTIONS(1173), [anon_sym_u128] = ACTIONS(1173), [anon_sym_i128] = ACTIONS(1173), [anon_sym_u256] = ACTIONS(1173), [anon_sym_i256] = ACTIONS(1173), [anon_sym_b256] = ACTIONS(1173), [anon_sym_isize] = ACTIONS(1173), [anon_sym_usize] = ACTIONS(1173), [anon_sym_f32] = ACTIONS(1173), [anon_sym_f64] = ACTIONS(1173), [anon_sym_bool] = ACTIONS(1173), [anon_sym_char] = ACTIONS(1173), [anon_sym_str] = ACTIONS(1173), [anon_sym_LBRACK] = ACTIONS(1171), [anon_sym_contract] = ACTIONS(1173), [anon_sym_script] = ACTIONS(1173), [anon_sym_predicate] = ACTIONS(1173), [anon_sym_library] = ACTIONS(1173), [anon_sym_SQUOTE] = ACTIONS(1173), [anon_sym_abi] = ACTIONS(1173), [anon_sym_break] = ACTIONS(1173), [anon_sym_configurable] = ACTIONS(1173), [anon_sym_const] = ACTIONS(1173), [anon_sym_continue] = ACTIONS(1173), [anon_sym_default] = ACTIONS(1173), [anon_sym_mod] = ACTIONS(1173), [anon_sym_enum] = ACTIONS(1173), [anon_sym_fn] = ACTIONS(1173), [anon_sym_for] = ACTIONS(1173), [anon_sym_if] = ACTIONS(1173), [anon_sym_impl] = ACTIONS(1173), [anon_sym_let] = ACTIONS(1173), [anon_sym_match] = ACTIONS(1173), [anon_sym_pub] = ACTIONS(1173), [anon_sym_return] = ACTIONS(1173), [anon_sym_storage] = ACTIONS(1173), [anon_sym_struct] = ACTIONS(1173), [anon_sym_trait] = ACTIONS(1173), [anon_sym_type] = ACTIONS(1173), [anon_sym_use] = ACTIONS(1173), [anon_sym_while] = ACTIONS(1173), [anon_sym_POUND] = ACTIONS(1171), [anon_sym_BANG] = ACTIONS(1171), [anon_sym_LBRACE] = ACTIONS(1171), [anon_sym_RBRACE] = ACTIONS(1171), [anon_sym_LPAREN] = ACTIONS(1171), [anon_sym_asm] = ACTIONS(1173), [anon_sym_LT] = ACTIONS(1171), [anon_sym_COLON_COLON] = ACTIONS(1171), [anon_sym_STAR] = ACTIONS(1171), [anon_sym_AMP] = ACTIONS(1171), [anon_sym_DOT_DOT] = ACTIONS(1171), [anon_sym_DASH] = ACTIONS(1171), [anon_sym_PIPE] = ACTIONS(1171), [anon_sym_yield] = ACTIONS(1173), [anon_sym_move] = ACTIONS(1173), [sym_integer_literal] = ACTIONS(1171), [aux_sym_string_literal_token1] = ACTIONS(1171), [sym_char_literal] = ACTIONS(1171), [anon_sym_true] = ACTIONS(1173), [anon_sym_false] = ACTIONS(1173), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1173), [sym_metavariable] = ACTIONS(1171), [sym_raw_string_literal] = ACTIONS(1171), [sym_float_literal] = ACTIONS(1171), [sym_block_comment] = ACTIONS(3), }, [304] = { [ts_builtin_sym_end] = ACTIONS(1175), [sym_identifier] = ACTIONS(1177), [anon_sym_SEMI] = ACTIONS(1175), [anon_sym_u8] = ACTIONS(1177), [anon_sym_i8] = ACTIONS(1177), [anon_sym_u16] = ACTIONS(1177), [anon_sym_i16] = ACTIONS(1177), [anon_sym_u32] = ACTIONS(1177), [anon_sym_i32] = ACTIONS(1177), [anon_sym_u64] = ACTIONS(1177), [anon_sym_i64] = ACTIONS(1177), [anon_sym_u128] = ACTIONS(1177), [anon_sym_i128] = ACTIONS(1177), [anon_sym_u256] = ACTIONS(1177), [anon_sym_i256] = ACTIONS(1177), [anon_sym_b256] = ACTIONS(1177), [anon_sym_isize] = ACTIONS(1177), [anon_sym_usize] = ACTIONS(1177), [anon_sym_f32] = ACTIONS(1177), [anon_sym_f64] = ACTIONS(1177), [anon_sym_bool] = ACTIONS(1177), [anon_sym_char] = ACTIONS(1177), [anon_sym_str] = ACTIONS(1177), [anon_sym_LBRACK] = ACTIONS(1175), [anon_sym_contract] = ACTIONS(1177), [anon_sym_script] = ACTIONS(1177), [anon_sym_predicate] = ACTIONS(1177), [anon_sym_library] = ACTIONS(1177), [anon_sym_SQUOTE] = ACTIONS(1177), [anon_sym_abi] = ACTIONS(1177), [anon_sym_break] = ACTIONS(1177), [anon_sym_configurable] = ACTIONS(1177), [anon_sym_const] = ACTIONS(1177), [anon_sym_continue] = ACTIONS(1177), [anon_sym_default] = ACTIONS(1177), [anon_sym_mod] = ACTIONS(1177), [anon_sym_enum] = ACTIONS(1177), [anon_sym_fn] = ACTIONS(1177), [anon_sym_for] = ACTIONS(1177), [anon_sym_if] = ACTIONS(1177), [anon_sym_impl] = ACTIONS(1177), [anon_sym_let] = ACTIONS(1177), [anon_sym_match] = ACTIONS(1177), [anon_sym_pub] = ACTIONS(1177), [anon_sym_return] = ACTIONS(1177), [anon_sym_storage] = ACTIONS(1177), [anon_sym_struct] = ACTIONS(1177), [anon_sym_trait] = ACTIONS(1177), [anon_sym_type] = ACTIONS(1177), [anon_sym_use] = ACTIONS(1177), [anon_sym_while] = ACTIONS(1177), [anon_sym_POUND] = ACTIONS(1175), [anon_sym_BANG] = ACTIONS(1175), [anon_sym_LBRACE] = ACTIONS(1175), [anon_sym_RBRACE] = ACTIONS(1175), [anon_sym_LPAREN] = ACTIONS(1175), [anon_sym_asm] = ACTIONS(1177), [anon_sym_LT] = ACTIONS(1175), [anon_sym_COLON_COLON] = ACTIONS(1175), [anon_sym_STAR] = ACTIONS(1175), [anon_sym_AMP] = ACTIONS(1175), [anon_sym_DOT_DOT] = ACTIONS(1175), [anon_sym_DASH] = ACTIONS(1175), [anon_sym_PIPE] = ACTIONS(1175), [anon_sym_yield] = ACTIONS(1177), [anon_sym_move] = ACTIONS(1177), [sym_integer_literal] = ACTIONS(1175), [aux_sym_string_literal_token1] = ACTIONS(1175), [sym_char_literal] = ACTIONS(1175), [anon_sym_true] = ACTIONS(1177), [anon_sym_false] = ACTIONS(1177), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1177), [sym_metavariable] = ACTIONS(1175), [sym_raw_string_literal] = ACTIONS(1175), [sym_float_literal] = ACTIONS(1175), [sym_block_comment] = ACTIONS(3), }, [305] = { [ts_builtin_sym_end] = ACTIONS(1179), [sym_identifier] = ACTIONS(1181), [anon_sym_SEMI] = ACTIONS(1179), [anon_sym_u8] = ACTIONS(1181), [anon_sym_i8] = ACTIONS(1181), [anon_sym_u16] = ACTIONS(1181), [anon_sym_i16] = ACTIONS(1181), [anon_sym_u32] = ACTIONS(1181), [anon_sym_i32] = ACTIONS(1181), [anon_sym_u64] = ACTIONS(1181), [anon_sym_i64] = ACTIONS(1181), [anon_sym_u128] = ACTIONS(1181), [anon_sym_i128] = ACTIONS(1181), [anon_sym_u256] = ACTIONS(1181), [anon_sym_i256] = ACTIONS(1181), [anon_sym_b256] = ACTIONS(1181), [anon_sym_isize] = ACTIONS(1181), [anon_sym_usize] = ACTIONS(1181), [anon_sym_f32] = ACTIONS(1181), [anon_sym_f64] = ACTIONS(1181), [anon_sym_bool] = ACTIONS(1181), [anon_sym_char] = ACTIONS(1181), [anon_sym_str] = ACTIONS(1181), [anon_sym_LBRACK] = ACTIONS(1179), [anon_sym_contract] = ACTIONS(1181), [anon_sym_script] = ACTIONS(1181), [anon_sym_predicate] = ACTIONS(1181), [anon_sym_library] = ACTIONS(1181), [anon_sym_SQUOTE] = ACTIONS(1181), [anon_sym_abi] = ACTIONS(1181), [anon_sym_break] = ACTIONS(1181), [anon_sym_configurable] = ACTIONS(1181), [anon_sym_const] = ACTIONS(1181), [anon_sym_continue] = ACTIONS(1181), [anon_sym_default] = ACTIONS(1181), [anon_sym_mod] = ACTIONS(1181), [anon_sym_enum] = ACTIONS(1181), [anon_sym_fn] = ACTIONS(1181), [anon_sym_for] = ACTIONS(1181), [anon_sym_if] = ACTIONS(1181), [anon_sym_impl] = ACTIONS(1181), [anon_sym_let] = ACTIONS(1181), [anon_sym_match] = ACTIONS(1181), [anon_sym_pub] = ACTIONS(1181), [anon_sym_return] = ACTIONS(1181), [anon_sym_storage] = ACTIONS(1181), [anon_sym_struct] = ACTIONS(1181), [anon_sym_trait] = ACTIONS(1181), [anon_sym_type] = ACTIONS(1181), [anon_sym_use] = ACTIONS(1181), [anon_sym_while] = ACTIONS(1181), [anon_sym_POUND] = ACTIONS(1179), [anon_sym_BANG] = ACTIONS(1179), [anon_sym_LBRACE] = ACTIONS(1179), [anon_sym_RBRACE] = ACTIONS(1179), [anon_sym_LPAREN] = ACTIONS(1179), [anon_sym_asm] = ACTIONS(1181), [anon_sym_LT] = ACTIONS(1179), [anon_sym_COLON_COLON] = ACTIONS(1179), [anon_sym_STAR] = ACTIONS(1179), [anon_sym_AMP] = ACTIONS(1179), [anon_sym_DOT_DOT] = ACTIONS(1179), [anon_sym_DASH] = ACTIONS(1179), [anon_sym_PIPE] = ACTIONS(1179), [anon_sym_yield] = ACTIONS(1181), [anon_sym_move] = ACTIONS(1181), [sym_integer_literal] = ACTIONS(1179), [aux_sym_string_literal_token1] = ACTIONS(1179), [sym_char_literal] = ACTIONS(1179), [anon_sym_true] = ACTIONS(1181), [anon_sym_false] = ACTIONS(1181), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1181), [sym_metavariable] = ACTIONS(1179), [sym_raw_string_literal] = ACTIONS(1179), [sym_float_literal] = ACTIONS(1179), [sym_block_comment] = ACTIONS(3), }, [306] = { [ts_builtin_sym_end] = ACTIONS(1183), [sym_identifier] = ACTIONS(1185), [anon_sym_SEMI] = ACTIONS(1183), [anon_sym_u8] = ACTIONS(1185), [anon_sym_i8] = ACTIONS(1185), [anon_sym_u16] = ACTIONS(1185), [anon_sym_i16] = ACTIONS(1185), [anon_sym_u32] = ACTIONS(1185), [anon_sym_i32] = ACTIONS(1185), [anon_sym_u64] = ACTIONS(1185), [anon_sym_i64] = ACTIONS(1185), [anon_sym_u128] = ACTIONS(1185), [anon_sym_i128] = ACTIONS(1185), [anon_sym_u256] = ACTIONS(1185), [anon_sym_i256] = ACTIONS(1185), [anon_sym_b256] = ACTIONS(1185), [anon_sym_isize] = ACTIONS(1185), [anon_sym_usize] = ACTIONS(1185), [anon_sym_f32] = ACTIONS(1185), [anon_sym_f64] = ACTIONS(1185), [anon_sym_bool] = ACTIONS(1185), [anon_sym_char] = ACTIONS(1185), [anon_sym_str] = ACTIONS(1185), [anon_sym_LBRACK] = ACTIONS(1183), [anon_sym_contract] = ACTIONS(1185), [anon_sym_script] = ACTIONS(1185), [anon_sym_predicate] = ACTIONS(1185), [anon_sym_library] = ACTIONS(1185), [anon_sym_SQUOTE] = ACTIONS(1185), [anon_sym_abi] = ACTIONS(1185), [anon_sym_break] = ACTIONS(1185), [anon_sym_configurable] = ACTIONS(1185), [anon_sym_const] = ACTIONS(1185), [anon_sym_continue] = ACTIONS(1185), [anon_sym_default] = ACTIONS(1185), [anon_sym_mod] = ACTIONS(1185), [anon_sym_enum] = ACTIONS(1185), [anon_sym_fn] = ACTIONS(1185), [anon_sym_for] = ACTIONS(1185), [anon_sym_if] = ACTIONS(1185), [anon_sym_impl] = ACTIONS(1185), [anon_sym_let] = ACTIONS(1185), [anon_sym_match] = ACTIONS(1185), [anon_sym_pub] = ACTIONS(1185), [anon_sym_return] = ACTIONS(1185), [anon_sym_storage] = ACTIONS(1185), [anon_sym_struct] = ACTIONS(1185), [anon_sym_trait] = ACTIONS(1185), [anon_sym_type] = ACTIONS(1185), [anon_sym_use] = ACTIONS(1185), [anon_sym_while] = ACTIONS(1185), [anon_sym_POUND] = ACTIONS(1183), [anon_sym_BANG] = ACTIONS(1183), [anon_sym_LBRACE] = ACTIONS(1183), [anon_sym_RBRACE] = ACTIONS(1183), [anon_sym_LPAREN] = ACTIONS(1183), [anon_sym_asm] = ACTIONS(1185), [anon_sym_LT] = ACTIONS(1183), [anon_sym_COLON_COLON] = ACTIONS(1183), [anon_sym_STAR] = ACTIONS(1183), [anon_sym_AMP] = ACTIONS(1183), [anon_sym_DOT_DOT] = ACTIONS(1183), [anon_sym_DASH] = ACTIONS(1183), [anon_sym_PIPE] = ACTIONS(1183), [anon_sym_yield] = ACTIONS(1185), [anon_sym_move] = ACTIONS(1185), [sym_integer_literal] = ACTIONS(1183), [aux_sym_string_literal_token1] = ACTIONS(1183), [sym_char_literal] = ACTIONS(1183), [anon_sym_true] = ACTIONS(1185), [anon_sym_false] = ACTIONS(1185), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1185), [sym_metavariable] = ACTIONS(1183), [sym_raw_string_literal] = ACTIONS(1183), [sym_float_literal] = ACTIONS(1183), [sym_block_comment] = ACTIONS(3), }, [307] = { [ts_builtin_sym_end] = ACTIONS(1187), [sym_identifier] = ACTIONS(1189), [anon_sym_SEMI] = ACTIONS(1187), [anon_sym_u8] = ACTIONS(1189), [anon_sym_i8] = ACTIONS(1189), [anon_sym_u16] = ACTIONS(1189), [anon_sym_i16] = ACTIONS(1189), [anon_sym_u32] = ACTIONS(1189), [anon_sym_i32] = ACTIONS(1189), [anon_sym_u64] = ACTIONS(1189), [anon_sym_i64] = ACTIONS(1189), [anon_sym_u128] = ACTIONS(1189), [anon_sym_i128] = ACTIONS(1189), [anon_sym_u256] = ACTIONS(1189), [anon_sym_i256] = ACTIONS(1189), [anon_sym_b256] = ACTIONS(1189), [anon_sym_isize] = ACTIONS(1189), [anon_sym_usize] = ACTIONS(1189), [anon_sym_f32] = ACTIONS(1189), [anon_sym_f64] = ACTIONS(1189), [anon_sym_bool] = ACTIONS(1189), [anon_sym_char] = ACTIONS(1189), [anon_sym_str] = ACTIONS(1189), [anon_sym_LBRACK] = ACTIONS(1187), [anon_sym_contract] = ACTIONS(1189), [anon_sym_script] = ACTIONS(1189), [anon_sym_predicate] = ACTIONS(1189), [anon_sym_library] = ACTIONS(1189), [anon_sym_SQUOTE] = ACTIONS(1189), [anon_sym_abi] = ACTIONS(1189), [anon_sym_break] = ACTIONS(1189), [anon_sym_configurable] = ACTIONS(1189), [anon_sym_const] = ACTIONS(1189), [anon_sym_continue] = ACTIONS(1189), [anon_sym_default] = ACTIONS(1189), [anon_sym_mod] = ACTIONS(1189), [anon_sym_enum] = ACTIONS(1189), [anon_sym_fn] = ACTIONS(1189), [anon_sym_for] = ACTIONS(1189), [anon_sym_if] = ACTIONS(1189), [anon_sym_impl] = ACTIONS(1189), [anon_sym_let] = ACTIONS(1189), [anon_sym_match] = ACTIONS(1189), [anon_sym_pub] = ACTIONS(1189), [anon_sym_return] = ACTIONS(1189), [anon_sym_storage] = ACTIONS(1189), [anon_sym_struct] = ACTIONS(1189), [anon_sym_trait] = ACTIONS(1189), [anon_sym_type] = ACTIONS(1189), [anon_sym_use] = ACTIONS(1189), [anon_sym_while] = ACTIONS(1189), [anon_sym_POUND] = ACTIONS(1187), [anon_sym_BANG] = ACTIONS(1187), [anon_sym_LBRACE] = ACTIONS(1187), [anon_sym_RBRACE] = ACTIONS(1187), [anon_sym_LPAREN] = ACTIONS(1187), [anon_sym_asm] = ACTIONS(1189), [anon_sym_LT] = ACTIONS(1187), [anon_sym_COLON_COLON] = ACTIONS(1187), [anon_sym_STAR] = ACTIONS(1187), [anon_sym_AMP] = ACTIONS(1187), [anon_sym_DOT_DOT] = ACTIONS(1187), [anon_sym_DASH] = ACTIONS(1187), [anon_sym_PIPE] = ACTIONS(1187), [anon_sym_yield] = ACTIONS(1189), [anon_sym_move] = ACTIONS(1189), [sym_integer_literal] = ACTIONS(1187), [aux_sym_string_literal_token1] = ACTIONS(1187), [sym_char_literal] = ACTIONS(1187), [anon_sym_true] = ACTIONS(1189), [anon_sym_false] = ACTIONS(1189), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1189), [sym_metavariable] = ACTIONS(1187), [sym_raw_string_literal] = ACTIONS(1187), [sym_float_literal] = ACTIONS(1187), [sym_block_comment] = ACTIONS(3), }, [308] = { [ts_builtin_sym_end] = ACTIONS(1191), [sym_identifier] = ACTIONS(1193), [anon_sym_SEMI] = ACTIONS(1191), [anon_sym_u8] = ACTIONS(1193), [anon_sym_i8] = ACTIONS(1193), [anon_sym_u16] = ACTIONS(1193), [anon_sym_i16] = ACTIONS(1193), [anon_sym_u32] = ACTIONS(1193), [anon_sym_i32] = ACTIONS(1193), [anon_sym_u64] = ACTIONS(1193), [anon_sym_i64] = ACTIONS(1193), [anon_sym_u128] = ACTIONS(1193), [anon_sym_i128] = ACTIONS(1193), [anon_sym_u256] = ACTIONS(1193), [anon_sym_i256] = ACTIONS(1193), [anon_sym_b256] = ACTIONS(1193), [anon_sym_isize] = ACTIONS(1193), [anon_sym_usize] = ACTIONS(1193), [anon_sym_f32] = ACTIONS(1193), [anon_sym_f64] = ACTIONS(1193), [anon_sym_bool] = ACTIONS(1193), [anon_sym_char] = ACTIONS(1193), [anon_sym_str] = ACTIONS(1193), [anon_sym_LBRACK] = ACTIONS(1191), [anon_sym_contract] = ACTIONS(1193), [anon_sym_script] = ACTIONS(1193), [anon_sym_predicate] = ACTIONS(1193), [anon_sym_library] = ACTIONS(1193), [anon_sym_SQUOTE] = ACTIONS(1193), [anon_sym_abi] = ACTIONS(1193), [anon_sym_break] = ACTIONS(1193), [anon_sym_configurable] = ACTIONS(1193), [anon_sym_const] = ACTIONS(1193), [anon_sym_continue] = ACTIONS(1193), [anon_sym_default] = ACTIONS(1193), [anon_sym_mod] = ACTIONS(1193), [anon_sym_enum] = ACTIONS(1193), [anon_sym_fn] = ACTIONS(1193), [anon_sym_for] = ACTIONS(1193), [anon_sym_if] = ACTIONS(1193), [anon_sym_impl] = ACTIONS(1193), [anon_sym_let] = ACTIONS(1193), [anon_sym_match] = ACTIONS(1193), [anon_sym_pub] = ACTIONS(1193), [anon_sym_return] = ACTIONS(1193), [anon_sym_storage] = ACTIONS(1193), [anon_sym_struct] = ACTIONS(1193), [anon_sym_trait] = ACTIONS(1193), [anon_sym_type] = ACTIONS(1193), [anon_sym_use] = ACTIONS(1193), [anon_sym_while] = ACTIONS(1193), [anon_sym_POUND] = ACTIONS(1191), [anon_sym_BANG] = ACTIONS(1191), [anon_sym_LBRACE] = ACTIONS(1191), [anon_sym_RBRACE] = ACTIONS(1191), [anon_sym_LPAREN] = ACTIONS(1191), [anon_sym_asm] = ACTIONS(1193), [anon_sym_LT] = ACTIONS(1191), [anon_sym_COLON_COLON] = ACTIONS(1191), [anon_sym_STAR] = ACTIONS(1191), [anon_sym_AMP] = ACTIONS(1191), [anon_sym_DOT_DOT] = ACTIONS(1191), [anon_sym_DASH] = ACTIONS(1191), [anon_sym_PIPE] = ACTIONS(1191), [anon_sym_yield] = ACTIONS(1193), [anon_sym_move] = ACTIONS(1193), [sym_integer_literal] = ACTIONS(1191), [aux_sym_string_literal_token1] = ACTIONS(1191), [sym_char_literal] = ACTIONS(1191), [anon_sym_true] = ACTIONS(1193), [anon_sym_false] = ACTIONS(1193), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1193), [sym_metavariable] = ACTIONS(1191), [sym_raw_string_literal] = ACTIONS(1191), [sym_float_literal] = ACTIONS(1191), [sym_block_comment] = ACTIONS(3), }, [309] = { [ts_builtin_sym_end] = ACTIONS(1195), [sym_identifier] = ACTIONS(1197), [anon_sym_SEMI] = ACTIONS(1195), [anon_sym_u8] = ACTIONS(1197), [anon_sym_i8] = ACTIONS(1197), [anon_sym_u16] = ACTIONS(1197), [anon_sym_i16] = ACTIONS(1197), [anon_sym_u32] = ACTIONS(1197), [anon_sym_i32] = ACTIONS(1197), [anon_sym_u64] = ACTIONS(1197), [anon_sym_i64] = ACTIONS(1197), [anon_sym_u128] = ACTIONS(1197), [anon_sym_i128] = ACTIONS(1197), [anon_sym_u256] = ACTIONS(1197), [anon_sym_i256] = ACTIONS(1197), [anon_sym_b256] = ACTIONS(1197), [anon_sym_isize] = ACTIONS(1197), [anon_sym_usize] = ACTIONS(1197), [anon_sym_f32] = ACTIONS(1197), [anon_sym_f64] = ACTIONS(1197), [anon_sym_bool] = ACTIONS(1197), [anon_sym_char] = ACTIONS(1197), [anon_sym_str] = ACTIONS(1197), [anon_sym_LBRACK] = ACTIONS(1195), [anon_sym_contract] = ACTIONS(1197), [anon_sym_script] = ACTIONS(1197), [anon_sym_predicate] = ACTIONS(1197), [anon_sym_library] = ACTIONS(1197), [anon_sym_SQUOTE] = ACTIONS(1197), [anon_sym_abi] = ACTIONS(1197), [anon_sym_break] = ACTIONS(1197), [anon_sym_configurable] = ACTIONS(1197), [anon_sym_const] = ACTIONS(1197), [anon_sym_continue] = ACTIONS(1197), [anon_sym_default] = ACTIONS(1197), [anon_sym_mod] = ACTIONS(1197), [anon_sym_enum] = ACTIONS(1197), [anon_sym_fn] = ACTIONS(1197), [anon_sym_for] = ACTIONS(1197), [anon_sym_if] = ACTIONS(1197), [anon_sym_impl] = ACTIONS(1197), [anon_sym_let] = ACTIONS(1197), [anon_sym_match] = ACTIONS(1197), [anon_sym_pub] = ACTIONS(1197), [anon_sym_return] = ACTIONS(1197), [anon_sym_storage] = ACTIONS(1197), [anon_sym_struct] = ACTIONS(1197), [anon_sym_trait] = ACTIONS(1197), [anon_sym_type] = ACTIONS(1197), [anon_sym_use] = ACTIONS(1197), [anon_sym_while] = ACTIONS(1197), [anon_sym_POUND] = ACTIONS(1195), [anon_sym_BANG] = ACTIONS(1195), [anon_sym_LBRACE] = ACTIONS(1195), [anon_sym_RBRACE] = ACTIONS(1195), [anon_sym_LPAREN] = ACTIONS(1195), [anon_sym_asm] = ACTIONS(1197), [anon_sym_LT] = ACTIONS(1195), [anon_sym_COLON_COLON] = ACTIONS(1195), [anon_sym_STAR] = ACTIONS(1195), [anon_sym_AMP] = ACTIONS(1195), [anon_sym_DOT_DOT] = ACTIONS(1195), [anon_sym_DASH] = ACTIONS(1195), [anon_sym_PIPE] = ACTIONS(1195), [anon_sym_yield] = ACTIONS(1197), [anon_sym_move] = ACTIONS(1197), [sym_integer_literal] = ACTIONS(1195), [aux_sym_string_literal_token1] = ACTIONS(1195), [sym_char_literal] = ACTIONS(1195), [anon_sym_true] = ACTIONS(1197), [anon_sym_false] = ACTIONS(1197), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1197), [sym_metavariable] = ACTIONS(1195), [sym_raw_string_literal] = ACTIONS(1195), [sym_float_literal] = ACTIONS(1195), [sym_block_comment] = ACTIONS(3), }, [310] = { [ts_builtin_sym_end] = ACTIONS(1199), [sym_identifier] = ACTIONS(1201), [anon_sym_SEMI] = ACTIONS(1199), [anon_sym_u8] = ACTIONS(1201), [anon_sym_i8] = ACTIONS(1201), [anon_sym_u16] = ACTIONS(1201), [anon_sym_i16] = ACTIONS(1201), [anon_sym_u32] = ACTIONS(1201), [anon_sym_i32] = ACTIONS(1201), [anon_sym_u64] = ACTIONS(1201), [anon_sym_i64] = ACTIONS(1201), [anon_sym_u128] = ACTIONS(1201), [anon_sym_i128] = ACTIONS(1201), [anon_sym_u256] = ACTIONS(1201), [anon_sym_i256] = ACTIONS(1201), [anon_sym_b256] = ACTIONS(1201), [anon_sym_isize] = ACTIONS(1201), [anon_sym_usize] = ACTIONS(1201), [anon_sym_f32] = ACTIONS(1201), [anon_sym_f64] = ACTIONS(1201), [anon_sym_bool] = ACTIONS(1201), [anon_sym_char] = ACTIONS(1201), [anon_sym_str] = ACTIONS(1201), [anon_sym_LBRACK] = ACTIONS(1199), [anon_sym_contract] = ACTIONS(1201), [anon_sym_script] = ACTIONS(1201), [anon_sym_predicate] = ACTIONS(1201), [anon_sym_library] = ACTIONS(1201), [anon_sym_SQUOTE] = ACTIONS(1201), [anon_sym_abi] = ACTIONS(1201), [anon_sym_break] = ACTIONS(1201), [anon_sym_configurable] = ACTIONS(1201), [anon_sym_const] = ACTIONS(1201), [anon_sym_continue] = ACTIONS(1201), [anon_sym_default] = ACTIONS(1201), [anon_sym_mod] = ACTIONS(1201), [anon_sym_enum] = ACTIONS(1201), [anon_sym_fn] = ACTIONS(1201), [anon_sym_for] = ACTIONS(1201), [anon_sym_if] = ACTIONS(1201), [anon_sym_impl] = ACTIONS(1201), [anon_sym_let] = ACTIONS(1201), [anon_sym_match] = ACTIONS(1201), [anon_sym_pub] = ACTIONS(1201), [anon_sym_return] = ACTIONS(1201), [anon_sym_storage] = ACTIONS(1201), [anon_sym_struct] = ACTIONS(1201), [anon_sym_trait] = ACTIONS(1201), [anon_sym_type] = ACTIONS(1201), [anon_sym_use] = ACTIONS(1201), [anon_sym_while] = ACTIONS(1201), [anon_sym_POUND] = ACTIONS(1199), [anon_sym_BANG] = ACTIONS(1199), [anon_sym_LBRACE] = ACTIONS(1199), [anon_sym_RBRACE] = ACTIONS(1199), [anon_sym_LPAREN] = ACTIONS(1199), [anon_sym_asm] = ACTIONS(1201), [anon_sym_LT] = ACTIONS(1199), [anon_sym_COLON_COLON] = ACTIONS(1199), [anon_sym_STAR] = ACTIONS(1199), [anon_sym_AMP] = ACTIONS(1199), [anon_sym_DOT_DOT] = ACTIONS(1199), [anon_sym_DASH] = ACTIONS(1199), [anon_sym_PIPE] = ACTIONS(1199), [anon_sym_yield] = ACTIONS(1201), [anon_sym_move] = ACTIONS(1201), [sym_integer_literal] = ACTIONS(1199), [aux_sym_string_literal_token1] = ACTIONS(1199), [sym_char_literal] = ACTIONS(1199), [anon_sym_true] = ACTIONS(1201), [anon_sym_false] = ACTIONS(1201), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1201), [sym_metavariable] = ACTIONS(1199), [sym_raw_string_literal] = ACTIONS(1199), [sym_float_literal] = ACTIONS(1199), [sym_block_comment] = ACTIONS(3), }, [311] = { [ts_builtin_sym_end] = ACTIONS(1203), [sym_identifier] = ACTIONS(1205), [anon_sym_SEMI] = ACTIONS(1203), [anon_sym_u8] = ACTIONS(1205), [anon_sym_i8] = ACTIONS(1205), [anon_sym_u16] = ACTIONS(1205), [anon_sym_i16] = ACTIONS(1205), [anon_sym_u32] = ACTIONS(1205), [anon_sym_i32] = ACTIONS(1205), [anon_sym_u64] = ACTIONS(1205), [anon_sym_i64] = ACTIONS(1205), [anon_sym_u128] = ACTIONS(1205), [anon_sym_i128] = ACTIONS(1205), [anon_sym_u256] = ACTIONS(1205), [anon_sym_i256] = ACTIONS(1205), [anon_sym_b256] = ACTIONS(1205), [anon_sym_isize] = ACTIONS(1205), [anon_sym_usize] = ACTIONS(1205), [anon_sym_f32] = ACTIONS(1205), [anon_sym_f64] = ACTIONS(1205), [anon_sym_bool] = ACTIONS(1205), [anon_sym_char] = ACTIONS(1205), [anon_sym_str] = ACTIONS(1205), [anon_sym_LBRACK] = ACTIONS(1203), [anon_sym_contract] = ACTIONS(1205), [anon_sym_script] = ACTIONS(1205), [anon_sym_predicate] = ACTIONS(1205), [anon_sym_library] = ACTIONS(1205), [anon_sym_SQUOTE] = ACTIONS(1205), [anon_sym_abi] = ACTIONS(1205), [anon_sym_break] = ACTIONS(1205), [anon_sym_configurable] = ACTIONS(1205), [anon_sym_const] = ACTIONS(1205), [anon_sym_continue] = ACTIONS(1205), [anon_sym_default] = ACTIONS(1205), [anon_sym_mod] = ACTIONS(1205), [anon_sym_enum] = ACTIONS(1205), [anon_sym_fn] = ACTIONS(1205), [anon_sym_for] = ACTIONS(1205), [anon_sym_if] = ACTIONS(1205), [anon_sym_impl] = ACTIONS(1205), [anon_sym_let] = ACTIONS(1205), [anon_sym_match] = ACTIONS(1205), [anon_sym_pub] = ACTIONS(1205), [anon_sym_return] = ACTIONS(1205), [anon_sym_storage] = ACTIONS(1205), [anon_sym_struct] = ACTIONS(1205), [anon_sym_trait] = ACTIONS(1205), [anon_sym_type] = ACTIONS(1205), [anon_sym_use] = ACTIONS(1205), [anon_sym_while] = ACTIONS(1205), [anon_sym_POUND] = ACTIONS(1203), [anon_sym_BANG] = ACTIONS(1203), [anon_sym_LBRACE] = ACTIONS(1203), [anon_sym_RBRACE] = ACTIONS(1203), [anon_sym_LPAREN] = ACTIONS(1203), [anon_sym_asm] = ACTIONS(1205), [anon_sym_LT] = ACTIONS(1203), [anon_sym_COLON_COLON] = ACTIONS(1203), [anon_sym_STAR] = ACTIONS(1203), [anon_sym_AMP] = ACTIONS(1203), [anon_sym_DOT_DOT] = ACTIONS(1203), [anon_sym_DASH] = ACTIONS(1203), [anon_sym_PIPE] = ACTIONS(1203), [anon_sym_yield] = ACTIONS(1205), [anon_sym_move] = ACTIONS(1205), [sym_integer_literal] = ACTIONS(1203), [aux_sym_string_literal_token1] = ACTIONS(1203), [sym_char_literal] = ACTIONS(1203), [anon_sym_true] = ACTIONS(1205), [anon_sym_false] = ACTIONS(1205), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1205), [sym_metavariable] = ACTIONS(1203), [sym_raw_string_literal] = ACTIONS(1203), [sym_float_literal] = ACTIONS(1203), [sym_block_comment] = ACTIONS(3), }, [312] = { [ts_builtin_sym_end] = ACTIONS(1207), [sym_identifier] = ACTIONS(1209), [anon_sym_SEMI] = ACTIONS(1207), [anon_sym_u8] = ACTIONS(1209), [anon_sym_i8] = ACTIONS(1209), [anon_sym_u16] = ACTIONS(1209), [anon_sym_i16] = ACTIONS(1209), [anon_sym_u32] = ACTIONS(1209), [anon_sym_i32] = ACTIONS(1209), [anon_sym_u64] = ACTIONS(1209), [anon_sym_i64] = ACTIONS(1209), [anon_sym_u128] = ACTIONS(1209), [anon_sym_i128] = ACTIONS(1209), [anon_sym_u256] = ACTIONS(1209), [anon_sym_i256] = ACTIONS(1209), [anon_sym_b256] = ACTIONS(1209), [anon_sym_isize] = ACTIONS(1209), [anon_sym_usize] = ACTIONS(1209), [anon_sym_f32] = ACTIONS(1209), [anon_sym_f64] = ACTIONS(1209), [anon_sym_bool] = ACTIONS(1209), [anon_sym_char] = ACTIONS(1209), [anon_sym_str] = ACTIONS(1209), [anon_sym_LBRACK] = ACTIONS(1207), [anon_sym_contract] = ACTIONS(1209), [anon_sym_script] = ACTIONS(1209), [anon_sym_predicate] = ACTIONS(1209), [anon_sym_library] = ACTIONS(1209), [anon_sym_SQUOTE] = ACTIONS(1209), [anon_sym_abi] = ACTIONS(1209), [anon_sym_break] = ACTIONS(1209), [anon_sym_configurable] = ACTIONS(1209), [anon_sym_const] = ACTIONS(1209), [anon_sym_continue] = ACTIONS(1209), [anon_sym_default] = ACTIONS(1209), [anon_sym_mod] = ACTIONS(1209), [anon_sym_enum] = ACTIONS(1209), [anon_sym_fn] = ACTIONS(1209), [anon_sym_for] = ACTIONS(1209), [anon_sym_if] = ACTIONS(1209), [anon_sym_impl] = ACTIONS(1209), [anon_sym_let] = ACTIONS(1209), [anon_sym_match] = ACTIONS(1209), [anon_sym_pub] = ACTIONS(1209), [anon_sym_return] = ACTIONS(1209), [anon_sym_storage] = ACTIONS(1209), [anon_sym_struct] = ACTIONS(1209), [anon_sym_trait] = ACTIONS(1209), [anon_sym_type] = ACTIONS(1209), [anon_sym_use] = ACTIONS(1209), [anon_sym_while] = ACTIONS(1209), [anon_sym_POUND] = ACTIONS(1207), [anon_sym_BANG] = ACTIONS(1207), [anon_sym_LBRACE] = ACTIONS(1207), [anon_sym_RBRACE] = ACTIONS(1207), [anon_sym_LPAREN] = ACTIONS(1207), [anon_sym_asm] = ACTIONS(1209), [anon_sym_LT] = ACTIONS(1207), [anon_sym_COLON_COLON] = ACTIONS(1207), [anon_sym_STAR] = ACTIONS(1207), [anon_sym_AMP] = ACTIONS(1207), [anon_sym_DOT_DOT] = ACTIONS(1207), [anon_sym_DASH] = ACTIONS(1207), [anon_sym_PIPE] = ACTIONS(1207), [anon_sym_yield] = ACTIONS(1209), [anon_sym_move] = ACTIONS(1209), [sym_integer_literal] = ACTIONS(1207), [aux_sym_string_literal_token1] = ACTIONS(1207), [sym_char_literal] = ACTIONS(1207), [anon_sym_true] = ACTIONS(1209), [anon_sym_false] = ACTIONS(1209), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1209), [sym_metavariable] = ACTIONS(1207), [sym_raw_string_literal] = ACTIONS(1207), [sym_float_literal] = ACTIONS(1207), [sym_block_comment] = ACTIONS(3), }, [313] = { [ts_builtin_sym_end] = ACTIONS(1211), [sym_identifier] = ACTIONS(1213), [anon_sym_SEMI] = ACTIONS(1211), [anon_sym_u8] = ACTIONS(1213), [anon_sym_i8] = ACTIONS(1213), [anon_sym_u16] = ACTIONS(1213), [anon_sym_i16] = ACTIONS(1213), [anon_sym_u32] = ACTIONS(1213), [anon_sym_i32] = ACTIONS(1213), [anon_sym_u64] = ACTIONS(1213), [anon_sym_i64] = ACTIONS(1213), [anon_sym_u128] = ACTIONS(1213), [anon_sym_i128] = ACTIONS(1213), [anon_sym_u256] = ACTIONS(1213), [anon_sym_i256] = ACTIONS(1213), [anon_sym_b256] = ACTIONS(1213), [anon_sym_isize] = ACTIONS(1213), [anon_sym_usize] = ACTIONS(1213), [anon_sym_f32] = ACTIONS(1213), [anon_sym_f64] = ACTIONS(1213), [anon_sym_bool] = ACTIONS(1213), [anon_sym_char] = ACTIONS(1213), [anon_sym_str] = ACTIONS(1213), [anon_sym_LBRACK] = ACTIONS(1211), [anon_sym_contract] = ACTIONS(1213), [anon_sym_script] = ACTIONS(1213), [anon_sym_predicate] = ACTIONS(1213), [anon_sym_library] = ACTIONS(1213), [anon_sym_SQUOTE] = ACTIONS(1213), [anon_sym_abi] = ACTIONS(1213), [anon_sym_break] = ACTIONS(1213), [anon_sym_configurable] = ACTIONS(1213), [anon_sym_const] = ACTIONS(1213), [anon_sym_continue] = ACTIONS(1213), [anon_sym_default] = ACTIONS(1213), [anon_sym_mod] = ACTIONS(1213), [anon_sym_enum] = ACTIONS(1213), [anon_sym_fn] = ACTIONS(1213), [anon_sym_for] = ACTIONS(1213), [anon_sym_if] = ACTIONS(1213), [anon_sym_impl] = ACTIONS(1213), [anon_sym_let] = ACTIONS(1213), [anon_sym_match] = ACTIONS(1213), [anon_sym_pub] = ACTIONS(1213), [anon_sym_return] = ACTIONS(1213), [anon_sym_storage] = ACTIONS(1213), [anon_sym_struct] = ACTIONS(1213), [anon_sym_trait] = ACTIONS(1213), [anon_sym_type] = ACTIONS(1213), [anon_sym_use] = ACTIONS(1213), [anon_sym_while] = ACTIONS(1213), [anon_sym_POUND] = ACTIONS(1211), [anon_sym_BANG] = ACTIONS(1211), [anon_sym_LBRACE] = ACTIONS(1211), [anon_sym_RBRACE] = ACTIONS(1211), [anon_sym_LPAREN] = ACTIONS(1211), [anon_sym_asm] = ACTIONS(1213), [anon_sym_LT] = ACTIONS(1211), [anon_sym_COLON_COLON] = ACTIONS(1211), [anon_sym_STAR] = ACTIONS(1211), [anon_sym_AMP] = ACTIONS(1211), [anon_sym_DOT_DOT] = ACTIONS(1211), [anon_sym_DASH] = ACTIONS(1211), [anon_sym_PIPE] = ACTIONS(1211), [anon_sym_yield] = ACTIONS(1213), [anon_sym_move] = ACTIONS(1213), [sym_integer_literal] = ACTIONS(1211), [aux_sym_string_literal_token1] = ACTIONS(1211), [sym_char_literal] = ACTIONS(1211), [anon_sym_true] = ACTIONS(1213), [anon_sym_false] = ACTIONS(1213), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1213), [sym_metavariable] = ACTIONS(1211), [sym_raw_string_literal] = ACTIONS(1211), [sym_float_literal] = ACTIONS(1211), [sym_block_comment] = ACTIONS(3), }, [314] = { [ts_builtin_sym_end] = ACTIONS(1215), [sym_identifier] = ACTIONS(1217), [anon_sym_SEMI] = ACTIONS(1215), [anon_sym_u8] = ACTIONS(1217), [anon_sym_i8] = ACTIONS(1217), [anon_sym_u16] = ACTIONS(1217), [anon_sym_i16] = ACTIONS(1217), [anon_sym_u32] = ACTIONS(1217), [anon_sym_i32] = ACTIONS(1217), [anon_sym_u64] = ACTIONS(1217), [anon_sym_i64] = ACTIONS(1217), [anon_sym_u128] = ACTIONS(1217), [anon_sym_i128] = ACTIONS(1217), [anon_sym_u256] = ACTIONS(1217), [anon_sym_i256] = ACTIONS(1217), [anon_sym_b256] = ACTIONS(1217), [anon_sym_isize] = ACTIONS(1217), [anon_sym_usize] = ACTIONS(1217), [anon_sym_f32] = ACTIONS(1217), [anon_sym_f64] = ACTIONS(1217), [anon_sym_bool] = ACTIONS(1217), [anon_sym_char] = ACTIONS(1217), [anon_sym_str] = ACTIONS(1217), [anon_sym_LBRACK] = ACTIONS(1215), [anon_sym_contract] = ACTIONS(1217), [anon_sym_script] = ACTIONS(1217), [anon_sym_predicate] = ACTIONS(1217), [anon_sym_library] = ACTIONS(1217), [anon_sym_SQUOTE] = ACTIONS(1217), [anon_sym_abi] = ACTIONS(1217), [anon_sym_break] = ACTIONS(1217), [anon_sym_configurable] = ACTIONS(1217), [anon_sym_const] = ACTIONS(1217), [anon_sym_continue] = ACTIONS(1217), [anon_sym_default] = ACTIONS(1217), [anon_sym_mod] = ACTIONS(1217), [anon_sym_enum] = ACTIONS(1217), [anon_sym_fn] = ACTIONS(1217), [anon_sym_for] = ACTIONS(1217), [anon_sym_if] = ACTIONS(1217), [anon_sym_impl] = ACTIONS(1217), [anon_sym_let] = ACTIONS(1217), [anon_sym_match] = ACTIONS(1217), [anon_sym_pub] = ACTIONS(1217), [anon_sym_return] = ACTIONS(1217), [anon_sym_storage] = ACTIONS(1217), [anon_sym_struct] = ACTIONS(1217), [anon_sym_trait] = ACTIONS(1217), [anon_sym_type] = ACTIONS(1217), [anon_sym_use] = ACTIONS(1217), [anon_sym_while] = ACTIONS(1217), [anon_sym_POUND] = ACTIONS(1215), [anon_sym_BANG] = ACTIONS(1215), [anon_sym_LBRACE] = ACTIONS(1215), [anon_sym_RBRACE] = ACTIONS(1215), [anon_sym_LPAREN] = ACTIONS(1215), [anon_sym_asm] = ACTIONS(1217), [anon_sym_LT] = ACTIONS(1215), [anon_sym_COLON_COLON] = ACTIONS(1215), [anon_sym_STAR] = ACTIONS(1215), [anon_sym_AMP] = ACTIONS(1215), [anon_sym_DOT_DOT] = ACTIONS(1215), [anon_sym_DASH] = ACTIONS(1215), [anon_sym_PIPE] = ACTIONS(1215), [anon_sym_yield] = ACTIONS(1217), [anon_sym_move] = ACTIONS(1217), [sym_integer_literal] = ACTIONS(1215), [aux_sym_string_literal_token1] = ACTIONS(1215), [sym_char_literal] = ACTIONS(1215), [anon_sym_true] = ACTIONS(1217), [anon_sym_false] = ACTIONS(1217), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1217), [sym_metavariable] = ACTIONS(1215), [sym_raw_string_literal] = ACTIONS(1215), [sym_float_literal] = ACTIONS(1215), [sym_block_comment] = ACTIONS(3), }, [315] = { [ts_builtin_sym_end] = ACTIONS(1219), [sym_identifier] = ACTIONS(1221), [anon_sym_SEMI] = ACTIONS(1219), [anon_sym_u8] = ACTIONS(1221), [anon_sym_i8] = ACTIONS(1221), [anon_sym_u16] = ACTIONS(1221), [anon_sym_i16] = ACTIONS(1221), [anon_sym_u32] = ACTIONS(1221), [anon_sym_i32] = ACTIONS(1221), [anon_sym_u64] = ACTIONS(1221), [anon_sym_i64] = ACTIONS(1221), [anon_sym_u128] = ACTIONS(1221), [anon_sym_i128] = ACTIONS(1221), [anon_sym_u256] = ACTIONS(1221), [anon_sym_i256] = ACTIONS(1221), [anon_sym_b256] = ACTIONS(1221), [anon_sym_isize] = ACTIONS(1221), [anon_sym_usize] = ACTIONS(1221), [anon_sym_f32] = ACTIONS(1221), [anon_sym_f64] = ACTIONS(1221), [anon_sym_bool] = ACTIONS(1221), [anon_sym_char] = ACTIONS(1221), [anon_sym_str] = ACTIONS(1221), [anon_sym_LBRACK] = ACTIONS(1219), [anon_sym_contract] = ACTIONS(1221), [anon_sym_script] = ACTIONS(1221), [anon_sym_predicate] = ACTIONS(1221), [anon_sym_library] = ACTIONS(1221), [anon_sym_SQUOTE] = ACTIONS(1221), [anon_sym_abi] = ACTIONS(1221), [anon_sym_break] = ACTIONS(1221), [anon_sym_configurable] = ACTIONS(1221), [anon_sym_const] = ACTIONS(1221), [anon_sym_continue] = ACTIONS(1221), [anon_sym_default] = ACTIONS(1221), [anon_sym_mod] = ACTIONS(1221), [anon_sym_enum] = ACTIONS(1221), [anon_sym_fn] = ACTIONS(1221), [anon_sym_for] = ACTIONS(1221), [anon_sym_if] = ACTIONS(1221), [anon_sym_impl] = ACTIONS(1221), [anon_sym_let] = ACTIONS(1221), [anon_sym_match] = ACTIONS(1221), [anon_sym_pub] = ACTIONS(1221), [anon_sym_return] = ACTIONS(1221), [anon_sym_storage] = ACTIONS(1221), [anon_sym_struct] = ACTIONS(1221), [anon_sym_trait] = ACTIONS(1221), [anon_sym_type] = ACTIONS(1221), [anon_sym_use] = ACTIONS(1221), [anon_sym_while] = ACTIONS(1221), [anon_sym_POUND] = ACTIONS(1219), [anon_sym_BANG] = ACTIONS(1219), [anon_sym_LBRACE] = ACTIONS(1219), [anon_sym_RBRACE] = ACTIONS(1219), [anon_sym_LPAREN] = ACTIONS(1219), [anon_sym_asm] = ACTIONS(1221), [anon_sym_LT] = ACTIONS(1219), [anon_sym_COLON_COLON] = ACTIONS(1219), [anon_sym_STAR] = ACTIONS(1219), [anon_sym_AMP] = ACTIONS(1219), [anon_sym_DOT_DOT] = ACTIONS(1219), [anon_sym_DASH] = ACTIONS(1219), [anon_sym_PIPE] = ACTIONS(1219), [anon_sym_yield] = ACTIONS(1221), [anon_sym_move] = ACTIONS(1221), [sym_integer_literal] = ACTIONS(1219), [aux_sym_string_literal_token1] = ACTIONS(1219), [sym_char_literal] = ACTIONS(1219), [anon_sym_true] = ACTIONS(1221), [anon_sym_false] = ACTIONS(1221), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1221), [sym_metavariable] = ACTIONS(1219), [sym_raw_string_literal] = ACTIONS(1219), [sym_float_literal] = ACTIONS(1219), [sym_block_comment] = ACTIONS(3), }, [316] = { [ts_builtin_sym_end] = ACTIONS(1223), [sym_identifier] = ACTIONS(1225), [anon_sym_SEMI] = ACTIONS(1223), [anon_sym_u8] = ACTIONS(1225), [anon_sym_i8] = ACTIONS(1225), [anon_sym_u16] = ACTIONS(1225), [anon_sym_i16] = ACTIONS(1225), [anon_sym_u32] = ACTIONS(1225), [anon_sym_i32] = ACTIONS(1225), [anon_sym_u64] = ACTIONS(1225), [anon_sym_i64] = ACTIONS(1225), [anon_sym_u128] = ACTIONS(1225), [anon_sym_i128] = ACTIONS(1225), [anon_sym_u256] = ACTIONS(1225), [anon_sym_i256] = ACTIONS(1225), [anon_sym_b256] = ACTIONS(1225), [anon_sym_isize] = ACTIONS(1225), [anon_sym_usize] = ACTIONS(1225), [anon_sym_f32] = ACTIONS(1225), [anon_sym_f64] = ACTIONS(1225), [anon_sym_bool] = ACTIONS(1225), [anon_sym_char] = ACTIONS(1225), [anon_sym_str] = ACTIONS(1225), [anon_sym_LBRACK] = ACTIONS(1223), [anon_sym_contract] = ACTIONS(1225), [anon_sym_script] = ACTIONS(1225), [anon_sym_predicate] = ACTIONS(1225), [anon_sym_library] = ACTIONS(1225), [anon_sym_SQUOTE] = ACTIONS(1225), [anon_sym_abi] = ACTIONS(1225), [anon_sym_break] = ACTIONS(1225), [anon_sym_configurable] = ACTIONS(1225), [anon_sym_const] = ACTIONS(1225), [anon_sym_continue] = ACTIONS(1225), [anon_sym_default] = ACTIONS(1225), [anon_sym_mod] = ACTIONS(1225), [anon_sym_enum] = ACTIONS(1225), [anon_sym_fn] = ACTIONS(1225), [anon_sym_for] = ACTIONS(1225), [anon_sym_if] = ACTIONS(1225), [anon_sym_impl] = ACTIONS(1225), [anon_sym_let] = ACTIONS(1225), [anon_sym_match] = ACTIONS(1225), [anon_sym_pub] = ACTIONS(1225), [anon_sym_return] = ACTIONS(1225), [anon_sym_storage] = ACTIONS(1225), [anon_sym_struct] = ACTIONS(1225), [anon_sym_trait] = ACTIONS(1225), [anon_sym_type] = ACTIONS(1225), [anon_sym_use] = ACTIONS(1225), [anon_sym_while] = ACTIONS(1225), [anon_sym_POUND] = ACTIONS(1223), [anon_sym_BANG] = ACTIONS(1223), [anon_sym_LBRACE] = ACTIONS(1223), [anon_sym_RBRACE] = ACTIONS(1223), [anon_sym_LPAREN] = ACTIONS(1223), [anon_sym_asm] = ACTIONS(1225), [anon_sym_LT] = ACTIONS(1223), [anon_sym_COLON_COLON] = ACTIONS(1223), [anon_sym_STAR] = ACTIONS(1223), [anon_sym_AMP] = ACTIONS(1223), [anon_sym_DOT_DOT] = ACTIONS(1223), [anon_sym_DASH] = ACTIONS(1223), [anon_sym_PIPE] = ACTIONS(1223), [anon_sym_yield] = ACTIONS(1225), [anon_sym_move] = ACTIONS(1225), [sym_integer_literal] = ACTIONS(1223), [aux_sym_string_literal_token1] = ACTIONS(1223), [sym_char_literal] = ACTIONS(1223), [anon_sym_true] = ACTIONS(1225), [anon_sym_false] = ACTIONS(1225), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1225), [sym_metavariable] = ACTIONS(1223), [sym_raw_string_literal] = ACTIONS(1223), [sym_float_literal] = ACTIONS(1223), [sym_block_comment] = ACTIONS(3), }, [317] = { [ts_builtin_sym_end] = ACTIONS(1227), [sym_identifier] = ACTIONS(1229), [anon_sym_SEMI] = ACTIONS(1227), [anon_sym_u8] = ACTIONS(1229), [anon_sym_i8] = ACTIONS(1229), [anon_sym_u16] = ACTIONS(1229), [anon_sym_i16] = ACTIONS(1229), [anon_sym_u32] = ACTIONS(1229), [anon_sym_i32] = ACTIONS(1229), [anon_sym_u64] = ACTIONS(1229), [anon_sym_i64] = ACTIONS(1229), [anon_sym_u128] = ACTIONS(1229), [anon_sym_i128] = ACTIONS(1229), [anon_sym_u256] = ACTIONS(1229), [anon_sym_i256] = ACTIONS(1229), [anon_sym_b256] = ACTIONS(1229), [anon_sym_isize] = ACTIONS(1229), [anon_sym_usize] = ACTIONS(1229), [anon_sym_f32] = ACTIONS(1229), [anon_sym_f64] = ACTIONS(1229), [anon_sym_bool] = ACTIONS(1229), [anon_sym_char] = ACTIONS(1229), [anon_sym_str] = ACTIONS(1229), [anon_sym_LBRACK] = ACTIONS(1227), [anon_sym_contract] = ACTIONS(1229), [anon_sym_script] = ACTIONS(1229), [anon_sym_predicate] = ACTIONS(1229), [anon_sym_library] = ACTIONS(1229), [anon_sym_SQUOTE] = ACTIONS(1229), [anon_sym_abi] = ACTIONS(1229), [anon_sym_break] = ACTIONS(1229), [anon_sym_configurable] = ACTIONS(1229), [anon_sym_const] = ACTIONS(1229), [anon_sym_continue] = ACTIONS(1229), [anon_sym_default] = ACTIONS(1229), [anon_sym_mod] = ACTIONS(1229), [anon_sym_enum] = ACTIONS(1229), [anon_sym_fn] = ACTIONS(1229), [anon_sym_for] = ACTIONS(1229), [anon_sym_if] = ACTIONS(1229), [anon_sym_impl] = ACTIONS(1229), [anon_sym_let] = ACTIONS(1229), [anon_sym_match] = ACTIONS(1229), [anon_sym_pub] = ACTIONS(1229), [anon_sym_return] = ACTIONS(1229), [anon_sym_storage] = ACTIONS(1229), [anon_sym_struct] = ACTIONS(1229), [anon_sym_trait] = ACTIONS(1229), [anon_sym_type] = ACTIONS(1229), [anon_sym_use] = ACTIONS(1229), [anon_sym_while] = ACTIONS(1229), [anon_sym_POUND] = ACTIONS(1227), [anon_sym_BANG] = ACTIONS(1227), [anon_sym_LBRACE] = ACTIONS(1227), [anon_sym_RBRACE] = ACTIONS(1227), [anon_sym_LPAREN] = ACTIONS(1227), [anon_sym_asm] = ACTIONS(1229), [anon_sym_LT] = ACTIONS(1227), [anon_sym_COLON_COLON] = ACTIONS(1227), [anon_sym_STAR] = ACTIONS(1227), [anon_sym_AMP] = ACTIONS(1227), [anon_sym_DOT_DOT] = ACTIONS(1227), [anon_sym_DASH] = ACTIONS(1227), [anon_sym_PIPE] = ACTIONS(1227), [anon_sym_yield] = ACTIONS(1229), [anon_sym_move] = ACTIONS(1229), [sym_integer_literal] = ACTIONS(1227), [aux_sym_string_literal_token1] = ACTIONS(1227), [sym_char_literal] = ACTIONS(1227), [anon_sym_true] = ACTIONS(1229), [anon_sym_false] = ACTIONS(1229), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1229), [sym_metavariable] = ACTIONS(1227), [sym_raw_string_literal] = ACTIONS(1227), [sym_float_literal] = ACTIONS(1227), [sym_block_comment] = ACTIONS(3), }, [318] = { [ts_builtin_sym_end] = ACTIONS(1231), [sym_identifier] = ACTIONS(1233), [anon_sym_SEMI] = ACTIONS(1231), [anon_sym_u8] = ACTIONS(1233), [anon_sym_i8] = ACTIONS(1233), [anon_sym_u16] = ACTIONS(1233), [anon_sym_i16] = ACTIONS(1233), [anon_sym_u32] = ACTIONS(1233), [anon_sym_i32] = ACTIONS(1233), [anon_sym_u64] = ACTIONS(1233), [anon_sym_i64] = ACTIONS(1233), [anon_sym_u128] = ACTIONS(1233), [anon_sym_i128] = ACTIONS(1233), [anon_sym_u256] = ACTIONS(1233), [anon_sym_i256] = ACTIONS(1233), [anon_sym_b256] = ACTIONS(1233), [anon_sym_isize] = ACTIONS(1233), [anon_sym_usize] = ACTIONS(1233), [anon_sym_f32] = ACTIONS(1233), [anon_sym_f64] = ACTIONS(1233), [anon_sym_bool] = ACTIONS(1233), [anon_sym_char] = ACTIONS(1233), [anon_sym_str] = ACTIONS(1233), [anon_sym_LBRACK] = ACTIONS(1231), [anon_sym_contract] = ACTIONS(1233), [anon_sym_script] = ACTIONS(1233), [anon_sym_predicate] = ACTIONS(1233), [anon_sym_library] = ACTIONS(1233), [anon_sym_SQUOTE] = ACTIONS(1233), [anon_sym_abi] = ACTIONS(1233), [anon_sym_break] = ACTIONS(1233), [anon_sym_configurable] = ACTIONS(1233), [anon_sym_const] = ACTIONS(1233), [anon_sym_continue] = ACTIONS(1233), [anon_sym_default] = ACTIONS(1233), [anon_sym_mod] = ACTIONS(1233), [anon_sym_enum] = ACTIONS(1233), [anon_sym_fn] = ACTIONS(1233), [anon_sym_for] = ACTIONS(1233), [anon_sym_if] = ACTIONS(1233), [anon_sym_impl] = ACTIONS(1233), [anon_sym_let] = ACTIONS(1233), [anon_sym_match] = ACTIONS(1233), [anon_sym_pub] = ACTIONS(1233), [anon_sym_return] = ACTIONS(1233), [anon_sym_storage] = ACTIONS(1233), [anon_sym_struct] = ACTIONS(1233), [anon_sym_trait] = ACTIONS(1233), [anon_sym_type] = ACTIONS(1233), [anon_sym_use] = ACTIONS(1233), [anon_sym_while] = ACTIONS(1233), [anon_sym_POUND] = ACTIONS(1231), [anon_sym_BANG] = ACTIONS(1231), [anon_sym_LBRACE] = ACTIONS(1231), [anon_sym_RBRACE] = ACTIONS(1231), [anon_sym_LPAREN] = ACTIONS(1231), [anon_sym_asm] = ACTIONS(1233), [anon_sym_LT] = ACTIONS(1231), [anon_sym_COLON_COLON] = ACTIONS(1231), [anon_sym_STAR] = ACTIONS(1231), [anon_sym_AMP] = ACTIONS(1231), [anon_sym_DOT_DOT] = ACTIONS(1231), [anon_sym_DASH] = ACTIONS(1231), [anon_sym_PIPE] = ACTIONS(1231), [anon_sym_yield] = ACTIONS(1233), [anon_sym_move] = ACTIONS(1233), [sym_integer_literal] = ACTIONS(1231), [aux_sym_string_literal_token1] = ACTIONS(1231), [sym_char_literal] = ACTIONS(1231), [anon_sym_true] = ACTIONS(1233), [anon_sym_false] = ACTIONS(1233), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1233), [sym_metavariable] = ACTIONS(1231), [sym_raw_string_literal] = ACTIONS(1231), [sym_float_literal] = ACTIONS(1231), [sym_block_comment] = ACTIONS(3), }, [319] = { [ts_builtin_sym_end] = ACTIONS(1235), [sym_identifier] = ACTIONS(1237), [anon_sym_SEMI] = ACTIONS(1235), [anon_sym_u8] = ACTIONS(1237), [anon_sym_i8] = ACTIONS(1237), [anon_sym_u16] = ACTIONS(1237), [anon_sym_i16] = ACTIONS(1237), [anon_sym_u32] = ACTIONS(1237), [anon_sym_i32] = ACTIONS(1237), [anon_sym_u64] = ACTIONS(1237), [anon_sym_i64] = ACTIONS(1237), [anon_sym_u128] = ACTIONS(1237), [anon_sym_i128] = ACTIONS(1237), [anon_sym_u256] = ACTIONS(1237), [anon_sym_i256] = ACTIONS(1237), [anon_sym_b256] = ACTIONS(1237), [anon_sym_isize] = ACTIONS(1237), [anon_sym_usize] = ACTIONS(1237), [anon_sym_f32] = ACTIONS(1237), [anon_sym_f64] = ACTIONS(1237), [anon_sym_bool] = ACTIONS(1237), [anon_sym_char] = ACTIONS(1237), [anon_sym_str] = ACTIONS(1237), [anon_sym_LBRACK] = ACTIONS(1235), [anon_sym_contract] = ACTIONS(1237), [anon_sym_script] = ACTIONS(1237), [anon_sym_predicate] = ACTIONS(1237), [anon_sym_library] = ACTIONS(1237), [anon_sym_SQUOTE] = ACTIONS(1237), [anon_sym_abi] = ACTIONS(1237), [anon_sym_break] = ACTIONS(1237), [anon_sym_configurable] = ACTIONS(1237), [anon_sym_const] = ACTIONS(1237), [anon_sym_continue] = ACTIONS(1237), [anon_sym_default] = ACTIONS(1237), [anon_sym_mod] = ACTIONS(1237), [anon_sym_enum] = ACTIONS(1237), [anon_sym_fn] = ACTIONS(1237), [anon_sym_for] = ACTIONS(1237), [anon_sym_if] = ACTIONS(1237), [anon_sym_impl] = ACTIONS(1237), [anon_sym_let] = ACTIONS(1237), [anon_sym_match] = ACTIONS(1237), [anon_sym_pub] = ACTIONS(1237), [anon_sym_return] = ACTIONS(1237), [anon_sym_storage] = ACTIONS(1237), [anon_sym_struct] = ACTIONS(1237), [anon_sym_trait] = ACTIONS(1237), [anon_sym_type] = ACTIONS(1237), [anon_sym_use] = ACTIONS(1237), [anon_sym_while] = ACTIONS(1237), [anon_sym_POUND] = ACTIONS(1235), [anon_sym_BANG] = ACTIONS(1235), [anon_sym_LBRACE] = ACTIONS(1235), [anon_sym_RBRACE] = ACTIONS(1235), [anon_sym_LPAREN] = ACTIONS(1235), [anon_sym_asm] = ACTIONS(1237), [anon_sym_LT] = ACTIONS(1235), [anon_sym_COLON_COLON] = ACTIONS(1235), [anon_sym_STAR] = ACTIONS(1235), [anon_sym_AMP] = ACTIONS(1235), [anon_sym_DOT_DOT] = ACTIONS(1235), [anon_sym_DASH] = ACTIONS(1235), [anon_sym_PIPE] = ACTIONS(1235), [anon_sym_yield] = ACTIONS(1237), [anon_sym_move] = ACTIONS(1237), [sym_integer_literal] = ACTIONS(1235), [aux_sym_string_literal_token1] = ACTIONS(1235), [sym_char_literal] = ACTIONS(1235), [anon_sym_true] = ACTIONS(1237), [anon_sym_false] = ACTIONS(1237), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1237), [sym_metavariable] = ACTIONS(1235), [sym_raw_string_literal] = ACTIONS(1235), [sym_float_literal] = ACTIONS(1235), [sym_block_comment] = ACTIONS(3), }, [320] = { [ts_builtin_sym_end] = ACTIONS(1239), [sym_identifier] = ACTIONS(1241), [anon_sym_SEMI] = ACTIONS(1239), [anon_sym_u8] = ACTIONS(1241), [anon_sym_i8] = ACTIONS(1241), [anon_sym_u16] = ACTIONS(1241), [anon_sym_i16] = ACTIONS(1241), [anon_sym_u32] = ACTIONS(1241), [anon_sym_i32] = ACTIONS(1241), [anon_sym_u64] = ACTIONS(1241), [anon_sym_i64] = ACTIONS(1241), [anon_sym_u128] = ACTIONS(1241), [anon_sym_i128] = ACTIONS(1241), [anon_sym_u256] = ACTIONS(1241), [anon_sym_i256] = ACTIONS(1241), [anon_sym_b256] = ACTIONS(1241), [anon_sym_isize] = ACTIONS(1241), [anon_sym_usize] = ACTIONS(1241), [anon_sym_f32] = ACTIONS(1241), [anon_sym_f64] = ACTIONS(1241), [anon_sym_bool] = ACTIONS(1241), [anon_sym_char] = ACTIONS(1241), [anon_sym_str] = ACTIONS(1241), [anon_sym_LBRACK] = ACTIONS(1239), [anon_sym_contract] = ACTIONS(1241), [anon_sym_script] = ACTIONS(1241), [anon_sym_predicate] = ACTIONS(1241), [anon_sym_library] = ACTIONS(1241), [anon_sym_SQUOTE] = ACTIONS(1241), [anon_sym_abi] = ACTIONS(1241), [anon_sym_break] = ACTIONS(1241), [anon_sym_configurable] = ACTIONS(1241), [anon_sym_const] = ACTIONS(1241), [anon_sym_continue] = ACTIONS(1241), [anon_sym_default] = ACTIONS(1241), [anon_sym_mod] = ACTIONS(1241), [anon_sym_enum] = ACTIONS(1241), [anon_sym_fn] = ACTIONS(1241), [anon_sym_for] = ACTIONS(1241), [anon_sym_if] = ACTIONS(1241), [anon_sym_impl] = ACTIONS(1241), [anon_sym_let] = ACTIONS(1241), [anon_sym_match] = ACTIONS(1241), [anon_sym_pub] = ACTIONS(1241), [anon_sym_return] = ACTIONS(1241), [anon_sym_storage] = ACTIONS(1241), [anon_sym_struct] = ACTIONS(1241), [anon_sym_trait] = ACTIONS(1241), [anon_sym_type] = ACTIONS(1241), [anon_sym_use] = ACTIONS(1241), [anon_sym_while] = ACTIONS(1241), [anon_sym_POUND] = ACTIONS(1239), [anon_sym_BANG] = ACTIONS(1239), [anon_sym_LBRACE] = ACTIONS(1239), [anon_sym_RBRACE] = ACTIONS(1239), [anon_sym_LPAREN] = ACTIONS(1239), [anon_sym_asm] = ACTIONS(1241), [anon_sym_LT] = ACTIONS(1239), [anon_sym_COLON_COLON] = ACTIONS(1239), [anon_sym_STAR] = ACTIONS(1239), [anon_sym_AMP] = ACTIONS(1239), [anon_sym_DOT_DOT] = ACTIONS(1239), [anon_sym_DASH] = ACTIONS(1239), [anon_sym_PIPE] = ACTIONS(1239), [anon_sym_yield] = ACTIONS(1241), [anon_sym_move] = ACTIONS(1241), [sym_integer_literal] = ACTIONS(1239), [aux_sym_string_literal_token1] = ACTIONS(1239), [sym_char_literal] = ACTIONS(1239), [anon_sym_true] = ACTIONS(1241), [anon_sym_false] = ACTIONS(1241), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1241), [sym_metavariable] = ACTIONS(1239), [sym_raw_string_literal] = ACTIONS(1239), [sym_float_literal] = ACTIONS(1239), [sym_block_comment] = ACTIONS(3), }, [321] = { [ts_builtin_sym_end] = ACTIONS(1243), [sym_identifier] = ACTIONS(1245), [anon_sym_SEMI] = ACTIONS(1243), [anon_sym_u8] = ACTIONS(1245), [anon_sym_i8] = ACTIONS(1245), [anon_sym_u16] = ACTIONS(1245), [anon_sym_i16] = ACTIONS(1245), [anon_sym_u32] = ACTIONS(1245), [anon_sym_i32] = ACTIONS(1245), [anon_sym_u64] = ACTIONS(1245), [anon_sym_i64] = ACTIONS(1245), [anon_sym_u128] = ACTIONS(1245), [anon_sym_i128] = ACTIONS(1245), [anon_sym_u256] = ACTIONS(1245), [anon_sym_i256] = ACTIONS(1245), [anon_sym_b256] = ACTIONS(1245), [anon_sym_isize] = ACTIONS(1245), [anon_sym_usize] = ACTIONS(1245), [anon_sym_f32] = ACTIONS(1245), [anon_sym_f64] = ACTIONS(1245), [anon_sym_bool] = ACTIONS(1245), [anon_sym_char] = ACTIONS(1245), [anon_sym_str] = ACTIONS(1245), [anon_sym_LBRACK] = ACTIONS(1243), [anon_sym_contract] = ACTIONS(1245), [anon_sym_script] = ACTIONS(1245), [anon_sym_predicate] = ACTIONS(1245), [anon_sym_library] = ACTIONS(1245), [anon_sym_SQUOTE] = ACTIONS(1245), [anon_sym_abi] = ACTIONS(1245), [anon_sym_break] = ACTIONS(1245), [anon_sym_configurable] = ACTIONS(1245), [anon_sym_const] = ACTIONS(1245), [anon_sym_continue] = ACTIONS(1245), [anon_sym_default] = ACTIONS(1245), [anon_sym_mod] = ACTIONS(1245), [anon_sym_enum] = ACTIONS(1245), [anon_sym_fn] = ACTIONS(1245), [anon_sym_for] = ACTIONS(1245), [anon_sym_if] = ACTIONS(1245), [anon_sym_impl] = ACTIONS(1245), [anon_sym_let] = ACTIONS(1245), [anon_sym_match] = ACTIONS(1245), [anon_sym_pub] = ACTIONS(1245), [anon_sym_return] = ACTIONS(1245), [anon_sym_storage] = ACTIONS(1245), [anon_sym_struct] = ACTIONS(1245), [anon_sym_trait] = ACTIONS(1245), [anon_sym_type] = ACTIONS(1245), [anon_sym_use] = ACTIONS(1245), [anon_sym_while] = ACTIONS(1245), [anon_sym_POUND] = ACTIONS(1243), [anon_sym_BANG] = ACTIONS(1243), [anon_sym_LBRACE] = ACTIONS(1243), [anon_sym_RBRACE] = ACTIONS(1243), [anon_sym_LPAREN] = ACTIONS(1243), [anon_sym_asm] = ACTIONS(1245), [anon_sym_LT] = ACTIONS(1243), [anon_sym_COLON_COLON] = ACTIONS(1243), [anon_sym_STAR] = ACTIONS(1243), [anon_sym_AMP] = ACTIONS(1243), [anon_sym_DOT_DOT] = ACTIONS(1243), [anon_sym_DASH] = ACTIONS(1243), [anon_sym_PIPE] = ACTIONS(1243), [anon_sym_yield] = ACTIONS(1245), [anon_sym_move] = ACTIONS(1245), [sym_integer_literal] = ACTIONS(1243), [aux_sym_string_literal_token1] = ACTIONS(1243), [sym_char_literal] = ACTIONS(1243), [anon_sym_true] = ACTIONS(1245), [anon_sym_false] = ACTIONS(1245), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1245), [sym_metavariable] = ACTIONS(1243), [sym_raw_string_literal] = ACTIONS(1243), [sym_float_literal] = ACTIONS(1243), [sym_block_comment] = ACTIONS(3), }, [322] = { [ts_builtin_sym_end] = ACTIONS(1247), [sym_identifier] = ACTIONS(1249), [anon_sym_SEMI] = ACTIONS(1247), [anon_sym_u8] = ACTIONS(1249), [anon_sym_i8] = ACTIONS(1249), [anon_sym_u16] = ACTIONS(1249), [anon_sym_i16] = ACTIONS(1249), [anon_sym_u32] = ACTIONS(1249), [anon_sym_i32] = ACTIONS(1249), [anon_sym_u64] = ACTIONS(1249), [anon_sym_i64] = ACTIONS(1249), [anon_sym_u128] = ACTIONS(1249), [anon_sym_i128] = ACTIONS(1249), [anon_sym_u256] = ACTIONS(1249), [anon_sym_i256] = ACTIONS(1249), [anon_sym_b256] = ACTIONS(1249), [anon_sym_isize] = ACTIONS(1249), [anon_sym_usize] = ACTIONS(1249), [anon_sym_f32] = ACTIONS(1249), [anon_sym_f64] = ACTIONS(1249), [anon_sym_bool] = ACTIONS(1249), [anon_sym_char] = ACTIONS(1249), [anon_sym_str] = ACTIONS(1249), [anon_sym_LBRACK] = ACTIONS(1247), [anon_sym_contract] = ACTIONS(1249), [anon_sym_script] = ACTIONS(1249), [anon_sym_predicate] = ACTIONS(1249), [anon_sym_library] = ACTIONS(1249), [anon_sym_SQUOTE] = ACTIONS(1249), [anon_sym_abi] = ACTIONS(1249), [anon_sym_break] = ACTIONS(1249), [anon_sym_configurable] = ACTIONS(1249), [anon_sym_const] = ACTIONS(1249), [anon_sym_continue] = ACTIONS(1249), [anon_sym_default] = ACTIONS(1249), [anon_sym_mod] = ACTIONS(1249), [anon_sym_enum] = ACTIONS(1249), [anon_sym_fn] = ACTIONS(1249), [anon_sym_for] = ACTIONS(1249), [anon_sym_if] = ACTIONS(1249), [anon_sym_impl] = ACTIONS(1249), [anon_sym_let] = ACTIONS(1249), [anon_sym_match] = ACTIONS(1249), [anon_sym_pub] = ACTIONS(1249), [anon_sym_return] = ACTIONS(1249), [anon_sym_storage] = ACTIONS(1249), [anon_sym_struct] = ACTIONS(1249), [anon_sym_trait] = ACTIONS(1249), [anon_sym_type] = ACTIONS(1249), [anon_sym_use] = ACTIONS(1249), [anon_sym_while] = ACTIONS(1249), [anon_sym_POUND] = ACTIONS(1247), [anon_sym_BANG] = ACTIONS(1247), [anon_sym_LBRACE] = ACTIONS(1247), [anon_sym_RBRACE] = ACTIONS(1247), [anon_sym_LPAREN] = ACTIONS(1247), [anon_sym_asm] = ACTIONS(1249), [anon_sym_LT] = ACTIONS(1247), [anon_sym_COLON_COLON] = ACTIONS(1247), [anon_sym_STAR] = ACTIONS(1247), [anon_sym_AMP] = ACTIONS(1247), [anon_sym_DOT_DOT] = ACTIONS(1247), [anon_sym_DASH] = ACTIONS(1247), [anon_sym_PIPE] = ACTIONS(1247), [anon_sym_yield] = ACTIONS(1249), [anon_sym_move] = ACTIONS(1249), [sym_integer_literal] = ACTIONS(1247), [aux_sym_string_literal_token1] = ACTIONS(1247), [sym_char_literal] = ACTIONS(1247), [anon_sym_true] = ACTIONS(1249), [anon_sym_false] = ACTIONS(1249), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1249), [sym_metavariable] = ACTIONS(1247), [sym_raw_string_literal] = ACTIONS(1247), [sym_float_literal] = ACTIONS(1247), [sym_block_comment] = ACTIONS(3), }, [323] = { [ts_builtin_sym_end] = ACTIONS(1251), [sym_identifier] = ACTIONS(1253), [anon_sym_SEMI] = ACTIONS(1251), [anon_sym_u8] = ACTIONS(1253), [anon_sym_i8] = ACTIONS(1253), [anon_sym_u16] = ACTIONS(1253), [anon_sym_i16] = ACTIONS(1253), [anon_sym_u32] = ACTIONS(1253), [anon_sym_i32] = ACTIONS(1253), [anon_sym_u64] = ACTIONS(1253), [anon_sym_i64] = ACTIONS(1253), [anon_sym_u128] = ACTIONS(1253), [anon_sym_i128] = ACTIONS(1253), [anon_sym_u256] = ACTIONS(1253), [anon_sym_i256] = ACTIONS(1253), [anon_sym_b256] = ACTIONS(1253), [anon_sym_isize] = ACTIONS(1253), [anon_sym_usize] = ACTIONS(1253), [anon_sym_f32] = ACTIONS(1253), [anon_sym_f64] = ACTIONS(1253), [anon_sym_bool] = ACTIONS(1253), [anon_sym_char] = ACTIONS(1253), [anon_sym_str] = ACTIONS(1253), [anon_sym_LBRACK] = ACTIONS(1251), [anon_sym_contract] = ACTIONS(1253), [anon_sym_script] = ACTIONS(1253), [anon_sym_predicate] = ACTIONS(1253), [anon_sym_library] = ACTIONS(1253), [anon_sym_SQUOTE] = ACTIONS(1253), [anon_sym_abi] = ACTIONS(1253), [anon_sym_break] = ACTIONS(1253), [anon_sym_configurable] = ACTIONS(1253), [anon_sym_const] = ACTIONS(1253), [anon_sym_continue] = ACTIONS(1253), [anon_sym_default] = ACTIONS(1253), [anon_sym_mod] = ACTIONS(1253), [anon_sym_enum] = ACTIONS(1253), [anon_sym_fn] = ACTIONS(1253), [anon_sym_for] = ACTIONS(1253), [anon_sym_if] = ACTIONS(1253), [anon_sym_impl] = ACTIONS(1253), [anon_sym_let] = ACTIONS(1253), [anon_sym_match] = ACTIONS(1253), [anon_sym_pub] = ACTIONS(1253), [anon_sym_return] = ACTIONS(1253), [anon_sym_storage] = ACTIONS(1253), [anon_sym_struct] = ACTIONS(1253), [anon_sym_trait] = ACTIONS(1253), [anon_sym_type] = ACTIONS(1253), [anon_sym_use] = ACTIONS(1253), [anon_sym_while] = ACTIONS(1253), [anon_sym_POUND] = ACTIONS(1251), [anon_sym_BANG] = ACTIONS(1251), [anon_sym_LBRACE] = ACTIONS(1251), [anon_sym_RBRACE] = ACTIONS(1251), [anon_sym_LPAREN] = ACTIONS(1251), [anon_sym_asm] = ACTIONS(1253), [anon_sym_LT] = ACTIONS(1251), [anon_sym_COLON_COLON] = ACTIONS(1251), [anon_sym_STAR] = ACTIONS(1251), [anon_sym_AMP] = ACTIONS(1251), [anon_sym_DOT_DOT] = ACTIONS(1251), [anon_sym_DASH] = ACTIONS(1251), [anon_sym_PIPE] = ACTIONS(1251), [anon_sym_yield] = ACTIONS(1253), [anon_sym_move] = ACTIONS(1253), [sym_integer_literal] = ACTIONS(1251), [aux_sym_string_literal_token1] = ACTIONS(1251), [sym_char_literal] = ACTIONS(1251), [anon_sym_true] = ACTIONS(1253), [anon_sym_false] = ACTIONS(1253), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1253), [sym_metavariable] = ACTIONS(1251), [sym_raw_string_literal] = ACTIONS(1251), [sym_float_literal] = ACTIONS(1251), [sym_block_comment] = ACTIONS(3), }, [324] = { [ts_builtin_sym_end] = ACTIONS(1255), [sym_identifier] = ACTIONS(1257), [anon_sym_SEMI] = ACTIONS(1255), [anon_sym_u8] = ACTIONS(1257), [anon_sym_i8] = ACTIONS(1257), [anon_sym_u16] = ACTIONS(1257), [anon_sym_i16] = ACTIONS(1257), [anon_sym_u32] = ACTIONS(1257), [anon_sym_i32] = ACTIONS(1257), [anon_sym_u64] = ACTIONS(1257), [anon_sym_i64] = ACTIONS(1257), [anon_sym_u128] = ACTIONS(1257), [anon_sym_i128] = ACTIONS(1257), [anon_sym_u256] = ACTIONS(1257), [anon_sym_i256] = ACTIONS(1257), [anon_sym_b256] = ACTIONS(1257), [anon_sym_isize] = ACTIONS(1257), [anon_sym_usize] = ACTIONS(1257), [anon_sym_f32] = ACTIONS(1257), [anon_sym_f64] = ACTIONS(1257), [anon_sym_bool] = ACTIONS(1257), [anon_sym_char] = ACTIONS(1257), [anon_sym_str] = ACTIONS(1257), [anon_sym_LBRACK] = ACTIONS(1255), [anon_sym_contract] = ACTIONS(1257), [anon_sym_script] = ACTIONS(1257), [anon_sym_predicate] = ACTIONS(1257), [anon_sym_library] = ACTIONS(1257), [anon_sym_SQUOTE] = ACTIONS(1257), [anon_sym_abi] = ACTIONS(1257), [anon_sym_break] = ACTIONS(1257), [anon_sym_configurable] = ACTIONS(1257), [anon_sym_const] = ACTIONS(1257), [anon_sym_continue] = ACTIONS(1257), [anon_sym_default] = ACTIONS(1257), [anon_sym_mod] = ACTIONS(1257), [anon_sym_enum] = ACTIONS(1257), [anon_sym_fn] = ACTIONS(1257), [anon_sym_for] = ACTIONS(1257), [anon_sym_if] = ACTIONS(1257), [anon_sym_impl] = ACTIONS(1257), [anon_sym_let] = ACTIONS(1257), [anon_sym_match] = ACTIONS(1257), [anon_sym_pub] = ACTIONS(1257), [anon_sym_return] = ACTIONS(1257), [anon_sym_storage] = ACTIONS(1257), [anon_sym_struct] = ACTIONS(1257), [anon_sym_trait] = ACTIONS(1257), [anon_sym_type] = ACTIONS(1257), [anon_sym_use] = ACTIONS(1257), [anon_sym_while] = ACTIONS(1257), [anon_sym_POUND] = ACTIONS(1255), [anon_sym_BANG] = ACTIONS(1255), [anon_sym_LBRACE] = ACTIONS(1255), [anon_sym_RBRACE] = ACTIONS(1255), [anon_sym_LPAREN] = ACTIONS(1255), [anon_sym_asm] = ACTIONS(1257), [anon_sym_LT] = ACTIONS(1255), [anon_sym_COLON_COLON] = ACTIONS(1255), [anon_sym_STAR] = ACTIONS(1255), [anon_sym_AMP] = ACTIONS(1255), [anon_sym_DOT_DOT] = ACTIONS(1255), [anon_sym_DASH] = ACTIONS(1255), [anon_sym_PIPE] = ACTIONS(1255), [anon_sym_yield] = ACTIONS(1257), [anon_sym_move] = ACTIONS(1257), [sym_integer_literal] = ACTIONS(1255), [aux_sym_string_literal_token1] = ACTIONS(1255), [sym_char_literal] = ACTIONS(1255), [anon_sym_true] = ACTIONS(1257), [anon_sym_false] = ACTIONS(1257), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1257), [sym_metavariable] = ACTIONS(1255), [sym_raw_string_literal] = ACTIONS(1255), [sym_float_literal] = ACTIONS(1255), [sym_block_comment] = ACTIONS(3), }, [325] = { [ts_builtin_sym_end] = ACTIONS(1259), [sym_identifier] = ACTIONS(1261), [anon_sym_SEMI] = ACTIONS(1259), [anon_sym_u8] = ACTIONS(1261), [anon_sym_i8] = ACTIONS(1261), [anon_sym_u16] = ACTIONS(1261), [anon_sym_i16] = ACTIONS(1261), [anon_sym_u32] = ACTIONS(1261), [anon_sym_i32] = ACTIONS(1261), [anon_sym_u64] = ACTIONS(1261), [anon_sym_i64] = ACTIONS(1261), [anon_sym_u128] = ACTIONS(1261), [anon_sym_i128] = ACTIONS(1261), [anon_sym_u256] = ACTIONS(1261), [anon_sym_i256] = ACTIONS(1261), [anon_sym_b256] = ACTIONS(1261), [anon_sym_isize] = ACTIONS(1261), [anon_sym_usize] = ACTIONS(1261), [anon_sym_f32] = ACTIONS(1261), [anon_sym_f64] = ACTIONS(1261), [anon_sym_bool] = ACTIONS(1261), [anon_sym_char] = ACTIONS(1261), [anon_sym_str] = ACTIONS(1261), [anon_sym_LBRACK] = ACTIONS(1259), [anon_sym_contract] = ACTIONS(1261), [anon_sym_script] = ACTIONS(1261), [anon_sym_predicate] = ACTIONS(1261), [anon_sym_library] = ACTIONS(1261), [anon_sym_SQUOTE] = ACTIONS(1261), [anon_sym_abi] = ACTIONS(1261), [anon_sym_break] = ACTIONS(1261), [anon_sym_configurable] = ACTIONS(1261), [anon_sym_const] = ACTIONS(1261), [anon_sym_continue] = ACTIONS(1261), [anon_sym_default] = ACTIONS(1261), [anon_sym_mod] = ACTIONS(1261), [anon_sym_enum] = ACTIONS(1261), [anon_sym_fn] = ACTIONS(1261), [anon_sym_for] = ACTIONS(1261), [anon_sym_if] = ACTIONS(1261), [anon_sym_impl] = ACTIONS(1261), [anon_sym_let] = ACTIONS(1261), [anon_sym_match] = ACTIONS(1261), [anon_sym_pub] = ACTIONS(1261), [anon_sym_return] = ACTIONS(1261), [anon_sym_storage] = ACTIONS(1261), [anon_sym_struct] = ACTIONS(1261), [anon_sym_trait] = ACTIONS(1261), [anon_sym_type] = ACTIONS(1261), [anon_sym_use] = ACTIONS(1261), [anon_sym_while] = ACTIONS(1261), [anon_sym_POUND] = ACTIONS(1259), [anon_sym_BANG] = ACTIONS(1259), [anon_sym_LBRACE] = ACTIONS(1259), [anon_sym_RBRACE] = ACTIONS(1259), [anon_sym_LPAREN] = ACTIONS(1259), [anon_sym_asm] = ACTIONS(1261), [anon_sym_LT] = ACTIONS(1259), [anon_sym_COLON_COLON] = ACTIONS(1259), [anon_sym_STAR] = ACTIONS(1259), [anon_sym_AMP] = ACTIONS(1259), [anon_sym_DOT_DOT] = ACTIONS(1259), [anon_sym_DASH] = ACTIONS(1259), [anon_sym_PIPE] = ACTIONS(1259), [anon_sym_yield] = ACTIONS(1261), [anon_sym_move] = ACTIONS(1261), [sym_integer_literal] = ACTIONS(1259), [aux_sym_string_literal_token1] = ACTIONS(1259), [sym_char_literal] = ACTIONS(1259), [anon_sym_true] = ACTIONS(1261), [anon_sym_false] = ACTIONS(1261), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1261), [sym_metavariable] = ACTIONS(1259), [sym_raw_string_literal] = ACTIONS(1259), [sym_float_literal] = ACTIONS(1259), [sym_block_comment] = ACTIONS(3), }, [326] = { [ts_builtin_sym_end] = ACTIONS(1263), [sym_identifier] = ACTIONS(1265), [anon_sym_SEMI] = ACTIONS(1263), [anon_sym_u8] = ACTIONS(1265), [anon_sym_i8] = ACTIONS(1265), [anon_sym_u16] = ACTIONS(1265), [anon_sym_i16] = ACTIONS(1265), [anon_sym_u32] = ACTIONS(1265), [anon_sym_i32] = ACTIONS(1265), [anon_sym_u64] = ACTIONS(1265), [anon_sym_i64] = ACTIONS(1265), [anon_sym_u128] = ACTIONS(1265), [anon_sym_i128] = ACTIONS(1265), [anon_sym_u256] = ACTIONS(1265), [anon_sym_i256] = ACTIONS(1265), [anon_sym_b256] = ACTIONS(1265), [anon_sym_isize] = ACTIONS(1265), [anon_sym_usize] = ACTIONS(1265), [anon_sym_f32] = ACTIONS(1265), [anon_sym_f64] = ACTIONS(1265), [anon_sym_bool] = ACTIONS(1265), [anon_sym_char] = ACTIONS(1265), [anon_sym_str] = ACTIONS(1265), [anon_sym_LBRACK] = ACTIONS(1263), [anon_sym_contract] = ACTIONS(1265), [anon_sym_script] = ACTIONS(1265), [anon_sym_predicate] = ACTIONS(1265), [anon_sym_library] = ACTIONS(1265), [anon_sym_SQUOTE] = ACTIONS(1265), [anon_sym_abi] = ACTIONS(1265), [anon_sym_break] = ACTIONS(1265), [anon_sym_configurable] = ACTIONS(1265), [anon_sym_const] = ACTIONS(1265), [anon_sym_continue] = ACTIONS(1265), [anon_sym_default] = ACTIONS(1265), [anon_sym_mod] = ACTIONS(1265), [anon_sym_enum] = ACTIONS(1265), [anon_sym_fn] = ACTIONS(1265), [anon_sym_for] = ACTIONS(1265), [anon_sym_if] = ACTIONS(1265), [anon_sym_impl] = ACTIONS(1265), [anon_sym_let] = ACTIONS(1265), [anon_sym_match] = ACTIONS(1265), [anon_sym_pub] = ACTIONS(1265), [anon_sym_return] = ACTIONS(1265), [anon_sym_storage] = ACTIONS(1265), [anon_sym_struct] = ACTIONS(1265), [anon_sym_trait] = ACTIONS(1265), [anon_sym_type] = ACTIONS(1265), [anon_sym_use] = ACTIONS(1265), [anon_sym_while] = ACTIONS(1265), [anon_sym_POUND] = ACTIONS(1263), [anon_sym_BANG] = ACTIONS(1263), [anon_sym_LBRACE] = ACTIONS(1263), [anon_sym_RBRACE] = ACTIONS(1263), [anon_sym_LPAREN] = ACTIONS(1263), [anon_sym_asm] = ACTIONS(1265), [anon_sym_LT] = ACTIONS(1263), [anon_sym_COLON_COLON] = ACTIONS(1263), [anon_sym_STAR] = ACTIONS(1263), [anon_sym_AMP] = ACTIONS(1263), [anon_sym_DOT_DOT] = ACTIONS(1263), [anon_sym_DASH] = ACTIONS(1263), [anon_sym_PIPE] = ACTIONS(1263), [anon_sym_yield] = ACTIONS(1265), [anon_sym_move] = ACTIONS(1265), [sym_integer_literal] = ACTIONS(1263), [aux_sym_string_literal_token1] = ACTIONS(1263), [sym_char_literal] = ACTIONS(1263), [anon_sym_true] = ACTIONS(1265), [anon_sym_false] = ACTIONS(1265), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1265), [sym_metavariable] = ACTIONS(1263), [sym_raw_string_literal] = ACTIONS(1263), [sym_float_literal] = ACTIONS(1263), [sym_block_comment] = ACTIONS(3), }, [327] = { [ts_builtin_sym_end] = ACTIONS(1267), [sym_identifier] = ACTIONS(1269), [anon_sym_SEMI] = ACTIONS(1267), [anon_sym_u8] = ACTIONS(1269), [anon_sym_i8] = ACTIONS(1269), [anon_sym_u16] = ACTIONS(1269), [anon_sym_i16] = ACTIONS(1269), [anon_sym_u32] = ACTIONS(1269), [anon_sym_i32] = ACTIONS(1269), [anon_sym_u64] = ACTIONS(1269), [anon_sym_i64] = ACTIONS(1269), [anon_sym_u128] = ACTIONS(1269), [anon_sym_i128] = ACTIONS(1269), [anon_sym_u256] = ACTIONS(1269), [anon_sym_i256] = ACTIONS(1269), [anon_sym_b256] = ACTIONS(1269), [anon_sym_isize] = ACTIONS(1269), [anon_sym_usize] = ACTIONS(1269), [anon_sym_f32] = ACTIONS(1269), [anon_sym_f64] = ACTIONS(1269), [anon_sym_bool] = ACTIONS(1269), [anon_sym_char] = ACTIONS(1269), [anon_sym_str] = ACTIONS(1269), [anon_sym_LBRACK] = ACTIONS(1267), [anon_sym_contract] = ACTIONS(1269), [anon_sym_script] = ACTIONS(1269), [anon_sym_predicate] = ACTIONS(1269), [anon_sym_library] = ACTIONS(1269), [anon_sym_SQUOTE] = ACTIONS(1269), [anon_sym_abi] = ACTIONS(1269), [anon_sym_break] = ACTIONS(1269), [anon_sym_configurable] = ACTIONS(1269), [anon_sym_const] = ACTIONS(1269), [anon_sym_continue] = ACTIONS(1269), [anon_sym_default] = ACTIONS(1269), [anon_sym_mod] = ACTIONS(1269), [anon_sym_enum] = ACTIONS(1269), [anon_sym_fn] = ACTIONS(1269), [anon_sym_for] = ACTIONS(1269), [anon_sym_if] = ACTIONS(1269), [anon_sym_impl] = ACTIONS(1269), [anon_sym_let] = ACTIONS(1269), [anon_sym_match] = ACTIONS(1269), [anon_sym_pub] = ACTIONS(1269), [anon_sym_return] = ACTIONS(1269), [anon_sym_storage] = ACTIONS(1269), [anon_sym_struct] = ACTIONS(1269), [anon_sym_trait] = ACTIONS(1269), [anon_sym_type] = ACTIONS(1269), [anon_sym_use] = ACTIONS(1269), [anon_sym_while] = ACTIONS(1269), [anon_sym_POUND] = ACTIONS(1267), [anon_sym_BANG] = ACTIONS(1267), [anon_sym_LBRACE] = ACTIONS(1267), [anon_sym_RBRACE] = ACTIONS(1267), [anon_sym_LPAREN] = ACTIONS(1267), [anon_sym_asm] = ACTIONS(1269), [anon_sym_LT] = ACTIONS(1267), [anon_sym_COLON_COLON] = ACTIONS(1267), [anon_sym_STAR] = ACTIONS(1267), [anon_sym_AMP] = ACTIONS(1267), [anon_sym_DOT_DOT] = ACTIONS(1267), [anon_sym_DASH] = ACTIONS(1267), [anon_sym_PIPE] = ACTIONS(1267), [anon_sym_yield] = ACTIONS(1269), [anon_sym_move] = ACTIONS(1269), [sym_integer_literal] = ACTIONS(1267), [aux_sym_string_literal_token1] = ACTIONS(1267), [sym_char_literal] = ACTIONS(1267), [anon_sym_true] = ACTIONS(1269), [anon_sym_false] = ACTIONS(1269), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1269), [sym_metavariable] = ACTIONS(1267), [sym_raw_string_literal] = ACTIONS(1267), [sym_float_literal] = ACTIONS(1267), [sym_block_comment] = ACTIONS(3), }, [328] = { [ts_builtin_sym_end] = ACTIONS(1271), [sym_identifier] = ACTIONS(1273), [anon_sym_SEMI] = ACTIONS(1271), [anon_sym_u8] = ACTIONS(1273), [anon_sym_i8] = ACTIONS(1273), [anon_sym_u16] = ACTIONS(1273), [anon_sym_i16] = ACTIONS(1273), [anon_sym_u32] = ACTIONS(1273), [anon_sym_i32] = ACTIONS(1273), [anon_sym_u64] = ACTIONS(1273), [anon_sym_i64] = ACTIONS(1273), [anon_sym_u128] = ACTIONS(1273), [anon_sym_i128] = ACTIONS(1273), [anon_sym_u256] = ACTIONS(1273), [anon_sym_i256] = ACTIONS(1273), [anon_sym_b256] = ACTIONS(1273), [anon_sym_isize] = ACTIONS(1273), [anon_sym_usize] = ACTIONS(1273), [anon_sym_f32] = ACTIONS(1273), [anon_sym_f64] = ACTIONS(1273), [anon_sym_bool] = ACTIONS(1273), [anon_sym_char] = ACTIONS(1273), [anon_sym_str] = ACTIONS(1273), [anon_sym_LBRACK] = ACTIONS(1271), [anon_sym_contract] = ACTIONS(1273), [anon_sym_script] = ACTIONS(1273), [anon_sym_predicate] = ACTIONS(1273), [anon_sym_library] = ACTIONS(1273), [anon_sym_SQUOTE] = ACTIONS(1273), [anon_sym_abi] = ACTIONS(1273), [anon_sym_break] = ACTIONS(1273), [anon_sym_configurable] = ACTIONS(1273), [anon_sym_const] = ACTIONS(1273), [anon_sym_continue] = ACTIONS(1273), [anon_sym_default] = ACTIONS(1273), [anon_sym_mod] = ACTIONS(1273), [anon_sym_enum] = ACTIONS(1273), [anon_sym_fn] = ACTIONS(1273), [anon_sym_for] = ACTIONS(1273), [anon_sym_if] = ACTIONS(1273), [anon_sym_impl] = ACTIONS(1273), [anon_sym_let] = ACTIONS(1273), [anon_sym_match] = ACTIONS(1273), [anon_sym_pub] = ACTIONS(1273), [anon_sym_return] = ACTIONS(1273), [anon_sym_storage] = ACTIONS(1273), [anon_sym_struct] = ACTIONS(1273), [anon_sym_trait] = ACTIONS(1273), [anon_sym_type] = ACTIONS(1273), [anon_sym_use] = ACTIONS(1273), [anon_sym_while] = ACTIONS(1273), [anon_sym_POUND] = ACTIONS(1271), [anon_sym_BANG] = ACTIONS(1271), [anon_sym_LBRACE] = ACTIONS(1271), [anon_sym_RBRACE] = ACTIONS(1271), [anon_sym_LPAREN] = ACTIONS(1271), [anon_sym_asm] = ACTIONS(1273), [anon_sym_LT] = ACTIONS(1271), [anon_sym_COLON_COLON] = ACTIONS(1271), [anon_sym_STAR] = ACTIONS(1271), [anon_sym_AMP] = ACTIONS(1271), [anon_sym_DOT_DOT] = ACTIONS(1271), [anon_sym_DASH] = ACTIONS(1271), [anon_sym_PIPE] = ACTIONS(1271), [anon_sym_yield] = ACTIONS(1273), [anon_sym_move] = ACTIONS(1273), [sym_integer_literal] = ACTIONS(1271), [aux_sym_string_literal_token1] = ACTIONS(1271), [sym_char_literal] = ACTIONS(1271), [anon_sym_true] = ACTIONS(1273), [anon_sym_false] = ACTIONS(1273), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1273), [sym_metavariable] = ACTIONS(1271), [sym_raw_string_literal] = ACTIONS(1271), [sym_float_literal] = ACTIONS(1271), [sym_block_comment] = ACTIONS(3), }, [329] = { [ts_builtin_sym_end] = ACTIONS(1275), [sym_identifier] = ACTIONS(1277), [anon_sym_SEMI] = ACTIONS(1275), [anon_sym_u8] = ACTIONS(1277), [anon_sym_i8] = ACTIONS(1277), [anon_sym_u16] = ACTIONS(1277), [anon_sym_i16] = ACTIONS(1277), [anon_sym_u32] = ACTIONS(1277), [anon_sym_i32] = ACTIONS(1277), [anon_sym_u64] = ACTIONS(1277), [anon_sym_i64] = ACTIONS(1277), [anon_sym_u128] = ACTIONS(1277), [anon_sym_i128] = ACTIONS(1277), [anon_sym_u256] = ACTIONS(1277), [anon_sym_i256] = ACTIONS(1277), [anon_sym_b256] = ACTIONS(1277), [anon_sym_isize] = ACTIONS(1277), [anon_sym_usize] = ACTIONS(1277), [anon_sym_f32] = ACTIONS(1277), [anon_sym_f64] = ACTIONS(1277), [anon_sym_bool] = ACTIONS(1277), [anon_sym_char] = ACTIONS(1277), [anon_sym_str] = ACTIONS(1277), [anon_sym_LBRACK] = ACTIONS(1275), [anon_sym_contract] = ACTIONS(1277), [anon_sym_script] = ACTIONS(1277), [anon_sym_predicate] = ACTIONS(1277), [anon_sym_library] = ACTIONS(1277), [anon_sym_SQUOTE] = ACTIONS(1277), [anon_sym_abi] = ACTIONS(1277), [anon_sym_break] = ACTIONS(1277), [anon_sym_configurable] = ACTIONS(1277), [anon_sym_const] = ACTIONS(1277), [anon_sym_continue] = ACTIONS(1277), [anon_sym_default] = ACTIONS(1277), [anon_sym_mod] = ACTIONS(1277), [anon_sym_enum] = ACTIONS(1277), [anon_sym_fn] = ACTIONS(1277), [anon_sym_for] = ACTIONS(1277), [anon_sym_if] = ACTIONS(1277), [anon_sym_impl] = ACTIONS(1277), [anon_sym_let] = ACTIONS(1277), [anon_sym_match] = ACTIONS(1277), [anon_sym_pub] = ACTIONS(1277), [anon_sym_return] = ACTIONS(1277), [anon_sym_storage] = ACTIONS(1277), [anon_sym_struct] = ACTIONS(1277), [anon_sym_trait] = ACTIONS(1277), [anon_sym_type] = ACTIONS(1277), [anon_sym_use] = ACTIONS(1277), [anon_sym_while] = ACTIONS(1277), [anon_sym_POUND] = ACTIONS(1275), [anon_sym_BANG] = ACTIONS(1275), [anon_sym_LBRACE] = ACTIONS(1275), [anon_sym_RBRACE] = ACTIONS(1275), [anon_sym_LPAREN] = ACTIONS(1275), [anon_sym_asm] = ACTIONS(1277), [anon_sym_LT] = ACTIONS(1275), [anon_sym_COLON_COLON] = ACTIONS(1275), [anon_sym_STAR] = ACTIONS(1275), [anon_sym_AMP] = ACTIONS(1275), [anon_sym_DOT_DOT] = ACTIONS(1275), [anon_sym_DASH] = ACTIONS(1275), [anon_sym_PIPE] = ACTIONS(1275), [anon_sym_yield] = ACTIONS(1277), [anon_sym_move] = ACTIONS(1277), [sym_integer_literal] = ACTIONS(1275), [aux_sym_string_literal_token1] = ACTIONS(1275), [sym_char_literal] = ACTIONS(1275), [anon_sym_true] = ACTIONS(1277), [anon_sym_false] = ACTIONS(1277), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1277), [sym_metavariable] = ACTIONS(1275), [sym_raw_string_literal] = ACTIONS(1275), [sym_float_literal] = ACTIONS(1275), [sym_block_comment] = ACTIONS(3), }, [330] = { [ts_builtin_sym_end] = ACTIONS(1279), [sym_identifier] = ACTIONS(1281), [anon_sym_SEMI] = ACTIONS(1279), [anon_sym_u8] = ACTIONS(1281), [anon_sym_i8] = ACTIONS(1281), [anon_sym_u16] = ACTIONS(1281), [anon_sym_i16] = ACTIONS(1281), [anon_sym_u32] = ACTIONS(1281), [anon_sym_i32] = ACTIONS(1281), [anon_sym_u64] = ACTIONS(1281), [anon_sym_i64] = ACTIONS(1281), [anon_sym_u128] = ACTIONS(1281), [anon_sym_i128] = ACTIONS(1281), [anon_sym_u256] = ACTIONS(1281), [anon_sym_i256] = ACTIONS(1281), [anon_sym_b256] = ACTIONS(1281), [anon_sym_isize] = ACTIONS(1281), [anon_sym_usize] = ACTIONS(1281), [anon_sym_f32] = ACTIONS(1281), [anon_sym_f64] = ACTIONS(1281), [anon_sym_bool] = ACTIONS(1281), [anon_sym_char] = ACTIONS(1281), [anon_sym_str] = ACTIONS(1281), [anon_sym_LBRACK] = ACTIONS(1279), [anon_sym_contract] = ACTIONS(1281), [anon_sym_script] = ACTIONS(1281), [anon_sym_predicate] = ACTIONS(1281), [anon_sym_library] = ACTIONS(1281), [anon_sym_SQUOTE] = ACTIONS(1281), [anon_sym_abi] = ACTIONS(1281), [anon_sym_break] = ACTIONS(1281), [anon_sym_configurable] = ACTIONS(1281), [anon_sym_const] = ACTIONS(1281), [anon_sym_continue] = ACTIONS(1281), [anon_sym_default] = ACTIONS(1281), [anon_sym_mod] = ACTIONS(1281), [anon_sym_enum] = ACTIONS(1281), [anon_sym_fn] = ACTIONS(1281), [anon_sym_for] = ACTIONS(1281), [anon_sym_if] = ACTIONS(1281), [anon_sym_impl] = ACTIONS(1281), [anon_sym_let] = ACTIONS(1281), [anon_sym_match] = ACTIONS(1281), [anon_sym_pub] = ACTIONS(1281), [anon_sym_return] = ACTIONS(1281), [anon_sym_storage] = ACTIONS(1281), [anon_sym_struct] = ACTIONS(1281), [anon_sym_trait] = ACTIONS(1281), [anon_sym_type] = ACTIONS(1281), [anon_sym_use] = ACTIONS(1281), [anon_sym_while] = ACTIONS(1281), [anon_sym_POUND] = ACTIONS(1279), [anon_sym_BANG] = ACTIONS(1279), [anon_sym_LBRACE] = ACTIONS(1279), [anon_sym_RBRACE] = ACTIONS(1279), [anon_sym_LPAREN] = ACTIONS(1279), [anon_sym_asm] = ACTIONS(1281), [anon_sym_LT] = ACTIONS(1279), [anon_sym_COLON_COLON] = ACTIONS(1279), [anon_sym_STAR] = ACTIONS(1279), [anon_sym_AMP] = ACTIONS(1279), [anon_sym_DOT_DOT] = ACTIONS(1279), [anon_sym_DASH] = ACTIONS(1279), [anon_sym_PIPE] = ACTIONS(1279), [anon_sym_yield] = ACTIONS(1281), [anon_sym_move] = ACTIONS(1281), [sym_integer_literal] = ACTIONS(1279), [aux_sym_string_literal_token1] = ACTIONS(1279), [sym_char_literal] = ACTIONS(1279), [anon_sym_true] = ACTIONS(1281), [anon_sym_false] = ACTIONS(1281), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1281), [sym_metavariable] = ACTIONS(1279), [sym_raw_string_literal] = ACTIONS(1279), [sym_float_literal] = ACTIONS(1279), [sym_block_comment] = ACTIONS(3), }, [331] = { [ts_builtin_sym_end] = ACTIONS(1283), [sym_identifier] = ACTIONS(1285), [anon_sym_SEMI] = ACTIONS(1283), [anon_sym_u8] = ACTIONS(1285), [anon_sym_i8] = ACTIONS(1285), [anon_sym_u16] = ACTIONS(1285), [anon_sym_i16] = ACTIONS(1285), [anon_sym_u32] = ACTIONS(1285), [anon_sym_i32] = ACTIONS(1285), [anon_sym_u64] = ACTIONS(1285), [anon_sym_i64] = ACTIONS(1285), [anon_sym_u128] = ACTIONS(1285), [anon_sym_i128] = ACTIONS(1285), [anon_sym_u256] = ACTIONS(1285), [anon_sym_i256] = ACTIONS(1285), [anon_sym_b256] = ACTIONS(1285), [anon_sym_isize] = ACTIONS(1285), [anon_sym_usize] = ACTIONS(1285), [anon_sym_f32] = ACTIONS(1285), [anon_sym_f64] = ACTIONS(1285), [anon_sym_bool] = ACTIONS(1285), [anon_sym_char] = ACTIONS(1285), [anon_sym_str] = ACTIONS(1285), [anon_sym_LBRACK] = ACTIONS(1283), [anon_sym_contract] = ACTIONS(1285), [anon_sym_script] = ACTIONS(1285), [anon_sym_predicate] = ACTIONS(1285), [anon_sym_library] = ACTIONS(1285), [anon_sym_SQUOTE] = ACTIONS(1285), [anon_sym_abi] = ACTIONS(1285), [anon_sym_break] = ACTIONS(1285), [anon_sym_configurable] = ACTIONS(1285), [anon_sym_const] = ACTIONS(1285), [anon_sym_continue] = ACTIONS(1285), [anon_sym_default] = ACTIONS(1285), [anon_sym_mod] = ACTIONS(1285), [anon_sym_enum] = ACTIONS(1285), [anon_sym_fn] = ACTIONS(1285), [anon_sym_for] = ACTIONS(1285), [anon_sym_if] = ACTIONS(1285), [anon_sym_impl] = ACTIONS(1285), [anon_sym_let] = ACTIONS(1285), [anon_sym_match] = ACTIONS(1285), [anon_sym_pub] = ACTIONS(1285), [anon_sym_return] = ACTIONS(1285), [anon_sym_storage] = ACTIONS(1285), [anon_sym_struct] = ACTIONS(1285), [anon_sym_trait] = ACTIONS(1285), [anon_sym_type] = ACTIONS(1285), [anon_sym_use] = ACTIONS(1285), [anon_sym_while] = ACTIONS(1285), [anon_sym_POUND] = ACTIONS(1283), [anon_sym_BANG] = ACTIONS(1283), [anon_sym_LBRACE] = ACTIONS(1283), [anon_sym_RBRACE] = ACTIONS(1283), [anon_sym_LPAREN] = ACTIONS(1283), [anon_sym_asm] = ACTIONS(1285), [anon_sym_LT] = ACTIONS(1283), [anon_sym_COLON_COLON] = ACTIONS(1283), [anon_sym_STAR] = ACTIONS(1283), [anon_sym_AMP] = ACTIONS(1283), [anon_sym_DOT_DOT] = ACTIONS(1283), [anon_sym_DASH] = ACTIONS(1283), [anon_sym_PIPE] = ACTIONS(1283), [anon_sym_yield] = ACTIONS(1285), [anon_sym_move] = ACTIONS(1285), [sym_integer_literal] = ACTIONS(1283), [aux_sym_string_literal_token1] = ACTIONS(1283), [sym_char_literal] = ACTIONS(1283), [anon_sym_true] = ACTIONS(1285), [anon_sym_false] = ACTIONS(1285), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1285), [sym_metavariable] = ACTIONS(1283), [sym_raw_string_literal] = ACTIONS(1283), [sym_float_literal] = ACTIONS(1283), [sym_block_comment] = ACTIONS(3), }, [332] = { [ts_builtin_sym_end] = ACTIONS(1287), [sym_identifier] = ACTIONS(1289), [anon_sym_SEMI] = ACTIONS(1287), [anon_sym_u8] = ACTIONS(1289), [anon_sym_i8] = ACTIONS(1289), [anon_sym_u16] = ACTIONS(1289), [anon_sym_i16] = ACTIONS(1289), [anon_sym_u32] = ACTIONS(1289), [anon_sym_i32] = ACTIONS(1289), [anon_sym_u64] = ACTIONS(1289), [anon_sym_i64] = ACTIONS(1289), [anon_sym_u128] = ACTIONS(1289), [anon_sym_i128] = ACTIONS(1289), [anon_sym_u256] = ACTIONS(1289), [anon_sym_i256] = ACTIONS(1289), [anon_sym_b256] = ACTIONS(1289), [anon_sym_isize] = ACTIONS(1289), [anon_sym_usize] = ACTIONS(1289), [anon_sym_f32] = ACTIONS(1289), [anon_sym_f64] = ACTIONS(1289), [anon_sym_bool] = ACTIONS(1289), [anon_sym_char] = ACTIONS(1289), [anon_sym_str] = ACTIONS(1289), [anon_sym_LBRACK] = ACTIONS(1287), [anon_sym_contract] = ACTIONS(1289), [anon_sym_script] = ACTIONS(1289), [anon_sym_predicate] = ACTIONS(1289), [anon_sym_library] = ACTIONS(1289), [anon_sym_SQUOTE] = ACTIONS(1289), [anon_sym_abi] = ACTIONS(1289), [anon_sym_break] = ACTIONS(1289), [anon_sym_configurable] = ACTIONS(1289), [anon_sym_const] = ACTIONS(1289), [anon_sym_continue] = ACTIONS(1289), [anon_sym_default] = ACTIONS(1289), [anon_sym_mod] = ACTIONS(1289), [anon_sym_enum] = ACTIONS(1289), [anon_sym_fn] = ACTIONS(1289), [anon_sym_for] = ACTIONS(1289), [anon_sym_if] = ACTIONS(1289), [anon_sym_impl] = ACTIONS(1289), [anon_sym_let] = ACTIONS(1289), [anon_sym_match] = ACTIONS(1289), [anon_sym_pub] = ACTIONS(1289), [anon_sym_return] = ACTIONS(1289), [anon_sym_storage] = ACTIONS(1289), [anon_sym_struct] = ACTIONS(1289), [anon_sym_trait] = ACTIONS(1289), [anon_sym_type] = ACTIONS(1289), [anon_sym_use] = ACTIONS(1289), [anon_sym_while] = ACTIONS(1289), [anon_sym_POUND] = ACTIONS(1287), [anon_sym_BANG] = ACTIONS(1287), [anon_sym_LBRACE] = ACTIONS(1287), [anon_sym_RBRACE] = ACTIONS(1287), [anon_sym_LPAREN] = ACTIONS(1287), [anon_sym_asm] = ACTIONS(1289), [anon_sym_LT] = ACTIONS(1287), [anon_sym_COLON_COLON] = ACTIONS(1287), [anon_sym_STAR] = ACTIONS(1287), [anon_sym_AMP] = ACTIONS(1287), [anon_sym_DOT_DOT] = ACTIONS(1287), [anon_sym_DASH] = ACTIONS(1287), [anon_sym_PIPE] = ACTIONS(1287), [anon_sym_yield] = ACTIONS(1289), [anon_sym_move] = ACTIONS(1289), [sym_integer_literal] = ACTIONS(1287), [aux_sym_string_literal_token1] = ACTIONS(1287), [sym_char_literal] = ACTIONS(1287), [anon_sym_true] = ACTIONS(1289), [anon_sym_false] = ACTIONS(1289), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1289), [sym_metavariable] = ACTIONS(1287), [sym_raw_string_literal] = ACTIONS(1287), [sym_float_literal] = ACTIONS(1287), [sym_block_comment] = ACTIONS(3), }, [333] = { [ts_builtin_sym_end] = ACTIONS(1291), [sym_identifier] = ACTIONS(1293), [anon_sym_SEMI] = ACTIONS(1291), [anon_sym_u8] = ACTIONS(1293), [anon_sym_i8] = ACTIONS(1293), [anon_sym_u16] = ACTIONS(1293), [anon_sym_i16] = ACTIONS(1293), [anon_sym_u32] = ACTIONS(1293), [anon_sym_i32] = ACTIONS(1293), [anon_sym_u64] = ACTIONS(1293), [anon_sym_i64] = ACTIONS(1293), [anon_sym_u128] = ACTIONS(1293), [anon_sym_i128] = ACTIONS(1293), [anon_sym_u256] = ACTIONS(1293), [anon_sym_i256] = ACTIONS(1293), [anon_sym_b256] = ACTIONS(1293), [anon_sym_isize] = ACTIONS(1293), [anon_sym_usize] = ACTIONS(1293), [anon_sym_f32] = ACTIONS(1293), [anon_sym_f64] = ACTIONS(1293), [anon_sym_bool] = ACTIONS(1293), [anon_sym_char] = ACTIONS(1293), [anon_sym_str] = ACTIONS(1293), [anon_sym_LBRACK] = ACTIONS(1291), [anon_sym_contract] = ACTIONS(1293), [anon_sym_script] = ACTIONS(1293), [anon_sym_predicate] = ACTIONS(1293), [anon_sym_library] = ACTIONS(1293), [anon_sym_SQUOTE] = ACTIONS(1293), [anon_sym_abi] = ACTIONS(1293), [anon_sym_break] = ACTIONS(1293), [anon_sym_configurable] = ACTIONS(1293), [anon_sym_const] = ACTIONS(1293), [anon_sym_continue] = ACTIONS(1293), [anon_sym_default] = ACTIONS(1293), [anon_sym_mod] = ACTIONS(1293), [anon_sym_enum] = ACTIONS(1293), [anon_sym_fn] = ACTIONS(1293), [anon_sym_for] = ACTIONS(1293), [anon_sym_if] = ACTIONS(1293), [anon_sym_impl] = ACTIONS(1293), [anon_sym_let] = ACTIONS(1293), [anon_sym_match] = ACTIONS(1293), [anon_sym_pub] = ACTIONS(1293), [anon_sym_return] = ACTIONS(1293), [anon_sym_storage] = ACTIONS(1293), [anon_sym_struct] = ACTIONS(1293), [anon_sym_trait] = ACTIONS(1293), [anon_sym_type] = ACTIONS(1293), [anon_sym_use] = ACTIONS(1293), [anon_sym_while] = ACTIONS(1293), [anon_sym_POUND] = ACTIONS(1291), [anon_sym_BANG] = ACTIONS(1291), [anon_sym_LBRACE] = ACTIONS(1291), [anon_sym_RBRACE] = ACTIONS(1291), [anon_sym_LPAREN] = ACTIONS(1291), [anon_sym_asm] = ACTIONS(1293), [anon_sym_LT] = ACTIONS(1291), [anon_sym_COLON_COLON] = ACTIONS(1291), [anon_sym_STAR] = ACTIONS(1291), [anon_sym_AMP] = ACTIONS(1291), [anon_sym_DOT_DOT] = ACTIONS(1291), [anon_sym_DASH] = ACTIONS(1291), [anon_sym_PIPE] = ACTIONS(1291), [anon_sym_yield] = ACTIONS(1293), [anon_sym_move] = ACTIONS(1293), [sym_integer_literal] = ACTIONS(1291), [aux_sym_string_literal_token1] = ACTIONS(1291), [sym_char_literal] = ACTIONS(1291), [anon_sym_true] = ACTIONS(1293), [anon_sym_false] = ACTIONS(1293), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1293), [sym_metavariable] = ACTIONS(1291), [sym_raw_string_literal] = ACTIONS(1291), [sym_float_literal] = ACTIONS(1291), [sym_block_comment] = ACTIONS(3), }, [334] = { [ts_builtin_sym_end] = ACTIONS(1295), [sym_identifier] = ACTIONS(1297), [anon_sym_SEMI] = ACTIONS(1295), [anon_sym_u8] = ACTIONS(1297), [anon_sym_i8] = ACTIONS(1297), [anon_sym_u16] = ACTIONS(1297), [anon_sym_i16] = ACTIONS(1297), [anon_sym_u32] = ACTIONS(1297), [anon_sym_i32] = ACTIONS(1297), [anon_sym_u64] = ACTIONS(1297), [anon_sym_i64] = ACTIONS(1297), [anon_sym_u128] = ACTIONS(1297), [anon_sym_i128] = ACTIONS(1297), [anon_sym_u256] = ACTIONS(1297), [anon_sym_i256] = ACTIONS(1297), [anon_sym_b256] = ACTIONS(1297), [anon_sym_isize] = ACTIONS(1297), [anon_sym_usize] = ACTIONS(1297), [anon_sym_f32] = ACTIONS(1297), [anon_sym_f64] = ACTIONS(1297), [anon_sym_bool] = ACTIONS(1297), [anon_sym_char] = ACTIONS(1297), [anon_sym_str] = ACTIONS(1297), [anon_sym_LBRACK] = ACTIONS(1295), [anon_sym_contract] = ACTIONS(1297), [anon_sym_script] = ACTIONS(1297), [anon_sym_predicate] = ACTIONS(1297), [anon_sym_library] = ACTIONS(1297), [anon_sym_SQUOTE] = ACTIONS(1297), [anon_sym_abi] = ACTIONS(1297), [anon_sym_break] = ACTIONS(1297), [anon_sym_configurable] = ACTIONS(1297), [anon_sym_const] = ACTIONS(1297), [anon_sym_continue] = ACTIONS(1297), [anon_sym_default] = ACTIONS(1297), [anon_sym_mod] = ACTIONS(1297), [anon_sym_enum] = ACTIONS(1297), [anon_sym_fn] = ACTIONS(1297), [anon_sym_for] = ACTIONS(1297), [anon_sym_if] = ACTIONS(1297), [anon_sym_impl] = ACTIONS(1297), [anon_sym_let] = ACTIONS(1297), [anon_sym_match] = ACTIONS(1297), [anon_sym_pub] = ACTIONS(1297), [anon_sym_return] = ACTIONS(1297), [anon_sym_storage] = ACTIONS(1297), [anon_sym_struct] = ACTIONS(1297), [anon_sym_trait] = ACTIONS(1297), [anon_sym_type] = ACTIONS(1297), [anon_sym_use] = ACTIONS(1297), [anon_sym_while] = ACTIONS(1297), [anon_sym_POUND] = ACTIONS(1295), [anon_sym_BANG] = ACTIONS(1295), [anon_sym_LBRACE] = ACTIONS(1295), [anon_sym_RBRACE] = ACTIONS(1295), [anon_sym_LPAREN] = ACTIONS(1295), [anon_sym_asm] = ACTIONS(1297), [anon_sym_LT] = ACTIONS(1295), [anon_sym_COLON_COLON] = ACTIONS(1295), [anon_sym_STAR] = ACTIONS(1295), [anon_sym_AMP] = ACTIONS(1295), [anon_sym_DOT_DOT] = ACTIONS(1295), [anon_sym_DASH] = ACTIONS(1295), [anon_sym_PIPE] = ACTIONS(1295), [anon_sym_yield] = ACTIONS(1297), [anon_sym_move] = ACTIONS(1297), [sym_integer_literal] = ACTIONS(1295), [aux_sym_string_literal_token1] = ACTIONS(1295), [sym_char_literal] = ACTIONS(1295), [anon_sym_true] = ACTIONS(1297), [anon_sym_false] = ACTIONS(1297), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1297), [sym_metavariable] = ACTIONS(1295), [sym_raw_string_literal] = ACTIONS(1295), [sym_float_literal] = ACTIONS(1295), [sym_block_comment] = ACTIONS(3), }, [335] = { [ts_builtin_sym_end] = ACTIONS(1299), [sym_identifier] = ACTIONS(1301), [anon_sym_SEMI] = ACTIONS(1299), [anon_sym_u8] = ACTIONS(1301), [anon_sym_i8] = ACTIONS(1301), [anon_sym_u16] = ACTIONS(1301), [anon_sym_i16] = ACTIONS(1301), [anon_sym_u32] = ACTIONS(1301), [anon_sym_i32] = ACTIONS(1301), [anon_sym_u64] = ACTIONS(1301), [anon_sym_i64] = ACTIONS(1301), [anon_sym_u128] = ACTIONS(1301), [anon_sym_i128] = ACTIONS(1301), [anon_sym_u256] = ACTIONS(1301), [anon_sym_i256] = ACTIONS(1301), [anon_sym_b256] = ACTIONS(1301), [anon_sym_isize] = ACTIONS(1301), [anon_sym_usize] = ACTIONS(1301), [anon_sym_f32] = ACTIONS(1301), [anon_sym_f64] = ACTIONS(1301), [anon_sym_bool] = ACTIONS(1301), [anon_sym_char] = ACTIONS(1301), [anon_sym_str] = ACTIONS(1301), [anon_sym_LBRACK] = ACTIONS(1299), [anon_sym_contract] = ACTIONS(1301), [anon_sym_script] = ACTIONS(1301), [anon_sym_predicate] = ACTIONS(1301), [anon_sym_library] = ACTIONS(1301), [anon_sym_SQUOTE] = ACTIONS(1301), [anon_sym_abi] = ACTIONS(1301), [anon_sym_break] = ACTIONS(1301), [anon_sym_configurable] = ACTIONS(1301), [anon_sym_const] = ACTIONS(1301), [anon_sym_continue] = ACTIONS(1301), [anon_sym_default] = ACTIONS(1301), [anon_sym_mod] = ACTIONS(1301), [anon_sym_enum] = ACTIONS(1301), [anon_sym_fn] = ACTIONS(1301), [anon_sym_for] = ACTIONS(1301), [anon_sym_if] = ACTIONS(1301), [anon_sym_impl] = ACTIONS(1301), [anon_sym_let] = ACTIONS(1301), [anon_sym_match] = ACTIONS(1301), [anon_sym_pub] = ACTIONS(1301), [anon_sym_return] = ACTIONS(1301), [anon_sym_storage] = ACTIONS(1301), [anon_sym_struct] = ACTIONS(1301), [anon_sym_trait] = ACTIONS(1301), [anon_sym_type] = ACTIONS(1301), [anon_sym_use] = ACTIONS(1301), [anon_sym_while] = ACTIONS(1301), [anon_sym_POUND] = ACTIONS(1299), [anon_sym_BANG] = ACTIONS(1299), [anon_sym_LBRACE] = ACTIONS(1299), [anon_sym_RBRACE] = ACTIONS(1299), [anon_sym_LPAREN] = ACTIONS(1299), [anon_sym_asm] = ACTIONS(1301), [anon_sym_LT] = ACTIONS(1299), [anon_sym_COLON_COLON] = ACTIONS(1299), [anon_sym_STAR] = ACTIONS(1299), [anon_sym_AMP] = ACTIONS(1299), [anon_sym_DOT_DOT] = ACTIONS(1299), [anon_sym_DASH] = ACTIONS(1299), [anon_sym_PIPE] = ACTIONS(1299), [anon_sym_yield] = ACTIONS(1301), [anon_sym_move] = ACTIONS(1301), [sym_integer_literal] = ACTIONS(1299), [aux_sym_string_literal_token1] = ACTIONS(1299), [sym_char_literal] = ACTIONS(1299), [anon_sym_true] = ACTIONS(1301), [anon_sym_false] = ACTIONS(1301), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1301), [sym_metavariable] = ACTIONS(1299), [sym_raw_string_literal] = ACTIONS(1299), [sym_float_literal] = ACTIONS(1299), [sym_block_comment] = ACTIONS(3), }, [336] = { [ts_builtin_sym_end] = ACTIONS(1303), [sym_identifier] = ACTIONS(1305), [anon_sym_SEMI] = ACTIONS(1303), [anon_sym_u8] = ACTIONS(1305), [anon_sym_i8] = ACTIONS(1305), [anon_sym_u16] = ACTIONS(1305), [anon_sym_i16] = ACTIONS(1305), [anon_sym_u32] = ACTIONS(1305), [anon_sym_i32] = ACTIONS(1305), [anon_sym_u64] = ACTIONS(1305), [anon_sym_i64] = ACTIONS(1305), [anon_sym_u128] = ACTIONS(1305), [anon_sym_i128] = ACTIONS(1305), [anon_sym_u256] = ACTIONS(1305), [anon_sym_i256] = ACTIONS(1305), [anon_sym_b256] = ACTIONS(1305), [anon_sym_isize] = ACTIONS(1305), [anon_sym_usize] = ACTIONS(1305), [anon_sym_f32] = ACTIONS(1305), [anon_sym_f64] = ACTIONS(1305), [anon_sym_bool] = ACTIONS(1305), [anon_sym_char] = ACTIONS(1305), [anon_sym_str] = ACTIONS(1305), [anon_sym_LBRACK] = ACTIONS(1303), [anon_sym_contract] = ACTIONS(1305), [anon_sym_script] = ACTIONS(1305), [anon_sym_predicate] = ACTIONS(1305), [anon_sym_library] = ACTIONS(1305), [anon_sym_SQUOTE] = ACTIONS(1305), [anon_sym_abi] = ACTIONS(1305), [anon_sym_break] = ACTIONS(1305), [anon_sym_configurable] = ACTIONS(1305), [anon_sym_const] = ACTIONS(1305), [anon_sym_continue] = ACTIONS(1305), [anon_sym_default] = ACTIONS(1305), [anon_sym_mod] = ACTIONS(1305), [anon_sym_enum] = ACTIONS(1305), [anon_sym_fn] = ACTIONS(1305), [anon_sym_for] = ACTIONS(1305), [anon_sym_if] = ACTIONS(1305), [anon_sym_impl] = ACTIONS(1305), [anon_sym_let] = ACTIONS(1305), [anon_sym_match] = ACTIONS(1305), [anon_sym_pub] = ACTIONS(1305), [anon_sym_return] = ACTIONS(1305), [anon_sym_storage] = ACTIONS(1305), [anon_sym_struct] = ACTIONS(1305), [anon_sym_trait] = ACTIONS(1305), [anon_sym_type] = ACTIONS(1305), [anon_sym_use] = ACTIONS(1305), [anon_sym_while] = ACTIONS(1305), [anon_sym_POUND] = ACTIONS(1303), [anon_sym_BANG] = ACTIONS(1303), [anon_sym_LBRACE] = ACTIONS(1303), [anon_sym_RBRACE] = ACTIONS(1303), [anon_sym_LPAREN] = ACTIONS(1303), [anon_sym_asm] = ACTIONS(1305), [anon_sym_LT] = ACTIONS(1303), [anon_sym_COLON_COLON] = ACTIONS(1303), [anon_sym_STAR] = ACTIONS(1303), [anon_sym_AMP] = ACTIONS(1303), [anon_sym_DOT_DOT] = ACTIONS(1303), [anon_sym_DASH] = ACTIONS(1303), [anon_sym_PIPE] = ACTIONS(1303), [anon_sym_yield] = ACTIONS(1305), [anon_sym_move] = ACTIONS(1305), [sym_integer_literal] = ACTIONS(1303), [aux_sym_string_literal_token1] = ACTIONS(1303), [sym_char_literal] = ACTIONS(1303), [anon_sym_true] = ACTIONS(1305), [anon_sym_false] = ACTIONS(1305), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1305), [sym_metavariable] = ACTIONS(1303), [sym_raw_string_literal] = ACTIONS(1303), [sym_float_literal] = ACTIONS(1303), [sym_block_comment] = ACTIONS(3), }, [337] = { [ts_builtin_sym_end] = ACTIONS(1307), [sym_identifier] = ACTIONS(1309), [anon_sym_SEMI] = ACTIONS(1307), [anon_sym_u8] = ACTIONS(1309), [anon_sym_i8] = ACTIONS(1309), [anon_sym_u16] = ACTIONS(1309), [anon_sym_i16] = ACTIONS(1309), [anon_sym_u32] = ACTIONS(1309), [anon_sym_i32] = ACTIONS(1309), [anon_sym_u64] = ACTIONS(1309), [anon_sym_i64] = ACTIONS(1309), [anon_sym_u128] = ACTIONS(1309), [anon_sym_i128] = ACTIONS(1309), [anon_sym_u256] = ACTIONS(1309), [anon_sym_i256] = ACTIONS(1309), [anon_sym_b256] = ACTIONS(1309), [anon_sym_isize] = ACTIONS(1309), [anon_sym_usize] = ACTIONS(1309), [anon_sym_f32] = ACTIONS(1309), [anon_sym_f64] = ACTIONS(1309), [anon_sym_bool] = ACTIONS(1309), [anon_sym_char] = ACTIONS(1309), [anon_sym_str] = ACTIONS(1309), [anon_sym_LBRACK] = ACTIONS(1307), [anon_sym_contract] = ACTIONS(1309), [anon_sym_script] = ACTIONS(1309), [anon_sym_predicate] = ACTIONS(1309), [anon_sym_library] = ACTIONS(1309), [anon_sym_SQUOTE] = ACTIONS(1309), [anon_sym_abi] = ACTIONS(1309), [anon_sym_break] = ACTIONS(1309), [anon_sym_configurable] = ACTIONS(1309), [anon_sym_const] = ACTIONS(1309), [anon_sym_continue] = ACTIONS(1309), [anon_sym_default] = ACTIONS(1309), [anon_sym_mod] = ACTIONS(1309), [anon_sym_enum] = ACTIONS(1309), [anon_sym_fn] = ACTIONS(1309), [anon_sym_for] = ACTIONS(1309), [anon_sym_if] = ACTIONS(1309), [anon_sym_impl] = ACTIONS(1309), [anon_sym_let] = ACTIONS(1309), [anon_sym_match] = ACTIONS(1309), [anon_sym_pub] = ACTIONS(1309), [anon_sym_return] = ACTIONS(1309), [anon_sym_storage] = ACTIONS(1309), [anon_sym_struct] = ACTIONS(1309), [anon_sym_trait] = ACTIONS(1309), [anon_sym_type] = ACTIONS(1309), [anon_sym_use] = ACTIONS(1309), [anon_sym_while] = ACTIONS(1309), [anon_sym_POUND] = ACTIONS(1307), [anon_sym_BANG] = ACTIONS(1307), [anon_sym_LBRACE] = ACTIONS(1307), [anon_sym_RBRACE] = ACTIONS(1307), [anon_sym_LPAREN] = ACTIONS(1307), [anon_sym_asm] = ACTIONS(1309), [anon_sym_LT] = ACTIONS(1307), [anon_sym_COLON_COLON] = ACTIONS(1307), [anon_sym_STAR] = ACTIONS(1307), [anon_sym_AMP] = ACTIONS(1307), [anon_sym_DOT_DOT] = ACTIONS(1307), [anon_sym_DASH] = ACTIONS(1307), [anon_sym_PIPE] = ACTIONS(1307), [anon_sym_yield] = ACTIONS(1309), [anon_sym_move] = ACTIONS(1309), [sym_integer_literal] = ACTIONS(1307), [aux_sym_string_literal_token1] = ACTIONS(1307), [sym_char_literal] = ACTIONS(1307), [anon_sym_true] = ACTIONS(1309), [anon_sym_false] = ACTIONS(1309), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1309), [sym_metavariable] = ACTIONS(1307), [sym_raw_string_literal] = ACTIONS(1307), [sym_float_literal] = ACTIONS(1307), [sym_block_comment] = ACTIONS(3), }, [338] = { [ts_builtin_sym_end] = ACTIONS(1311), [sym_identifier] = ACTIONS(1313), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_u8] = ACTIONS(1313), [anon_sym_i8] = ACTIONS(1313), [anon_sym_u16] = ACTIONS(1313), [anon_sym_i16] = ACTIONS(1313), [anon_sym_u32] = ACTIONS(1313), [anon_sym_i32] = ACTIONS(1313), [anon_sym_u64] = ACTIONS(1313), [anon_sym_i64] = ACTIONS(1313), [anon_sym_u128] = ACTIONS(1313), [anon_sym_i128] = ACTIONS(1313), [anon_sym_u256] = ACTIONS(1313), [anon_sym_i256] = ACTIONS(1313), [anon_sym_b256] = ACTIONS(1313), [anon_sym_isize] = ACTIONS(1313), [anon_sym_usize] = ACTIONS(1313), [anon_sym_f32] = ACTIONS(1313), [anon_sym_f64] = ACTIONS(1313), [anon_sym_bool] = ACTIONS(1313), [anon_sym_char] = ACTIONS(1313), [anon_sym_str] = ACTIONS(1313), [anon_sym_LBRACK] = ACTIONS(1311), [anon_sym_contract] = ACTIONS(1313), [anon_sym_script] = ACTIONS(1313), [anon_sym_predicate] = ACTIONS(1313), [anon_sym_library] = ACTIONS(1313), [anon_sym_SQUOTE] = ACTIONS(1313), [anon_sym_abi] = ACTIONS(1313), [anon_sym_break] = ACTIONS(1313), [anon_sym_configurable] = ACTIONS(1313), [anon_sym_const] = ACTIONS(1313), [anon_sym_continue] = ACTIONS(1313), [anon_sym_default] = ACTIONS(1313), [anon_sym_mod] = ACTIONS(1313), [anon_sym_enum] = ACTIONS(1313), [anon_sym_fn] = ACTIONS(1313), [anon_sym_for] = ACTIONS(1313), [anon_sym_if] = ACTIONS(1313), [anon_sym_impl] = ACTIONS(1313), [anon_sym_let] = ACTIONS(1313), [anon_sym_match] = ACTIONS(1313), [anon_sym_pub] = ACTIONS(1313), [anon_sym_return] = ACTIONS(1313), [anon_sym_storage] = ACTIONS(1313), [anon_sym_struct] = ACTIONS(1313), [anon_sym_trait] = ACTIONS(1313), [anon_sym_type] = ACTIONS(1313), [anon_sym_use] = ACTIONS(1313), [anon_sym_while] = ACTIONS(1313), [anon_sym_POUND] = ACTIONS(1311), [anon_sym_BANG] = ACTIONS(1311), [anon_sym_LBRACE] = ACTIONS(1311), [anon_sym_RBRACE] = ACTIONS(1311), [anon_sym_LPAREN] = ACTIONS(1311), [anon_sym_asm] = ACTIONS(1313), [anon_sym_LT] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(1311), [anon_sym_STAR] = ACTIONS(1311), [anon_sym_AMP] = ACTIONS(1311), [anon_sym_DOT_DOT] = ACTIONS(1311), [anon_sym_DASH] = ACTIONS(1311), [anon_sym_PIPE] = ACTIONS(1311), [anon_sym_yield] = ACTIONS(1313), [anon_sym_move] = ACTIONS(1313), [sym_integer_literal] = ACTIONS(1311), [aux_sym_string_literal_token1] = ACTIONS(1311), [sym_char_literal] = ACTIONS(1311), [anon_sym_true] = ACTIONS(1313), [anon_sym_false] = ACTIONS(1313), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1313), [sym_metavariable] = ACTIONS(1311), [sym_raw_string_literal] = ACTIONS(1311), [sym_float_literal] = ACTIONS(1311), [sym_block_comment] = ACTIONS(3), }, [339] = { [ts_builtin_sym_end] = ACTIONS(1315), [sym_identifier] = ACTIONS(1317), [anon_sym_SEMI] = ACTIONS(1315), [anon_sym_u8] = ACTIONS(1317), [anon_sym_i8] = ACTIONS(1317), [anon_sym_u16] = ACTIONS(1317), [anon_sym_i16] = ACTIONS(1317), [anon_sym_u32] = ACTIONS(1317), [anon_sym_i32] = ACTIONS(1317), [anon_sym_u64] = ACTIONS(1317), [anon_sym_i64] = ACTIONS(1317), [anon_sym_u128] = ACTIONS(1317), [anon_sym_i128] = ACTIONS(1317), [anon_sym_u256] = ACTIONS(1317), [anon_sym_i256] = ACTIONS(1317), [anon_sym_b256] = ACTIONS(1317), [anon_sym_isize] = ACTIONS(1317), [anon_sym_usize] = ACTIONS(1317), [anon_sym_f32] = ACTIONS(1317), [anon_sym_f64] = ACTIONS(1317), [anon_sym_bool] = ACTIONS(1317), [anon_sym_char] = ACTIONS(1317), [anon_sym_str] = ACTIONS(1317), [anon_sym_LBRACK] = ACTIONS(1315), [anon_sym_contract] = ACTIONS(1317), [anon_sym_script] = ACTIONS(1317), [anon_sym_predicate] = ACTIONS(1317), [anon_sym_library] = ACTIONS(1317), [anon_sym_SQUOTE] = ACTIONS(1317), [anon_sym_abi] = ACTIONS(1317), [anon_sym_break] = ACTIONS(1317), [anon_sym_configurable] = ACTIONS(1317), [anon_sym_const] = ACTIONS(1317), [anon_sym_continue] = ACTIONS(1317), [anon_sym_default] = ACTIONS(1317), [anon_sym_mod] = ACTIONS(1317), [anon_sym_enum] = ACTIONS(1317), [anon_sym_fn] = ACTIONS(1317), [anon_sym_for] = ACTIONS(1317), [anon_sym_if] = ACTIONS(1317), [anon_sym_impl] = ACTIONS(1317), [anon_sym_let] = ACTIONS(1317), [anon_sym_match] = ACTIONS(1317), [anon_sym_pub] = ACTIONS(1317), [anon_sym_return] = ACTIONS(1317), [anon_sym_storage] = ACTIONS(1317), [anon_sym_struct] = ACTIONS(1317), [anon_sym_trait] = ACTIONS(1317), [anon_sym_type] = ACTIONS(1317), [anon_sym_use] = ACTIONS(1317), [anon_sym_while] = ACTIONS(1317), [anon_sym_POUND] = ACTIONS(1315), [anon_sym_BANG] = ACTIONS(1315), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_RBRACE] = ACTIONS(1315), [anon_sym_LPAREN] = ACTIONS(1315), [anon_sym_asm] = ACTIONS(1317), [anon_sym_LT] = ACTIONS(1315), [anon_sym_COLON_COLON] = ACTIONS(1315), [anon_sym_STAR] = ACTIONS(1315), [anon_sym_AMP] = ACTIONS(1315), [anon_sym_DOT_DOT] = ACTIONS(1315), [anon_sym_DASH] = ACTIONS(1315), [anon_sym_PIPE] = ACTIONS(1315), [anon_sym_yield] = ACTIONS(1317), [anon_sym_move] = ACTIONS(1317), [sym_integer_literal] = ACTIONS(1315), [aux_sym_string_literal_token1] = ACTIONS(1315), [sym_char_literal] = ACTIONS(1315), [anon_sym_true] = ACTIONS(1317), [anon_sym_false] = ACTIONS(1317), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1317), [sym_metavariable] = ACTIONS(1315), [sym_raw_string_literal] = ACTIONS(1315), [sym_float_literal] = ACTIONS(1315), [sym_block_comment] = ACTIONS(3), }, [340] = { [ts_builtin_sym_end] = ACTIONS(1319), [sym_identifier] = ACTIONS(1321), [anon_sym_SEMI] = ACTIONS(1319), [anon_sym_u8] = ACTIONS(1321), [anon_sym_i8] = ACTIONS(1321), [anon_sym_u16] = ACTIONS(1321), [anon_sym_i16] = ACTIONS(1321), [anon_sym_u32] = ACTIONS(1321), [anon_sym_i32] = ACTIONS(1321), [anon_sym_u64] = ACTIONS(1321), [anon_sym_i64] = ACTIONS(1321), [anon_sym_u128] = ACTIONS(1321), [anon_sym_i128] = ACTIONS(1321), [anon_sym_u256] = ACTIONS(1321), [anon_sym_i256] = ACTIONS(1321), [anon_sym_b256] = ACTIONS(1321), [anon_sym_isize] = ACTIONS(1321), [anon_sym_usize] = ACTIONS(1321), [anon_sym_f32] = ACTIONS(1321), [anon_sym_f64] = ACTIONS(1321), [anon_sym_bool] = ACTIONS(1321), [anon_sym_char] = ACTIONS(1321), [anon_sym_str] = ACTIONS(1321), [anon_sym_LBRACK] = ACTIONS(1319), [anon_sym_contract] = ACTIONS(1321), [anon_sym_script] = ACTIONS(1321), [anon_sym_predicate] = ACTIONS(1321), [anon_sym_library] = ACTIONS(1321), [anon_sym_SQUOTE] = ACTIONS(1321), [anon_sym_abi] = ACTIONS(1321), [anon_sym_break] = ACTIONS(1321), [anon_sym_configurable] = ACTIONS(1321), [anon_sym_const] = ACTIONS(1321), [anon_sym_continue] = ACTIONS(1321), [anon_sym_default] = ACTIONS(1321), [anon_sym_mod] = ACTIONS(1321), [anon_sym_enum] = ACTIONS(1321), [anon_sym_fn] = ACTIONS(1321), [anon_sym_for] = ACTIONS(1321), [anon_sym_if] = ACTIONS(1321), [anon_sym_impl] = ACTIONS(1321), [anon_sym_let] = ACTIONS(1321), [anon_sym_match] = ACTIONS(1321), [anon_sym_pub] = ACTIONS(1321), [anon_sym_return] = ACTIONS(1321), [anon_sym_storage] = ACTIONS(1321), [anon_sym_struct] = ACTIONS(1321), [anon_sym_trait] = ACTIONS(1321), [anon_sym_type] = ACTIONS(1321), [anon_sym_use] = ACTIONS(1321), [anon_sym_while] = ACTIONS(1321), [anon_sym_POUND] = ACTIONS(1319), [anon_sym_BANG] = ACTIONS(1319), [anon_sym_LBRACE] = ACTIONS(1319), [anon_sym_RBRACE] = ACTIONS(1319), [anon_sym_LPAREN] = ACTIONS(1319), [anon_sym_asm] = ACTIONS(1321), [anon_sym_LT] = ACTIONS(1319), [anon_sym_COLON_COLON] = ACTIONS(1319), [anon_sym_STAR] = ACTIONS(1319), [anon_sym_AMP] = ACTIONS(1319), [anon_sym_DOT_DOT] = ACTIONS(1319), [anon_sym_DASH] = ACTIONS(1319), [anon_sym_PIPE] = ACTIONS(1319), [anon_sym_yield] = ACTIONS(1321), [anon_sym_move] = ACTIONS(1321), [sym_integer_literal] = ACTIONS(1319), [aux_sym_string_literal_token1] = ACTIONS(1319), [sym_char_literal] = ACTIONS(1319), [anon_sym_true] = ACTIONS(1321), [anon_sym_false] = ACTIONS(1321), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1321), [sym_metavariable] = ACTIONS(1319), [sym_raw_string_literal] = ACTIONS(1319), [sym_float_literal] = ACTIONS(1319), [sym_block_comment] = ACTIONS(3), }, [341] = { [ts_builtin_sym_end] = ACTIONS(1323), [sym_identifier] = ACTIONS(1325), [anon_sym_SEMI] = ACTIONS(1323), [anon_sym_u8] = ACTIONS(1325), [anon_sym_i8] = ACTIONS(1325), [anon_sym_u16] = ACTIONS(1325), [anon_sym_i16] = ACTIONS(1325), [anon_sym_u32] = ACTIONS(1325), [anon_sym_i32] = ACTIONS(1325), [anon_sym_u64] = ACTIONS(1325), [anon_sym_i64] = ACTIONS(1325), [anon_sym_u128] = ACTIONS(1325), [anon_sym_i128] = ACTIONS(1325), [anon_sym_u256] = ACTIONS(1325), [anon_sym_i256] = ACTIONS(1325), [anon_sym_b256] = ACTIONS(1325), [anon_sym_isize] = ACTIONS(1325), [anon_sym_usize] = ACTIONS(1325), [anon_sym_f32] = ACTIONS(1325), [anon_sym_f64] = ACTIONS(1325), [anon_sym_bool] = ACTIONS(1325), [anon_sym_char] = ACTIONS(1325), [anon_sym_str] = ACTIONS(1325), [anon_sym_LBRACK] = ACTIONS(1323), [anon_sym_contract] = ACTIONS(1325), [anon_sym_script] = ACTIONS(1325), [anon_sym_predicate] = ACTIONS(1325), [anon_sym_library] = ACTIONS(1325), [anon_sym_SQUOTE] = ACTIONS(1325), [anon_sym_abi] = ACTIONS(1325), [anon_sym_break] = ACTIONS(1325), [anon_sym_configurable] = ACTIONS(1325), [anon_sym_const] = ACTIONS(1325), [anon_sym_continue] = ACTIONS(1325), [anon_sym_default] = ACTIONS(1325), [anon_sym_mod] = ACTIONS(1325), [anon_sym_enum] = ACTIONS(1325), [anon_sym_fn] = ACTIONS(1325), [anon_sym_for] = ACTIONS(1325), [anon_sym_if] = ACTIONS(1325), [anon_sym_impl] = ACTIONS(1325), [anon_sym_let] = ACTIONS(1325), [anon_sym_match] = ACTIONS(1325), [anon_sym_pub] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1325), [anon_sym_storage] = ACTIONS(1325), [anon_sym_struct] = ACTIONS(1325), [anon_sym_trait] = ACTIONS(1325), [anon_sym_type] = ACTIONS(1325), [anon_sym_use] = ACTIONS(1325), [anon_sym_while] = ACTIONS(1325), [anon_sym_POUND] = ACTIONS(1323), [anon_sym_BANG] = ACTIONS(1323), [anon_sym_LBRACE] = ACTIONS(1323), [anon_sym_RBRACE] = ACTIONS(1323), [anon_sym_LPAREN] = ACTIONS(1323), [anon_sym_asm] = ACTIONS(1325), [anon_sym_LT] = ACTIONS(1323), [anon_sym_COLON_COLON] = ACTIONS(1323), [anon_sym_STAR] = ACTIONS(1323), [anon_sym_AMP] = ACTIONS(1323), [anon_sym_DOT_DOT] = ACTIONS(1323), [anon_sym_DASH] = ACTIONS(1323), [anon_sym_PIPE] = ACTIONS(1323), [anon_sym_yield] = ACTIONS(1325), [anon_sym_move] = ACTIONS(1325), [sym_integer_literal] = ACTIONS(1323), [aux_sym_string_literal_token1] = ACTIONS(1323), [sym_char_literal] = ACTIONS(1323), [anon_sym_true] = ACTIONS(1325), [anon_sym_false] = ACTIONS(1325), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1325), [sym_metavariable] = ACTIONS(1323), [sym_raw_string_literal] = ACTIONS(1323), [sym_float_literal] = ACTIONS(1323), [sym_block_comment] = ACTIONS(3), }, [342] = { [ts_builtin_sym_end] = ACTIONS(1327), [sym_identifier] = ACTIONS(1329), [anon_sym_SEMI] = ACTIONS(1327), [anon_sym_u8] = ACTIONS(1329), [anon_sym_i8] = ACTIONS(1329), [anon_sym_u16] = ACTIONS(1329), [anon_sym_i16] = ACTIONS(1329), [anon_sym_u32] = ACTIONS(1329), [anon_sym_i32] = ACTIONS(1329), [anon_sym_u64] = ACTIONS(1329), [anon_sym_i64] = ACTIONS(1329), [anon_sym_u128] = ACTIONS(1329), [anon_sym_i128] = ACTIONS(1329), [anon_sym_u256] = ACTIONS(1329), [anon_sym_i256] = ACTIONS(1329), [anon_sym_b256] = ACTIONS(1329), [anon_sym_isize] = ACTIONS(1329), [anon_sym_usize] = ACTIONS(1329), [anon_sym_f32] = ACTIONS(1329), [anon_sym_f64] = ACTIONS(1329), [anon_sym_bool] = ACTIONS(1329), [anon_sym_char] = ACTIONS(1329), [anon_sym_str] = ACTIONS(1329), [anon_sym_LBRACK] = ACTIONS(1327), [anon_sym_contract] = ACTIONS(1329), [anon_sym_script] = ACTIONS(1329), [anon_sym_predicate] = ACTIONS(1329), [anon_sym_library] = ACTIONS(1329), [anon_sym_SQUOTE] = ACTIONS(1329), [anon_sym_abi] = ACTIONS(1329), [anon_sym_break] = ACTIONS(1329), [anon_sym_configurable] = ACTIONS(1329), [anon_sym_const] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1329), [anon_sym_default] = ACTIONS(1329), [anon_sym_mod] = ACTIONS(1329), [anon_sym_enum] = ACTIONS(1329), [anon_sym_fn] = ACTIONS(1329), [anon_sym_for] = ACTIONS(1329), [anon_sym_if] = ACTIONS(1329), [anon_sym_impl] = ACTIONS(1329), [anon_sym_let] = ACTIONS(1329), [anon_sym_match] = ACTIONS(1329), [anon_sym_pub] = ACTIONS(1329), [anon_sym_return] = ACTIONS(1329), [anon_sym_storage] = ACTIONS(1329), [anon_sym_struct] = ACTIONS(1329), [anon_sym_trait] = ACTIONS(1329), [anon_sym_type] = ACTIONS(1329), [anon_sym_use] = ACTIONS(1329), [anon_sym_while] = ACTIONS(1329), [anon_sym_POUND] = ACTIONS(1327), [anon_sym_BANG] = ACTIONS(1327), [anon_sym_LBRACE] = ACTIONS(1327), [anon_sym_RBRACE] = ACTIONS(1327), [anon_sym_LPAREN] = ACTIONS(1327), [anon_sym_asm] = ACTIONS(1329), [anon_sym_LT] = ACTIONS(1327), [anon_sym_COLON_COLON] = ACTIONS(1327), [anon_sym_STAR] = ACTIONS(1327), [anon_sym_AMP] = ACTIONS(1327), [anon_sym_DOT_DOT] = ACTIONS(1327), [anon_sym_DASH] = ACTIONS(1327), [anon_sym_PIPE] = ACTIONS(1327), [anon_sym_yield] = ACTIONS(1329), [anon_sym_move] = ACTIONS(1329), [sym_integer_literal] = ACTIONS(1327), [aux_sym_string_literal_token1] = ACTIONS(1327), [sym_char_literal] = ACTIONS(1327), [anon_sym_true] = ACTIONS(1329), [anon_sym_false] = ACTIONS(1329), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1329), [sym_metavariable] = ACTIONS(1327), [sym_raw_string_literal] = ACTIONS(1327), [sym_float_literal] = ACTIONS(1327), [sym_block_comment] = ACTIONS(3), }, [343] = { [ts_builtin_sym_end] = ACTIONS(1331), [sym_identifier] = ACTIONS(1333), [anon_sym_SEMI] = ACTIONS(1331), [anon_sym_u8] = ACTIONS(1333), [anon_sym_i8] = ACTIONS(1333), [anon_sym_u16] = ACTIONS(1333), [anon_sym_i16] = ACTIONS(1333), [anon_sym_u32] = ACTIONS(1333), [anon_sym_i32] = ACTIONS(1333), [anon_sym_u64] = ACTIONS(1333), [anon_sym_i64] = ACTIONS(1333), [anon_sym_u128] = ACTIONS(1333), [anon_sym_i128] = ACTIONS(1333), [anon_sym_u256] = ACTIONS(1333), [anon_sym_i256] = ACTIONS(1333), [anon_sym_b256] = ACTIONS(1333), [anon_sym_isize] = ACTIONS(1333), [anon_sym_usize] = ACTIONS(1333), [anon_sym_f32] = ACTIONS(1333), [anon_sym_f64] = ACTIONS(1333), [anon_sym_bool] = ACTIONS(1333), [anon_sym_char] = ACTIONS(1333), [anon_sym_str] = ACTIONS(1333), [anon_sym_LBRACK] = ACTIONS(1331), [anon_sym_contract] = ACTIONS(1333), [anon_sym_script] = ACTIONS(1333), [anon_sym_predicate] = ACTIONS(1333), [anon_sym_library] = ACTIONS(1333), [anon_sym_SQUOTE] = ACTIONS(1333), [anon_sym_abi] = ACTIONS(1333), [anon_sym_break] = ACTIONS(1333), [anon_sym_configurable] = ACTIONS(1333), [anon_sym_const] = ACTIONS(1333), [anon_sym_continue] = ACTIONS(1333), [anon_sym_default] = ACTIONS(1333), [anon_sym_mod] = ACTIONS(1333), [anon_sym_enum] = ACTIONS(1333), [anon_sym_fn] = ACTIONS(1333), [anon_sym_for] = ACTIONS(1333), [anon_sym_if] = ACTIONS(1333), [anon_sym_impl] = ACTIONS(1333), [anon_sym_let] = ACTIONS(1333), [anon_sym_match] = ACTIONS(1333), [anon_sym_pub] = ACTIONS(1333), [anon_sym_return] = ACTIONS(1333), [anon_sym_storage] = ACTIONS(1333), [anon_sym_struct] = ACTIONS(1333), [anon_sym_trait] = ACTIONS(1333), [anon_sym_type] = ACTIONS(1333), [anon_sym_use] = ACTIONS(1333), [anon_sym_while] = ACTIONS(1333), [anon_sym_POUND] = ACTIONS(1331), [anon_sym_BANG] = ACTIONS(1331), [anon_sym_LBRACE] = ACTIONS(1331), [anon_sym_RBRACE] = ACTIONS(1331), [anon_sym_LPAREN] = ACTIONS(1331), [anon_sym_asm] = ACTIONS(1333), [anon_sym_LT] = ACTIONS(1331), [anon_sym_COLON_COLON] = ACTIONS(1331), [anon_sym_STAR] = ACTIONS(1331), [anon_sym_AMP] = ACTIONS(1331), [anon_sym_DOT_DOT] = ACTIONS(1331), [anon_sym_DASH] = ACTIONS(1331), [anon_sym_PIPE] = ACTIONS(1331), [anon_sym_yield] = ACTIONS(1333), [anon_sym_move] = ACTIONS(1333), [sym_integer_literal] = ACTIONS(1331), [aux_sym_string_literal_token1] = ACTIONS(1331), [sym_char_literal] = ACTIONS(1331), [anon_sym_true] = ACTIONS(1333), [anon_sym_false] = ACTIONS(1333), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1333), [sym_metavariable] = ACTIONS(1331), [sym_raw_string_literal] = ACTIONS(1331), [sym_float_literal] = ACTIONS(1331), [sym_block_comment] = ACTIONS(3), }, [344] = { [ts_builtin_sym_end] = ACTIONS(1335), [sym_identifier] = ACTIONS(1337), [anon_sym_SEMI] = ACTIONS(1335), [anon_sym_u8] = ACTIONS(1337), [anon_sym_i8] = ACTIONS(1337), [anon_sym_u16] = ACTIONS(1337), [anon_sym_i16] = ACTIONS(1337), [anon_sym_u32] = ACTIONS(1337), [anon_sym_i32] = ACTIONS(1337), [anon_sym_u64] = ACTIONS(1337), [anon_sym_i64] = ACTIONS(1337), [anon_sym_u128] = ACTIONS(1337), [anon_sym_i128] = ACTIONS(1337), [anon_sym_u256] = ACTIONS(1337), [anon_sym_i256] = ACTIONS(1337), [anon_sym_b256] = ACTIONS(1337), [anon_sym_isize] = ACTIONS(1337), [anon_sym_usize] = ACTIONS(1337), [anon_sym_f32] = ACTIONS(1337), [anon_sym_f64] = ACTIONS(1337), [anon_sym_bool] = ACTIONS(1337), [anon_sym_char] = ACTIONS(1337), [anon_sym_str] = ACTIONS(1337), [anon_sym_LBRACK] = ACTIONS(1335), [anon_sym_contract] = ACTIONS(1337), [anon_sym_script] = ACTIONS(1337), [anon_sym_predicate] = ACTIONS(1337), [anon_sym_library] = ACTIONS(1337), [anon_sym_SQUOTE] = ACTIONS(1337), [anon_sym_abi] = ACTIONS(1337), [anon_sym_break] = ACTIONS(1337), [anon_sym_configurable] = ACTIONS(1337), [anon_sym_const] = ACTIONS(1337), [anon_sym_continue] = ACTIONS(1337), [anon_sym_default] = ACTIONS(1337), [anon_sym_mod] = ACTIONS(1337), [anon_sym_enum] = ACTIONS(1337), [anon_sym_fn] = ACTIONS(1337), [anon_sym_for] = ACTIONS(1337), [anon_sym_if] = ACTIONS(1337), [anon_sym_impl] = ACTIONS(1337), [anon_sym_let] = ACTIONS(1337), [anon_sym_match] = ACTIONS(1337), [anon_sym_pub] = ACTIONS(1337), [anon_sym_return] = ACTIONS(1337), [anon_sym_storage] = ACTIONS(1337), [anon_sym_struct] = ACTIONS(1337), [anon_sym_trait] = ACTIONS(1337), [anon_sym_type] = ACTIONS(1337), [anon_sym_use] = ACTIONS(1337), [anon_sym_while] = ACTIONS(1337), [anon_sym_POUND] = ACTIONS(1335), [anon_sym_BANG] = ACTIONS(1335), [anon_sym_LBRACE] = ACTIONS(1335), [anon_sym_RBRACE] = ACTIONS(1335), [anon_sym_LPAREN] = ACTIONS(1335), [anon_sym_asm] = ACTIONS(1337), [anon_sym_LT] = ACTIONS(1335), [anon_sym_COLON_COLON] = ACTIONS(1335), [anon_sym_STAR] = ACTIONS(1335), [anon_sym_AMP] = ACTIONS(1335), [anon_sym_DOT_DOT] = ACTIONS(1335), [anon_sym_DASH] = ACTIONS(1335), [anon_sym_PIPE] = ACTIONS(1335), [anon_sym_yield] = ACTIONS(1337), [anon_sym_move] = ACTIONS(1337), [sym_integer_literal] = ACTIONS(1335), [aux_sym_string_literal_token1] = ACTIONS(1335), [sym_char_literal] = ACTIONS(1335), [anon_sym_true] = ACTIONS(1337), [anon_sym_false] = ACTIONS(1337), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1337), [sym_metavariable] = ACTIONS(1335), [sym_raw_string_literal] = ACTIONS(1335), [sym_float_literal] = ACTIONS(1335), [sym_block_comment] = ACTIONS(3), }, [345] = { [ts_builtin_sym_end] = ACTIONS(1339), [sym_identifier] = ACTIONS(1341), [anon_sym_SEMI] = ACTIONS(1339), [anon_sym_u8] = ACTIONS(1341), [anon_sym_i8] = ACTIONS(1341), [anon_sym_u16] = ACTIONS(1341), [anon_sym_i16] = ACTIONS(1341), [anon_sym_u32] = ACTIONS(1341), [anon_sym_i32] = ACTIONS(1341), [anon_sym_u64] = ACTIONS(1341), [anon_sym_i64] = ACTIONS(1341), [anon_sym_u128] = ACTIONS(1341), [anon_sym_i128] = ACTIONS(1341), [anon_sym_u256] = ACTIONS(1341), [anon_sym_i256] = ACTIONS(1341), [anon_sym_b256] = ACTIONS(1341), [anon_sym_isize] = ACTIONS(1341), [anon_sym_usize] = ACTIONS(1341), [anon_sym_f32] = ACTIONS(1341), [anon_sym_f64] = ACTIONS(1341), [anon_sym_bool] = ACTIONS(1341), [anon_sym_char] = ACTIONS(1341), [anon_sym_str] = ACTIONS(1341), [anon_sym_LBRACK] = ACTIONS(1339), [anon_sym_contract] = ACTIONS(1341), [anon_sym_script] = ACTIONS(1341), [anon_sym_predicate] = ACTIONS(1341), [anon_sym_library] = ACTIONS(1341), [anon_sym_SQUOTE] = ACTIONS(1341), [anon_sym_abi] = ACTIONS(1341), [anon_sym_break] = ACTIONS(1341), [anon_sym_configurable] = ACTIONS(1341), [anon_sym_const] = ACTIONS(1341), [anon_sym_continue] = ACTIONS(1341), [anon_sym_default] = ACTIONS(1341), [anon_sym_mod] = ACTIONS(1341), [anon_sym_enum] = ACTIONS(1341), [anon_sym_fn] = ACTIONS(1341), [anon_sym_for] = ACTIONS(1341), [anon_sym_if] = ACTIONS(1341), [anon_sym_impl] = ACTIONS(1341), [anon_sym_let] = ACTIONS(1341), [anon_sym_match] = ACTIONS(1341), [anon_sym_pub] = ACTIONS(1341), [anon_sym_return] = ACTIONS(1341), [anon_sym_storage] = ACTIONS(1341), [anon_sym_struct] = ACTIONS(1341), [anon_sym_trait] = ACTIONS(1341), [anon_sym_type] = ACTIONS(1341), [anon_sym_use] = ACTIONS(1341), [anon_sym_while] = ACTIONS(1341), [anon_sym_POUND] = ACTIONS(1339), [anon_sym_BANG] = ACTIONS(1339), [anon_sym_LBRACE] = ACTIONS(1339), [anon_sym_RBRACE] = ACTIONS(1339), [anon_sym_LPAREN] = ACTIONS(1339), [anon_sym_asm] = ACTIONS(1341), [anon_sym_LT] = ACTIONS(1339), [anon_sym_COLON_COLON] = ACTIONS(1339), [anon_sym_STAR] = ACTIONS(1339), [anon_sym_AMP] = ACTIONS(1339), [anon_sym_DOT_DOT] = ACTIONS(1339), [anon_sym_DASH] = ACTIONS(1339), [anon_sym_PIPE] = ACTIONS(1339), [anon_sym_yield] = ACTIONS(1341), [anon_sym_move] = ACTIONS(1341), [sym_integer_literal] = ACTIONS(1339), [aux_sym_string_literal_token1] = ACTIONS(1339), [sym_char_literal] = ACTIONS(1339), [anon_sym_true] = ACTIONS(1341), [anon_sym_false] = ACTIONS(1341), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1341), [sym_metavariable] = ACTIONS(1339), [sym_raw_string_literal] = ACTIONS(1339), [sym_float_literal] = ACTIONS(1339), [sym_block_comment] = ACTIONS(3), }, [346] = { [ts_builtin_sym_end] = ACTIONS(1343), [sym_identifier] = ACTIONS(1345), [anon_sym_SEMI] = ACTIONS(1343), [anon_sym_u8] = ACTIONS(1345), [anon_sym_i8] = ACTIONS(1345), [anon_sym_u16] = ACTIONS(1345), [anon_sym_i16] = ACTIONS(1345), [anon_sym_u32] = ACTIONS(1345), [anon_sym_i32] = ACTIONS(1345), [anon_sym_u64] = ACTIONS(1345), [anon_sym_i64] = ACTIONS(1345), [anon_sym_u128] = ACTIONS(1345), [anon_sym_i128] = ACTIONS(1345), [anon_sym_u256] = ACTIONS(1345), [anon_sym_i256] = ACTIONS(1345), [anon_sym_b256] = ACTIONS(1345), [anon_sym_isize] = ACTIONS(1345), [anon_sym_usize] = ACTIONS(1345), [anon_sym_f32] = ACTIONS(1345), [anon_sym_f64] = ACTIONS(1345), [anon_sym_bool] = ACTIONS(1345), [anon_sym_char] = ACTIONS(1345), [anon_sym_str] = ACTIONS(1345), [anon_sym_LBRACK] = ACTIONS(1343), [anon_sym_contract] = ACTIONS(1345), [anon_sym_script] = ACTIONS(1345), [anon_sym_predicate] = ACTIONS(1345), [anon_sym_library] = ACTIONS(1345), [anon_sym_SQUOTE] = ACTIONS(1345), [anon_sym_abi] = ACTIONS(1345), [anon_sym_break] = ACTIONS(1345), [anon_sym_configurable] = ACTIONS(1345), [anon_sym_const] = ACTIONS(1345), [anon_sym_continue] = ACTIONS(1345), [anon_sym_default] = ACTIONS(1345), [anon_sym_mod] = ACTIONS(1345), [anon_sym_enum] = ACTIONS(1345), [anon_sym_fn] = ACTIONS(1345), [anon_sym_for] = ACTIONS(1345), [anon_sym_if] = ACTIONS(1345), [anon_sym_impl] = ACTIONS(1345), [anon_sym_let] = ACTIONS(1345), [anon_sym_match] = ACTIONS(1345), [anon_sym_pub] = ACTIONS(1345), [anon_sym_return] = ACTIONS(1345), [anon_sym_storage] = ACTIONS(1345), [anon_sym_struct] = ACTIONS(1345), [anon_sym_trait] = ACTIONS(1345), [anon_sym_type] = ACTIONS(1345), [anon_sym_use] = ACTIONS(1345), [anon_sym_while] = ACTIONS(1345), [anon_sym_POUND] = ACTIONS(1343), [anon_sym_BANG] = ACTIONS(1343), [anon_sym_LBRACE] = ACTIONS(1343), [anon_sym_RBRACE] = ACTIONS(1343), [anon_sym_LPAREN] = ACTIONS(1343), [anon_sym_asm] = ACTIONS(1345), [anon_sym_LT] = ACTIONS(1343), [anon_sym_COLON_COLON] = ACTIONS(1343), [anon_sym_STAR] = ACTIONS(1343), [anon_sym_AMP] = ACTIONS(1343), [anon_sym_DOT_DOT] = ACTIONS(1343), [anon_sym_DASH] = ACTIONS(1343), [anon_sym_PIPE] = ACTIONS(1343), [anon_sym_yield] = ACTIONS(1345), [anon_sym_move] = ACTIONS(1345), [sym_integer_literal] = ACTIONS(1343), [aux_sym_string_literal_token1] = ACTIONS(1343), [sym_char_literal] = ACTIONS(1343), [anon_sym_true] = ACTIONS(1345), [anon_sym_false] = ACTIONS(1345), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1345), [sym_metavariable] = ACTIONS(1343), [sym_raw_string_literal] = ACTIONS(1343), [sym_float_literal] = ACTIONS(1343), [sym_block_comment] = ACTIONS(3), }, [347] = { [ts_builtin_sym_end] = ACTIONS(1347), [sym_identifier] = ACTIONS(1349), [anon_sym_SEMI] = ACTIONS(1347), [anon_sym_u8] = ACTIONS(1349), [anon_sym_i8] = ACTIONS(1349), [anon_sym_u16] = ACTIONS(1349), [anon_sym_i16] = ACTIONS(1349), [anon_sym_u32] = ACTIONS(1349), [anon_sym_i32] = ACTIONS(1349), [anon_sym_u64] = ACTIONS(1349), [anon_sym_i64] = ACTIONS(1349), [anon_sym_u128] = ACTIONS(1349), [anon_sym_i128] = ACTIONS(1349), [anon_sym_u256] = ACTIONS(1349), [anon_sym_i256] = ACTIONS(1349), [anon_sym_b256] = ACTIONS(1349), [anon_sym_isize] = ACTIONS(1349), [anon_sym_usize] = ACTIONS(1349), [anon_sym_f32] = ACTIONS(1349), [anon_sym_f64] = ACTIONS(1349), [anon_sym_bool] = ACTIONS(1349), [anon_sym_char] = ACTIONS(1349), [anon_sym_str] = ACTIONS(1349), [anon_sym_LBRACK] = ACTIONS(1347), [anon_sym_contract] = ACTIONS(1349), [anon_sym_script] = ACTIONS(1349), [anon_sym_predicate] = ACTIONS(1349), [anon_sym_library] = ACTIONS(1349), [anon_sym_SQUOTE] = ACTIONS(1349), [anon_sym_abi] = ACTIONS(1349), [anon_sym_break] = ACTIONS(1349), [anon_sym_configurable] = ACTIONS(1349), [anon_sym_const] = ACTIONS(1349), [anon_sym_continue] = ACTIONS(1349), [anon_sym_default] = ACTIONS(1349), [anon_sym_mod] = ACTIONS(1349), [anon_sym_enum] = ACTIONS(1349), [anon_sym_fn] = ACTIONS(1349), [anon_sym_for] = ACTIONS(1349), [anon_sym_if] = ACTIONS(1349), [anon_sym_impl] = ACTIONS(1349), [anon_sym_let] = ACTIONS(1349), [anon_sym_match] = ACTIONS(1349), [anon_sym_pub] = ACTIONS(1349), [anon_sym_return] = ACTIONS(1349), [anon_sym_storage] = ACTIONS(1349), [anon_sym_struct] = ACTIONS(1349), [anon_sym_trait] = ACTIONS(1349), [anon_sym_type] = ACTIONS(1349), [anon_sym_use] = ACTIONS(1349), [anon_sym_while] = ACTIONS(1349), [anon_sym_POUND] = ACTIONS(1347), [anon_sym_BANG] = ACTIONS(1347), [anon_sym_LBRACE] = ACTIONS(1347), [anon_sym_RBRACE] = ACTIONS(1347), [anon_sym_LPAREN] = ACTIONS(1347), [anon_sym_asm] = ACTIONS(1349), [anon_sym_LT] = ACTIONS(1347), [anon_sym_COLON_COLON] = ACTIONS(1347), [anon_sym_STAR] = ACTIONS(1347), [anon_sym_AMP] = ACTIONS(1347), [anon_sym_DOT_DOT] = ACTIONS(1347), [anon_sym_DASH] = ACTIONS(1347), [anon_sym_PIPE] = ACTIONS(1347), [anon_sym_yield] = ACTIONS(1349), [anon_sym_move] = ACTIONS(1349), [sym_integer_literal] = ACTIONS(1347), [aux_sym_string_literal_token1] = ACTIONS(1347), [sym_char_literal] = ACTIONS(1347), [anon_sym_true] = ACTIONS(1349), [anon_sym_false] = ACTIONS(1349), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1349), [sym_metavariable] = ACTIONS(1347), [sym_raw_string_literal] = ACTIONS(1347), [sym_float_literal] = ACTIONS(1347), [sym_block_comment] = ACTIONS(3), }, [348] = { [ts_builtin_sym_end] = ACTIONS(1351), [sym_identifier] = ACTIONS(1353), [anon_sym_SEMI] = ACTIONS(1351), [anon_sym_u8] = ACTIONS(1353), [anon_sym_i8] = ACTIONS(1353), [anon_sym_u16] = ACTIONS(1353), [anon_sym_i16] = ACTIONS(1353), [anon_sym_u32] = ACTIONS(1353), [anon_sym_i32] = ACTIONS(1353), [anon_sym_u64] = ACTIONS(1353), [anon_sym_i64] = ACTIONS(1353), [anon_sym_u128] = ACTIONS(1353), [anon_sym_i128] = ACTIONS(1353), [anon_sym_u256] = ACTIONS(1353), [anon_sym_i256] = ACTIONS(1353), [anon_sym_b256] = ACTIONS(1353), [anon_sym_isize] = ACTIONS(1353), [anon_sym_usize] = ACTIONS(1353), [anon_sym_f32] = ACTIONS(1353), [anon_sym_f64] = ACTIONS(1353), [anon_sym_bool] = ACTIONS(1353), [anon_sym_char] = ACTIONS(1353), [anon_sym_str] = ACTIONS(1353), [anon_sym_LBRACK] = ACTIONS(1351), [anon_sym_contract] = ACTIONS(1353), [anon_sym_script] = ACTIONS(1353), [anon_sym_predicate] = ACTIONS(1353), [anon_sym_library] = ACTIONS(1353), [anon_sym_SQUOTE] = ACTIONS(1353), [anon_sym_abi] = ACTIONS(1353), [anon_sym_break] = ACTIONS(1353), [anon_sym_configurable] = ACTIONS(1353), [anon_sym_const] = ACTIONS(1353), [anon_sym_continue] = ACTIONS(1353), [anon_sym_default] = ACTIONS(1353), [anon_sym_mod] = ACTIONS(1353), [anon_sym_enum] = ACTIONS(1353), [anon_sym_fn] = ACTIONS(1353), [anon_sym_for] = ACTIONS(1353), [anon_sym_if] = ACTIONS(1353), [anon_sym_impl] = ACTIONS(1353), [anon_sym_let] = ACTIONS(1353), [anon_sym_match] = ACTIONS(1353), [anon_sym_pub] = ACTIONS(1353), [anon_sym_return] = ACTIONS(1353), [anon_sym_storage] = ACTIONS(1353), [anon_sym_struct] = ACTIONS(1353), [anon_sym_trait] = ACTIONS(1353), [anon_sym_type] = ACTIONS(1353), [anon_sym_use] = ACTIONS(1353), [anon_sym_while] = ACTIONS(1353), [anon_sym_POUND] = ACTIONS(1351), [anon_sym_BANG] = ACTIONS(1351), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(1351), [anon_sym_LPAREN] = ACTIONS(1351), [anon_sym_asm] = ACTIONS(1353), [anon_sym_LT] = ACTIONS(1351), [anon_sym_COLON_COLON] = ACTIONS(1351), [anon_sym_STAR] = ACTIONS(1351), [anon_sym_AMP] = ACTIONS(1351), [anon_sym_DOT_DOT] = ACTIONS(1351), [anon_sym_DASH] = ACTIONS(1351), [anon_sym_PIPE] = ACTIONS(1351), [anon_sym_yield] = ACTIONS(1353), [anon_sym_move] = ACTIONS(1353), [sym_integer_literal] = ACTIONS(1351), [aux_sym_string_literal_token1] = ACTIONS(1351), [sym_char_literal] = ACTIONS(1351), [anon_sym_true] = ACTIONS(1353), [anon_sym_false] = ACTIONS(1353), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1353), [sym_metavariable] = ACTIONS(1351), [sym_raw_string_literal] = ACTIONS(1351), [sym_float_literal] = ACTIONS(1351), [sym_block_comment] = ACTIONS(3), }, [349] = { [ts_builtin_sym_end] = ACTIONS(1355), [sym_identifier] = ACTIONS(1357), [anon_sym_SEMI] = ACTIONS(1355), [anon_sym_u8] = ACTIONS(1357), [anon_sym_i8] = ACTIONS(1357), [anon_sym_u16] = ACTIONS(1357), [anon_sym_i16] = ACTIONS(1357), [anon_sym_u32] = ACTIONS(1357), [anon_sym_i32] = ACTIONS(1357), [anon_sym_u64] = ACTIONS(1357), [anon_sym_i64] = ACTIONS(1357), [anon_sym_u128] = ACTIONS(1357), [anon_sym_i128] = ACTIONS(1357), [anon_sym_u256] = ACTIONS(1357), [anon_sym_i256] = ACTIONS(1357), [anon_sym_b256] = ACTIONS(1357), [anon_sym_isize] = ACTIONS(1357), [anon_sym_usize] = ACTIONS(1357), [anon_sym_f32] = ACTIONS(1357), [anon_sym_f64] = ACTIONS(1357), [anon_sym_bool] = ACTIONS(1357), [anon_sym_char] = ACTIONS(1357), [anon_sym_str] = ACTIONS(1357), [anon_sym_LBRACK] = ACTIONS(1355), [anon_sym_contract] = ACTIONS(1357), [anon_sym_script] = ACTIONS(1357), [anon_sym_predicate] = ACTIONS(1357), [anon_sym_library] = ACTIONS(1357), [anon_sym_SQUOTE] = ACTIONS(1357), [anon_sym_abi] = ACTIONS(1357), [anon_sym_break] = ACTIONS(1357), [anon_sym_configurable] = ACTIONS(1357), [anon_sym_const] = ACTIONS(1357), [anon_sym_continue] = ACTIONS(1357), [anon_sym_default] = ACTIONS(1357), [anon_sym_mod] = ACTIONS(1357), [anon_sym_enum] = ACTIONS(1357), [anon_sym_fn] = ACTIONS(1357), [anon_sym_for] = ACTIONS(1357), [anon_sym_if] = ACTIONS(1357), [anon_sym_impl] = ACTIONS(1357), [anon_sym_let] = ACTIONS(1357), [anon_sym_match] = ACTIONS(1357), [anon_sym_pub] = ACTIONS(1357), [anon_sym_return] = ACTIONS(1357), [anon_sym_storage] = ACTIONS(1357), [anon_sym_struct] = ACTIONS(1357), [anon_sym_trait] = ACTIONS(1357), [anon_sym_type] = ACTIONS(1357), [anon_sym_use] = ACTIONS(1357), [anon_sym_while] = ACTIONS(1357), [anon_sym_POUND] = ACTIONS(1355), [anon_sym_BANG] = ACTIONS(1355), [anon_sym_LBRACE] = ACTIONS(1355), [anon_sym_RBRACE] = ACTIONS(1355), [anon_sym_LPAREN] = ACTIONS(1355), [anon_sym_asm] = ACTIONS(1357), [anon_sym_LT] = ACTIONS(1355), [anon_sym_COLON_COLON] = ACTIONS(1355), [anon_sym_STAR] = ACTIONS(1355), [anon_sym_AMP] = ACTIONS(1355), [anon_sym_DOT_DOT] = ACTIONS(1355), [anon_sym_DASH] = ACTIONS(1355), [anon_sym_PIPE] = ACTIONS(1355), [anon_sym_yield] = ACTIONS(1357), [anon_sym_move] = ACTIONS(1357), [sym_integer_literal] = ACTIONS(1355), [aux_sym_string_literal_token1] = ACTIONS(1355), [sym_char_literal] = ACTIONS(1355), [anon_sym_true] = ACTIONS(1357), [anon_sym_false] = ACTIONS(1357), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1357), [sym_metavariable] = ACTIONS(1355), [sym_raw_string_literal] = ACTIONS(1355), [sym_float_literal] = ACTIONS(1355), [sym_block_comment] = ACTIONS(3), }, [350] = { [ts_builtin_sym_end] = ACTIONS(1359), [sym_identifier] = ACTIONS(1361), [anon_sym_SEMI] = ACTIONS(1359), [anon_sym_u8] = ACTIONS(1361), [anon_sym_i8] = ACTIONS(1361), [anon_sym_u16] = ACTIONS(1361), [anon_sym_i16] = ACTIONS(1361), [anon_sym_u32] = ACTIONS(1361), [anon_sym_i32] = ACTIONS(1361), [anon_sym_u64] = ACTIONS(1361), [anon_sym_i64] = ACTIONS(1361), [anon_sym_u128] = ACTIONS(1361), [anon_sym_i128] = ACTIONS(1361), [anon_sym_u256] = ACTIONS(1361), [anon_sym_i256] = ACTIONS(1361), [anon_sym_b256] = ACTIONS(1361), [anon_sym_isize] = ACTIONS(1361), [anon_sym_usize] = ACTIONS(1361), [anon_sym_f32] = ACTIONS(1361), [anon_sym_f64] = ACTIONS(1361), [anon_sym_bool] = ACTIONS(1361), [anon_sym_char] = ACTIONS(1361), [anon_sym_str] = ACTIONS(1361), [anon_sym_LBRACK] = ACTIONS(1359), [anon_sym_contract] = ACTIONS(1361), [anon_sym_script] = ACTIONS(1361), [anon_sym_predicate] = ACTIONS(1361), [anon_sym_library] = ACTIONS(1361), [anon_sym_SQUOTE] = ACTIONS(1361), [anon_sym_abi] = ACTIONS(1361), [anon_sym_break] = ACTIONS(1361), [anon_sym_configurable] = ACTIONS(1361), [anon_sym_const] = ACTIONS(1361), [anon_sym_continue] = ACTIONS(1361), [anon_sym_default] = ACTIONS(1361), [anon_sym_mod] = ACTIONS(1361), [anon_sym_enum] = ACTIONS(1361), [anon_sym_fn] = ACTIONS(1361), [anon_sym_for] = ACTIONS(1361), [anon_sym_if] = ACTIONS(1361), [anon_sym_impl] = ACTIONS(1361), [anon_sym_let] = ACTIONS(1361), [anon_sym_match] = ACTIONS(1361), [anon_sym_pub] = ACTIONS(1361), [anon_sym_return] = ACTIONS(1361), [anon_sym_storage] = ACTIONS(1361), [anon_sym_struct] = ACTIONS(1361), [anon_sym_trait] = ACTIONS(1361), [anon_sym_type] = ACTIONS(1361), [anon_sym_use] = ACTIONS(1361), [anon_sym_while] = ACTIONS(1361), [anon_sym_POUND] = ACTIONS(1359), [anon_sym_BANG] = ACTIONS(1359), [anon_sym_LBRACE] = ACTIONS(1359), [anon_sym_RBRACE] = ACTIONS(1359), [anon_sym_LPAREN] = ACTIONS(1359), [anon_sym_asm] = ACTIONS(1361), [anon_sym_LT] = ACTIONS(1359), [anon_sym_COLON_COLON] = ACTIONS(1359), [anon_sym_STAR] = ACTIONS(1359), [anon_sym_AMP] = ACTIONS(1359), [anon_sym_DOT_DOT] = ACTIONS(1359), [anon_sym_DASH] = ACTIONS(1359), [anon_sym_PIPE] = ACTIONS(1359), [anon_sym_yield] = ACTIONS(1361), [anon_sym_move] = ACTIONS(1361), [sym_integer_literal] = ACTIONS(1359), [aux_sym_string_literal_token1] = ACTIONS(1359), [sym_char_literal] = ACTIONS(1359), [anon_sym_true] = ACTIONS(1361), [anon_sym_false] = ACTIONS(1361), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1361), [sym_metavariable] = ACTIONS(1359), [sym_raw_string_literal] = ACTIONS(1359), [sym_float_literal] = ACTIONS(1359), [sym_block_comment] = ACTIONS(3), }, [351] = { [ts_builtin_sym_end] = ACTIONS(1363), [sym_identifier] = ACTIONS(1365), [anon_sym_SEMI] = ACTIONS(1363), [anon_sym_u8] = ACTIONS(1365), [anon_sym_i8] = ACTIONS(1365), [anon_sym_u16] = ACTIONS(1365), [anon_sym_i16] = ACTIONS(1365), [anon_sym_u32] = ACTIONS(1365), [anon_sym_i32] = ACTIONS(1365), [anon_sym_u64] = ACTIONS(1365), [anon_sym_i64] = ACTIONS(1365), [anon_sym_u128] = ACTIONS(1365), [anon_sym_i128] = ACTIONS(1365), [anon_sym_u256] = ACTIONS(1365), [anon_sym_i256] = ACTIONS(1365), [anon_sym_b256] = ACTIONS(1365), [anon_sym_isize] = ACTIONS(1365), [anon_sym_usize] = ACTIONS(1365), [anon_sym_f32] = ACTIONS(1365), [anon_sym_f64] = ACTIONS(1365), [anon_sym_bool] = ACTIONS(1365), [anon_sym_char] = ACTIONS(1365), [anon_sym_str] = ACTIONS(1365), [anon_sym_LBRACK] = ACTIONS(1363), [anon_sym_contract] = ACTIONS(1365), [anon_sym_script] = ACTIONS(1365), [anon_sym_predicate] = ACTIONS(1365), [anon_sym_library] = ACTIONS(1365), [anon_sym_SQUOTE] = ACTIONS(1365), [anon_sym_abi] = ACTIONS(1365), [anon_sym_break] = ACTIONS(1365), [anon_sym_configurable] = ACTIONS(1365), [anon_sym_const] = ACTIONS(1365), [anon_sym_continue] = ACTIONS(1365), [anon_sym_default] = ACTIONS(1365), [anon_sym_mod] = ACTIONS(1365), [anon_sym_enum] = ACTIONS(1365), [anon_sym_fn] = ACTIONS(1365), [anon_sym_for] = ACTIONS(1365), [anon_sym_if] = ACTIONS(1365), [anon_sym_impl] = ACTIONS(1365), [anon_sym_let] = ACTIONS(1365), [anon_sym_match] = ACTIONS(1365), [anon_sym_pub] = ACTIONS(1365), [anon_sym_return] = ACTIONS(1365), [anon_sym_storage] = ACTIONS(1365), [anon_sym_struct] = ACTIONS(1365), [anon_sym_trait] = ACTIONS(1365), [anon_sym_type] = ACTIONS(1365), [anon_sym_use] = ACTIONS(1365), [anon_sym_while] = ACTIONS(1365), [anon_sym_POUND] = ACTIONS(1363), [anon_sym_BANG] = ACTIONS(1363), [anon_sym_LBRACE] = ACTIONS(1363), [anon_sym_RBRACE] = ACTIONS(1363), [anon_sym_LPAREN] = ACTIONS(1363), [anon_sym_asm] = ACTIONS(1365), [anon_sym_LT] = ACTIONS(1363), [anon_sym_COLON_COLON] = ACTIONS(1363), [anon_sym_STAR] = ACTIONS(1363), [anon_sym_AMP] = ACTIONS(1363), [anon_sym_DOT_DOT] = ACTIONS(1363), [anon_sym_DASH] = ACTIONS(1363), [anon_sym_PIPE] = ACTIONS(1363), [anon_sym_yield] = ACTIONS(1365), [anon_sym_move] = ACTIONS(1365), [sym_integer_literal] = ACTIONS(1363), [aux_sym_string_literal_token1] = ACTIONS(1363), [sym_char_literal] = ACTIONS(1363), [anon_sym_true] = ACTIONS(1365), [anon_sym_false] = ACTIONS(1365), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1365), [sym_metavariable] = ACTIONS(1363), [sym_raw_string_literal] = ACTIONS(1363), [sym_float_literal] = ACTIONS(1363), [sym_block_comment] = ACTIONS(3), }, [352] = { [ts_builtin_sym_end] = ACTIONS(1367), [sym_identifier] = ACTIONS(1369), [anon_sym_SEMI] = ACTIONS(1367), [anon_sym_u8] = ACTIONS(1369), [anon_sym_i8] = ACTIONS(1369), [anon_sym_u16] = ACTIONS(1369), [anon_sym_i16] = ACTIONS(1369), [anon_sym_u32] = ACTIONS(1369), [anon_sym_i32] = ACTIONS(1369), [anon_sym_u64] = ACTIONS(1369), [anon_sym_i64] = ACTIONS(1369), [anon_sym_u128] = ACTIONS(1369), [anon_sym_i128] = ACTIONS(1369), [anon_sym_u256] = ACTIONS(1369), [anon_sym_i256] = ACTIONS(1369), [anon_sym_b256] = ACTIONS(1369), [anon_sym_isize] = ACTIONS(1369), [anon_sym_usize] = ACTIONS(1369), [anon_sym_f32] = ACTIONS(1369), [anon_sym_f64] = ACTIONS(1369), [anon_sym_bool] = ACTIONS(1369), [anon_sym_char] = ACTIONS(1369), [anon_sym_str] = ACTIONS(1369), [anon_sym_LBRACK] = ACTIONS(1367), [anon_sym_contract] = ACTIONS(1369), [anon_sym_script] = ACTIONS(1369), [anon_sym_predicate] = ACTIONS(1369), [anon_sym_library] = ACTIONS(1369), [anon_sym_SQUOTE] = ACTIONS(1369), [anon_sym_abi] = ACTIONS(1369), [anon_sym_break] = ACTIONS(1369), [anon_sym_configurable] = ACTIONS(1369), [anon_sym_const] = ACTIONS(1369), [anon_sym_continue] = ACTIONS(1369), [anon_sym_default] = ACTIONS(1369), [anon_sym_mod] = ACTIONS(1369), [anon_sym_enum] = ACTIONS(1369), [anon_sym_fn] = ACTIONS(1369), [anon_sym_for] = ACTIONS(1369), [anon_sym_if] = ACTIONS(1369), [anon_sym_impl] = ACTIONS(1369), [anon_sym_let] = ACTIONS(1369), [anon_sym_match] = ACTIONS(1369), [anon_sym_pub] = ACTIONS(1369), [anon_sym_return] = ACTIONS(1369), [anon_sym_storage] = ACTIONS(1369), [anon_sym_struct] = ACTIONS(1369), [anon_sym_trait] = ACTIONS(1369), [anon_sym_type] = ACTIONS(1369), [anon_sym_use] = ACTIONS(1369), [anon_sym_while] = ACTIONS(1369), [anon_sym_POUND] = ACTIONS(1367), [anon_sym_BANG] = ACTIONS(1367), [anon_sym_LBRACE] = ACTIONS(1367), [anon_sym_RBRACE] = ACTIONS(1367), [anon_sym_LPAREN] = ACTIONS(1367), [anon_sym_asm] = ACTIONS(1369), [anon_sym_LT] = ACTIONS(1367), [anon_sym_COLON_COLON] = ACTIONS(1367), [anon_sym_STAR] = ACTIONS(1367), [anon_sym_AMP] = ACTIONS(1367), [anon_sym_DOT_DOT] = ACTIONS(1367), [anon_sym_DASH] = ACTIONS(1367), [anon_sym_PIPE] = ACTIONS(1367), [anon_sym_yield] = ACTIONS(1369), [anon_sym_move] = ACTIONS(1369), [sym_integer_literal] = ACTIONS(1367), [aux_sym_string_literal_token1] = ACTIONS(1367), [sym_char_literal] = ACTIONS(1367), [anon_sym_true] = ACTIONS(1369), [anon_sym_false] = ACTIONS(1369), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1369), [sym_metavariable] = ACTIONS(1367), [sym_raw_string_literal] = ACTIONS(1367), [sym_float_literal] = ACTIONS(1367), [sym_block_comment] = ACTIONS(3), }, [353] = { [ts_builtin_sym_end] = ACTIONS(1371), [sym_identifier] = ACTIONS(1373), [anon_sym_SEMI] = ACTIONS(1371), [anon_sym_u8] = ACTIONS(1373), [anon_sym_i8] = ACTIONS(1373), [anon_sym_u16] = ACTIONS(1373), [anon_sym_i16] = ACTIONS(1373), [anon_sym_u32] = ACTIONS(1373), [anon_sym_i32] = ACTIONS(1373), [anon_sym_u64] = ACTIONS(1373), [anon_sym_i64] = ACTIONS(1373), [anon_sym_u128] = ACTIONS(1373), [anon_sym_i128] = ACTIONS(1373), [anon_sym_u256] = ACTIONS(1373), [anon_sym_i256] = ACTIONS(1373), [anon_sym_b256] = ACTIONS(1373), [anon_sym_isize] = ACTIONS(1373), [anon_sym_usize] = ACTIONS(1373), [anon_sym_f32] = ACTIONS(1373), [anon_sym_f64] = ACTIONS(1373), [anon_sym_bool] = ACTIONS(1373), [anon_sym_char] = ACTIONS(1373), [anon_sym_str] = ACTIONS(1373), [anon_sym_LBRACK] = ACTIONS(1371), [anon_sym_contract] = ACTIONS(1373), [anon_sym_script] = ACTIONS(1373), [anon_sym_predicate] = ACTIONS(1373), [anon_sym_library] = ACTIONS(1373), [anon_sym_SQUOTE] = ACTIONS(1373), [anon_sym_abi] = ACTIONS(1373), [anon_sym_break] = ACTIONS(1373), [anon_sym_configurable] = ACTIONS(1373), [anon_sym_const] = ACTIONS(1373), [anon_sym_continue] = ACTIONS(1373), [anon_sym_default] = ACTIONS(1373), [anon_sym_mod] = ACTIONS(1373), [anon_sym_enum] = ACTIONS(1373), [anon_sym_fn] = ACTIONS(1373), [anon_sym_for] = ACTIONS(1373), [anon_sym_if] = ACTIONS(1373), [anon_sym_impl] = ACTIONS(1373), [anon_sym_let] = ACTIONS(1373), [anon_sym_match] = ACTIONS(1373), [anon_sym_pub] = ACTIONS(1373), [anon_sym_return] = ACTIONS(1373), [anon_sym_storage] = ACTIONS(1373), [anon_sym_struct] = ACTIONS(1373), [anon_sym_trait] = ACTIONS(1373), [anon_sym_type] = ACTIONS(1373), [anon_sym_use] = ACTIONS(1373), [anon_sym_while] = ACTIONS(1373), [anon_sym_POUND] = ACTIONS(1371), [anon_sym_BANG] = ACTIONS(1371), [anon_sym_LBRACE] = ACTIONS(1371), [anon_sym_RBRACE] = ACTIONS(1371), [anon_sym_LPAREN] = ACTIONS(1371), [anon_sym_asm] = ACTIONS(1373), [anon_sym_LT] = ACTIONS(1371), [anon_sym_COLON_COLON] = ACTIONS(1371), [anon_sym_STAR] = ACTIONS(1371), [anon_sym_AMP] = ACTIONS(1371), [anon_sym_DOT_DOT] = ACTIONS(1371), [anon_sym_DASH] = ACTIONS(1371), [anon_sym_PIPE] = ACTIONS(1371), [anon_sym_yield] = ACTIONS(1373), [anon_sym_move] = ACTIONS(1373), [sym_integer_literal] = ACTIONS(1371), [aux_sym_string_literal_token1] = ACTIONS(1371), [sym_char_literal] = ACTIONS(1371), [anon_sym_true] = ACTIONS(1373), [anon_sym_false] = ACTIONS(1373), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1373), [sym_metavariable] = ACTIONS(1371), [sym_raw_string_literal] = ACTIONS(1371), [sym_float_literal] = ACTIONS(1371), [sym_block_comment] = ACTIONS(3), }, [354] = { [ts_builtin_sym_end] = ACTIONS(1375), [sym_identifier] = ACTIONS(1377), [anon_sym_SEMI] = ACTIONS(1375), [anon_sym_u8] = ACTIONS(1377), [anon_sym_i8] = ACTIONS(1377), [anon_sym_u16] = ACTIONS(1377), [anon_sym_i16] = ACTIONS(1377), [anon_sym_u32] = ACTIONS(1377), [anon_sym_i32] = ACTIONS(1377), [anon_sym_u64] = ACTIONS(1377), [anon_sym_i64] = ACTIONS(1377), [anon_sym_u128] = ACTIONS(1377), [anon_sym_i128] = ACTIONS(1377), [anon_sym_u256] = ACTIONS(1377), [anon_sym_i256] = ACTIONS(1377), [anon_sym_b256] = ACTIONS(1377), [anon_sym_isize] = ACTIONS(1377), [anon_sym_usize] = ACTIONS(1377), [anon_sym_f32] = ACTIONS(1377), [anon_sym_f64] = ACTIONS(1377), [anon_sym_bool] = ACTIONS(1377), [anon_sym_char] = ACTIONS(1377), [anon_sym_str] = ACTIONS(1377), [anon_sym_LBRACK] = ACTIONS(1375), [anon_sym_contract] = ACTIONS(1377), [anon_sym_script] = ACTIONS(1377), [anon_sym_predicate] = ACTIONS(1377), [anon_sym_library] = ACTIONS(1377), [anon_sym_SQUOTE] = ACTIONS(1377), [anon_sym_abi] = ACTIONS(1377), [anon_sym_break] = ACTIONS(1377), [anon_sym_configurable] = ACTIONS(1377), [anon_sym_const] = ACTIONS(1377), [anon_sym_continue] = ACTIONS(1377), [anon_sym_default] = ACTIONS(1377), [anon_sym_mod] = ACTIONS(1377), [anon_sym_enum] = ACTIONS(1377), [anon_sym_fn] = ACTIONS(1377), [anon_sym_for] = ACTIONS(1377), [anon_sym_if] = ACTIONS(1377), [anon_sym_impl] = ACTIONS(1377), [anon_sym_let] = ACTIONS(1377), [anon_sym_match] = ACTIONS(1377), [anon_sym_pub] = ACTIONS(1377), [anon_sym_return] = ACTIONS(1377), [anon_sym_storage] = ACTIONS(1377), [anon_sym_struct] = ACTIONS(1377), [anon_sym_trait] = ACTIONS(1377), [anon_sym_type] = ACTIONS(1377), [anon_sym_use] = ACTIONS(1377), [anon_sym_while] = ACTIONS(1377), [anon_sym_POUND] = ACTIONS(1375), [anon_sym_BANG] = ACTIONS(1375), [anon_sym_LBRACE] = ACTIONS(1375), [anon_sym_RBRACE] = ACTIONS(1375), [anon_sym_LPAREN] = ACTIONS(1375), [anon_sym_asm] = ACTIONS(1377), [anon_sym_LT] = ACTIONS(1375), [anon_sym_COLON_COLON] = ACTIONS(1375), [anon_sym_STAR] = ACTIONS(1375), [anon_sym_AMP] = ACTIONS(1375), [anon_sym_DOT_DOT] = ACTIONS(1375), [anon_sym_DASH] = ACTIONS(1375), [anon_sym_PIPE] = ACTIONS(1375), [anon_sym_yield] = ACTIONS(1377), [anon_sym_move] = ACTIONS(1377), [sym_integer_literal] = ACTIONS(1375), [aux_sym_string_literal_token1] = ACTIONS(1375), [sym_char_literal] = ACTIONS(1375), [anon_sym_true] = ACTIONS(1377), [anon_sym_false] = ACTIONS(1377), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1377), [sym_metavariable] = ACTIONS(1375), [sym_raw_string_literal] = ACTIONS(1375), [sym_float_literal] = ACTIONS(1375), [sym_block_comment] = ACTIONS(3), }, [355] = { [ts_builtin_sym_end] = ACTIONS(1379), [sym_identifier] = ACTIONS(1381), [anon_sym_SEMI] = ACTIONS(1379), [anon_sym_u8] = ACTIONS(1381), [anon_sym_i8] = ACTIONS(1381), [anon_sym_u16] = ACTIONS(1381), [anon_sym_i16] = ACTIONS(1381), [anon_sym_u32] = ACTIONS(1381), [anon_sym_i32] = ACTIONS(1381), [anon_sym_u64] = ACTIONS(1381), [anon_sym_i64] = ACTIONS(1381), [anon_sym_u128] = ACTIONS(1381), [anon_sym_i128] = ACTIONS(1381), [anon_sym_u256] = ACTIONS(1381), [anon_sym_i256] = ACTIONS(1381), [anon_sym_b256] = ACTIONS(1381), [anon_sym_isize] = ACTIONS(1381), [anon_sym_usize] = ACTIONS(1381), [anon_sym_f32] = ACTIONS(1381), [anon_sym_f64] = ACTIONS(1381), [anon_sym_bool] = ACTIONS(1381), [anon_sym_char] = ACTIONS(1381), [anon_sym_str] = ACTIONS(1381), [anon_sym_LBRACK] = ACTIONS(1379), [anon_sym_contract] = ACTIONS(1381), [anon_sym_script] = ACTIONS(1381), [anon_sym_predicate] = ACTIONS(1381), [anon_sym_library] = ACTIONS(1381), [anon_sym_SQUOTE] = ACTIONS(1381), [anon_sym_abi] = ACTIONS(1381), [anon_sym_break] = ACTIONS(1381), [anon_sym_configurable] = ACTIONS(1381), [anon_sym_const] = ACTIONS(1381), [anon_sym_continue] = ACTIONS(1381), [anon_sym_default] = ACTIONS(1381), [anon_sym_mod] = ACTIONS(1381), [anon_sym_enum] = ACTIONS(1381), [anon_sym_fn] = ACTIONS(1381), [anon_sym_for] = ACTIONS(1381), [anon_sym_if] = ACTIONS(1381), [anon_sym_impl] = ACTIONS(1381), [anon_sym_let] = ACTIONS(1381), [anon_sym_match] = ACTIONS(1381), [anon_sym_pub] = ACTIONS(1381), [anon_sym_return] = ACTIONS(1381), [anon_sym_storage] = ACTIONS(1381), [anon_sym_struct] = ACTIONS(1381), [anon_sym_trait] = ACTIONS(1381), [anon_sym_type] = ACTIONS(1381), [anon_sym_use] = ACTIONS(1381), [anon_sym_while] = ACTIONS(1381), [anon_sym_POUND] = ACTIONS(1379), [anon_sym_BANG] = ACTIONS(1379), [anon_sym_LBRACE] = ACTIONS(1379), [anon_sym_RBRACE] = ACTIONS(1379), [anon_sym_LPAREN] = ACTIONS(1379), [anon_sym_asm] = ACTIONS(1381), [anon_sym_LT] = ACTIONS(1379), [anon_sym_COLON_COLON] = ACTIONS(1379), [anon_sym_STAR] = ACTIONS(1379), [anon_sym_AMP] = ACTIONS(1379), [anon_sym_DOT_DOT] = ACTIONS(1379), [anon_sym_DASH] = ACTIONS(1379), [anon_sym_PIPE] = ACTIONS(1379), [anon_sym_yield] = ACTIONS(1381), [anon_sym_move] = ACTIONS(1381), [sym_integer_literal] = ACTIONS(1379), [aux_sym_string_literal_token1] = ACTIONS(1379), [sym_char_literal] = ACTIONS(1379), [anon_sym_true] = ACTIONS(1381), [anon_sym_false] = ACTIONS(1381), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1381), [sym_metavariable] = ACTIONS(1379), [sym_raw_string_literal] = ACTIONS(1379), [sym_float_literal] = ACTIONS(1379), [sym_block_comment] = ACTIONS(3), }, [356] = { [ts_builtin_sym_end] = ACTIONS(1383), [sym_identifier] = ACTIONS(1385), [anon_sym_SEMI] = ACTIONS(1383), [anon_sym_u8] = ACTIONS(1385), [anon_sym_i8] = ACTIONS(1385), [anon_sym_u16] = ACTIONS(1385), [anon_sym_i16] = ACTIONS(1385), [anon_sym_u32] = ACTIONS(1385), [anon_sym_i32] = ACTIONS(1385), [anon_sym_u64] = ACTIONS(1385), [anon_sym_i64] = ACTIONS(1385), [anon_sym_u128] = ACTIONS(1385), [anon_sym_i128] = ACTIONS(1385), [anon_sym_u256] = ACTIONS(1385), [anon_sym_i256] = ACTIONS(1385), [anon_sym_b256] = ACTIONS(1385), [anon_sym_isize] = ACTIONS(1385), [anon_sym_usize] = ACTIONS(1385), [anon_sym_f32] = ACTIONS(1385), [anon_sym_f64] = ACTIONS(1385), [anon_sym_bool] = ACTIONS(1385), [anon_sym_char] = ACTIONS(1385), [anon_sym_str] = ACTIONS(1385), [anon_sym_LBRACK] = ACTIONS(1383), [anon_sym_contract] = ACTIONS(1385), [anon_sym_script] = ACTIONS(1385), [anon_sym_predicate] = ACTIONS(1385), [anon_sym_library] = ACTIONS(1385), [anon_sym_SQUOTE] = ACTIONS(1385), [anon_sym_abi] = ACTIONS(1385), [anon_sym_break] = ACTIONS(1385), [anon_sym_configurable] = ACTIONS(1385), [anon_sym_const] = ACTIONS(1385), [anon_sym_continue] = ACTIONS(1385), [anon_sym_default] = ACTIONS(1385), [anon_sym_mod] = ACTIONS(1385), [anon_sym_enum] = ACTIONS(1385), [anon_sym_fn] = ACTIONS(1385), [anon_sym_for] = ACTIONS(1385), [anon_sym_if] = ACTIONS(1385), [anon_sym_impl] = ACTIONS(1385), [anon_sym_let] = ACTIONS(1385), [anon_sym_match] = ACTIONS(1385), [anon_sym_pub] = ACTIONS(1385), [anon_sym_return] = ACTIONS(1385), [anon_sym_storage] = ACTIONS(1385), [anon_sym_struct] = ACTIONS(1385), [anon_sym_trait] = ACTIONS(1385), [anon_sym_type] = ACTIONS(1385), [anon_sym_use] = ACTIONS(1385), [anon_sym_while] = ACTIONS(1385), [anon_sym_POUND] = ACTIONS(1383), [anon_sym_BANG] = ACTIONS(1383), [anon_sym_LBRACE] = ACTIONS(1383), [anon_sym_RBRACE] = ACTIONS(1383), [anon_sym_LPAREN] = ACTIONS(1383), [anon_sym_asm] = ACTIONS(1385), [anon_sym_LT] = ACTIONS(1383), [anon_sym_COLON_COLON] = ACTIONS(1383), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP] = ACTIONS(1383), [anon_sym_DOT_DOT] = ACTIONS(1383), [anon_sym_DASH] = ACTIONS(1383), [anon_sym_PIPE] = ACTIONS(1383), [anon_sym_yield] = ACTIONS(1385), [anon_sym_move] = ACTIONS(1385), [sym_integer_literal] = ACTIONS(1383), [aux_sym_string_literal_token1] = ACTIONS(1383), [sym_char_literal] = ACTIONS(1383), [anon_sym_true] = ACTIONS(1385), [anon_sym_false] = ACTIONS(1385), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1385), [sym_metavariable] = ACTIONS(1383), [sym_raw_string_literal] = ACTIONS(1383), [sym_float_literal] = ACTIONS(1383), [sym_block_comment] = ACTIONS(3), }, [357] = { [ts_builtin_sym_end] = ACTIONS(1387), [sym_identifier] = ACTIONS(1389), [anon_sym_SEMI] = ACTIONS(1387), [anon_sym_u8] = ACTIONS(1389), [anon_sym_i8] = ACTIONS(1389), [anon_sym_u16] = ACTIONS(1389), [anon_sym_i16] = ACTIONS(1389), [anon_sym_u32] = ACTIONS(1389), [anon_sym_i32] = ACTIONS(1389), [anon_sym_u64] = ACTIONS(1389), [anon_sym_i64] = ACTIONS(1389), [anon_sym_u128] = ACTIONS(1389), [anon_sym_i128] = ACTIONS(1389), [anon_sym_u256] = ACTIONS(1389), [anon_sym_i256] = ACTIONS(1389), [anon_sym_b256] = ACTIONS(1389), [anon_sym_isize] = ACTIONS(1389), [anon_sym_usize] = ACTIONS(1389), [anon_sym_f32] = ACTIONS(1389), [anon_sym_f64] = ACTIONS(1389), [anon_sym_bool] = ACTIONS(1389), [anon_sym_char] = ACTIONS(1389), [anon_sym_str] = ACTIONS(1389), [anon_sym_LBRACK] = ACTIONS(1387), [anon_sym_contract] = ACTIONS(1389), [anon_sym_script] = ACTIONS(1389), [anon_sym_predicate] = ACTIONS(1389), [anon_sym_library] = ACTIONS(1389), [anon_sym_SQUOTE] = ACTIONS(1389), [anon_sym_abi] = ACTIONS(1389), [anon_sym_break] = ACTIONS(1389), [anon_sym_configurable] = ACTIONS(1389), [anon_sym_const] = ACTIONS(1389), [anon_sym_continue] = ACTIONS(1389), [anon_sym_default] = ACTIONS(1389), [anon_sym_mod] = ACTIONS(1389), [anon_sym_enum] = ACTIONS(1389), [anon_sym_fn] = ACTIONS(1389), [anon_sym_for] = ACTIONS(1389), [anon_sym_if] = ACTIONS(1389), [anon_sym_impl] = ACTIONS(1389), [anon_sym_let] = ACTIONS(1389), [anon_sym_match] = ACTIONS(1389), [anon_sym_pub] = ACTIONS(1389), [anon_sym_return] = ACTIONS(1389), [anon_sym_storage] = ACTIONS(1389), [anon_sym_struct] = ACTIONS(1389), [anon_sym_trait] = ACTIONS(1389), [anon_sym_type] = ACTIONS(1389), [anon_sym_use] = ACTIONS(1389), [anon_sym_while] = ACTIONS(1389), [anon_sym_POUND] = ACTIONS(1387), [anon_sym_BANG] = ACTIONS(1387), [anon_sym_LBRACE] = ACTIONS(1387), [anon_sym_RBRACE] = ACTIONS(1387), [anon_sym_LPAREN] = ACTIONS(1387), [anon_sym_asm] = ACTIONS(1389), [anon_sym_LT] = ACTIONS(1387), [anon_sym_COLON_COLON] = ACTIONS(1387), [anon_sym_STAR] = ACTIONS(1387), [anon_sym_AMP] = ACTIONS(1387), [anon_sym_DOT_DOT] = ACTIONS(1387), [anon_sym_DASH] = ACTIONS(1387), [anon_sym_PIPE] = ACTIONS(1387), [anon_sym_yield] = ACTIONS(1389), [anon_sym_move] = ACTIONS(1389), [sym_integer_literal] = ACTIONS(1387), [aux_sym_string_literal_token1] = ACTIONS(1387), [sym_char_literal] = ACTIONS(1387), [anon_sym_true] = ACTIONS(1389), [anon_sym_false] = ACTIONS(1389), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1389), [sym_metavariable] = ACTIONS(1387), [sym_raw_string_literal] = ACTIONS(1387), [sym_float_literal] = ACTIONS(1387), [sym_block_comment] = ACTIONS(3), }, [358] = { [ts_builtin_sym_end] = ACTIONS(1391), [sym_identifier] = ACTIONS(1393), [anon_sym_SEMI] = ACTIONS(1391), [anon_sym_u8] = ACTIONS(1393), [anon_sym_i8] = ACTIONS(1393), [anon_sym_u16] = ACTIONS(1393), [anon_sym_i16] = ACTIONS(1393), [anon_sym_u32] = ACTIONS(1393), [anon_sym_i32] = ACTIONS(1393), [anon_sym_u64] = ACTIONS(1393), [anon_sym_i64] = ACTIONS(1393), [anon_sym_u128] = ACTIONS(1393), [anon_sym_i128] = ACTIONS(1393), [anon_sym_u256] = ACTIONS(1393), [anon_sym_i256] = ACTIONS(1393), [anon_sym_b256] = ACTIONS(1393), [anon_sym_isize] = ACTIONS(1393), [anon_sym_usize] = ACTIONS(1393), [anon_sym_f32] = ACTIONS(1393), [anon_sym_f64] = ACTIONS(1393), [anon_sym_bool] = ACTIONS(1393), [anon_sym_char] = ACTIONS(1393), [anon_sym_str] = ACTIONS(1393), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_contract] = ACTIONS(1393), [anon_sym_script] = ACTIONS(1393), [anon_sym_predicate] = ACTIONS(1393), [anon_sym_library] = ACTIONS(1393), [anon_sym_SQUOTE] = ACTIONS(1393), [anon_sym_abi] = ACTIONS(1393), [anon_sym_break] = ACTIONS(1393), [anon_sym_configurable] = ACTIONS(1393), [anon_sym_const] = ACTIONS(1393), [anon_sym_continue] = ACTIONS(1393), [anon_sym_default] = ACTIONS(1393), [anon_sym_mod] = ACTIONS(1393), [anon_sym_enum] = ACTIONS(1393), [anon_sym_fn] = ACTIONS(1393), [anon_sym_for] = ACTIONS(1393), [anon_sym_if] = ACTIONS(1393), [anon_sym_impl] = ACTIONS(1393), [anon_sym_let] = ACTIONS(1393), [anon_sym_match] = ACTIONS(1393), [anon_sym_pub] = ACTIONS(1393), [anon_sym_return] = ACTIONS(1393), [anon_sym_storage] = ACTIONS(1393), [anon_sym_struct] = ACTIONS(1393), [anon_sym_trait] = ACTIONS(1393), [anon_sym_type] = ACTIONS(1393), [anon_sym_use] = ACTIONS(1393), [anon_sym_while] = ACTIONS(1393), [anon_sym_POUND] = ACTIONS(1391), [anon_sym_BANG] = ACTIONS(1391), [anon_sym_LBRACE] = ACTIONS(1391), [anon_sym_RBRACE] = ACTIONS(1391), [anon_sym_LPAREN] = ACTIONS(1391), [anon_sym_asm] = ACTIONS(1393), [anon_sym_LT] = ACTIONS(1391), [anon_sym_COLON_COLON] = ACTIONS(1391), [anon_sym_STAR] = ACTIONS(1391), [anon_sym_AMP] = ACTIONS(1391), [anon_sym_DOT_DOT] = ACTIONS(1391), [anon_sym_DASH] = ACTIONS(1391), [anon_sym_PIPE] = ACTIONS(1391), [anon_sym_yield] = ACTIONS(1393), [anon_sym_move] = ACTIONS(1393), [sym_integer_literal] = ACTIONS(1391), [aux_sym_string_literal_token1] = ACTIONS(1391), [sym_char_literal] = ACTIONS(1391), [anon_sym_true] = ACTIONS(1393), [anon_sym_false] = ACTIONS(1393), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1393), [sym_metavariable] = ACTIONS(1391), [sym_raw_string_literal] = ACTIONS(1391), [sym_float_literal] = ACTIONS(1391), [sym_block_comment] = ACTIONS(3), }, [359] = { [ts_builtin_sym_end] = ACTIONS(1395), [sym_identifier] = ACTIONS(1397), [anon_sym_SEMI] = ACTIONS(1395), [anon_sym_u8] = ACTIONS(1397), [anon_sym_i8] = ACTIONS(1397), [anon_sym_u16] = ACTIONS(1397), [anon_sym_i16] = ACTIONS(1397), [anon_sym_u32] = ACTIONS(1397), [anon_sym_i32] = ACTIONS(1397), [anon_sym_u64] = ACTIONS(1397), [anon_sym_i64] = ACTIONS(1397), [anon_sym_u128] = ACTIONS(1397), [anon_sym_i128] = ACTIONS(1397), [anon_sym_u256] = ACTIONS(1397), [anon_sym_i256] = ACTIONS(1397), [anon_sym_b256] = ACTIONS(1397), [anon_sym_isize] = ACTIONS(1397), [anon_sym_usize] = ACTIONS(1397), [anon_sym_f32] = ACTIONS(1397), [anon_sym_f64] = ACTIONS(1397), [anon_sym_bool] = ACTIONS(1397), [anon_sym_char] = ACTIONS(1397), [anon_sym_str] = ACTIONS(1397), [anon_sym_LBRACK] = ACTIONS(1395), [anon_sym_contract] = ACTIONS(1397), [anon_sym_script] = ACTIONS(1397), [anon_sym_predicate] = ACTIONS(1397), [anon_sym_library] = ACTIONS(1397), [anon_sym_SQUOTE] = ACTIONS(1397), [anon_sym_abi] = ACTIONS(1397), [anon_sym_break] = ACTIONS(1397), [anon_sym_configurable] = ACTIONS(1397), [anon_sym_const] = ACTIONS(1397), [anon_sym_continue] = ACTIONS(1397), [anon_sym_default] = ACTIONS(1397), [anon_sym_mod] = ACTIONS(1397), [anon_sym_enum] = ACTIONS(1397), [anon_sym_fn] = ACTIONS(1397), [anon_sym_for] = ACTIONS(1397), [anon_sym_if] = ACTIONS(1397), [anon_sym_impl] = ACTIONS(1397), [anon_sym_let] = ACTIONS(1397), [anon_sym_match] = ACTIONS(1397), [anon_sym_pub] = ACTIONS(1397), [anon_sym_return] = ACTIONS(1397), [anon_sym_storage] = ACTIONS(1397), [anon_sym_struct] = ACTIONS(1397), [anon_sym_trait] = ACTIONS(1397), [anon_sym_type] = ACTIONS(1397), [anon_sym_use] = ACTIONS(1397), [anon_sym_while] = ACTIONS(1397), [anon_sym_POUND] = ACTIONS(1395), [anon_sym_BANG] = ACTIONS(1395), [anon_sym_LBRACE] = ACTIONS(1395), [anon_sym_RBRACE] = ACTIONS(1395), [anon_sym_LPAREN] = ACTIONS(1395), [anon_sym_asm] = ACTIONS(1397), [anon_sym_LT] = ACTIONS(1395), [anon_sym_COLON_COLON] = ACTIONS(1395), [anon_sym_STAR] = ACTIONS(1395), [anon_sym_AMP] = ACTIONS(1395), [anon_sym_DOT_DOT] = ACTIONS(1395), [anon_sym_DASH] = ACTIONS(1395), [anon_sym_PIPE] = ACTIONS(1395), [anon_sym_yield] = ACTIONS(1397), [anon_sym_move] = ACTIONS(1397), [sym_integer_literal] = ACTIONS(1395), [aux_sym_string_literal_token1] = ACTIONS(1395), [sym_char_literal] = ACTIONS(1395), [anon_sym_true] = ACTIONS(1397), [anon_sym_false] = ACTIONS(1397), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1397), [sym_metavariable] = ACTIONS(1395), [sym_raw_string_literal] = ACTIONS(1395), [sym_float_literal] = ACTIONS(1395), [sym_block_comment] = ACTIONS(3), }, [360] = { [ts_builtin_sym_end] = ACTIONS(1399), [sym_identifier] = ACTIONS(1401), [anon_sym_SEMI] = ACTIONS(1399), [anon_sym_u8] = ACTIONS(1401), [anon_sym_i8] = ACTIONS(1401), [anon_sym_u16] = ACTIONS(1401), [anon_sym_i16] = ACTIONS(1401), [anon_sym_u32] = ACTIONS(1401), [anon_sym_i32] = ACTIONS(1401), [anon_sym_u64] = ACTIONS(1401), [anon_sym_i64] = ACTIONS(1401), [anon_sym_u128] = ACTIONS(1401), [anon_sym_i128] = ACTIONS(1401), [anon_sym_u256] = ACTIONS(1401), [anon_sym_i256] = ACTIONS(1401), [anon_sym_b256] = ACTIONS(1401), [anon_sym_isize] = ACTIONS(1401), [anon_sym_usize] = ACTIONS(1401), [anon_sym_f32] = ACTIONS(1401), [anon_sym_f64] = ACTIONS(1401), [anon_sym_bool] = ACTIONS(1401), [anon_sym_char] = ACTIONS(1401), [anon_sym_str] = ACTIONS(1401), [anon_sym_LBRACK] = ACTIONS(1399), [anon_sym_contract] = ACTIONS(1401), [anon_sym_script] = ACTIONS(1401), [anon_sym_predicate] = ACTIONS(1401), [anon_sym_library] = ACTIONS(1401), [anon_sym_SQUOTE] = ACTIONS(1401), [anon_sym_abi] = ACTIONS(1401), [anon_sym_break] = ACTIONS(1401), [anon_sym_configurable] = ACTIONS(1401), [anon_sym_const] = ACTIONS(1401), [anon_sym_continue] = ACTIONS(1401), [anon_sym_default] = ACTIONS(1401), [anon_sym_mod] = ACTIONS(1401), [anon_sym_enum] = ACTIONS(1401), [anon_sym_fn] = ACTIONS(1401), [anon_sym_for] = ACTIONS(1401), [anon_sym_if] = ACTIONS(1401), [anon_sym_impl] = ACTIONS(1401), [anon_sym_let] = ACTIONS(1401), [anon_sym_match] = ACTIONS(1401), [anon_sym_pub] = ACTIONS(1401), [anon_sym_return] = ACTIONS(1401), [anon_sym_storage] = ACTIONS(1401), [anon_sym_struct] = ACTIONS(1401), [anon_sym_trait] = ACTIONS(1401), [anon_sym_type] = ACTIONS(1401), [anon_sym_use] = ACTIONS(1401), [anon_sym_while] = ACTIONS(1401), [anon_sym_POUND] = ACTIONS(1399), [anon_sym_BANG] = ACTIONS(1399), [anon_sym_LBRACE] = ACTIONS(1399), [anon_sym_RBRACE] = ACTIONS(1399), [anon_sym_LPAREN] = ACTIONS(1399), [anon_sym_asm] = ACTIONS(1401), [anon_sym_LT] = ACTIONS(1399), [anon_sym_COLON_COLON] = ACTIONS(1399), [anon_sym_STAR] = ACTIONS(1399), [anon_sym_AMP] = ACTIONS(1399), [anon_sym_DOT_DOT] = ACTIONS(1399), [anon_sym_DASH] = ACTIONS(1399), [anon_sym_PIPE] = ACTIONS(1399), [anon_sym_yield] = ACTIONS(1401), [anon_sym_move] = ACTIONS(1401), [sym_integer_literal] = ACTIONS(1399), [aux_sym_string_literal_token1] = ACTIONS(1399), [sym_char_literal] = ACTIONS(1399), [anon_sym_true] = ACTIONS(1401), [anon_sym_false] = ACTIONS(1401), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1401), [sym_metavariable] = ACTIONS(1399), [sym_raw_string_literal] = ACTIONS(1399), [sym_float_literal] = ACTIONS(1399), [sym_block_comment] = ACTIONS(3), }, [361] = { [ts_builtin_sym_end] = ACTIONS(1403), [sym_identifier] = ACTIONS(1405), [anon_sym_SEMI] = ACTIONS(1403), [anon_sym_u8] = ACTIONS(1405), [anon_sym_i8] = ACTIONS(1405), [anon_sym_u16] = ACTIONS(1405), [anon_sym_i16] = ACTIONS(1405), [anon_sym_u32] = ACTIONS(1405), [anon_sym_i32] = ACTIONS(1405), [anon_sym_u64] = ACTIONS(1405), [anon_sym_i64] = ACTIONS(1405), [anon_sym_u128] = ACTIONS(1405), [anon_sym_i128] = ACTIONS(1405), [anon_sym_u256] = ACTIONS(1405), [anon_sym_i256] = ACTIONS(1405), [anon_sym_b256] = ACTIONS(1405), [anon_sym_isize] = ACTIONS(1405), [anon_sym_usize] = ACTIONS(1405), [anon_sym_f32] = ACTIONS(1405), [anon_sym_f64] = ACTIONS(1405), [anon_sym_bool] = ACTIONS(1405), [anon_sym_char] = ACTIONS(1405), [anon_sym_str] = ACTIONS(1405), [anon_sym_LBRACK] = ACTIONS(1403), [anon_sym_contract] = ACTIONS(1405), [anon_sym_script] = ACTIONS(1405), [anon_sym_predicate] = ACTIONS(1405), [anon_sym_library] = ACTIONS(1405), [anon_sym_SQUOTE] = ACTIONS(1405), [anon_sym_abi] = ACTIONS(1405), [anon_sym_break] = ACTIONS(1405), [anon_sym_configurable] = ACTIONS(1405), [anon_sym_const] = ACTIONS(1405), [anon_sym_continue] = ACTIONS(1405), [anon_sym_default] = ACTIONS(1405), [anon_sym_mod] = ACTIONS(1405), [anon_sym_enum] = ACTIONS(1405), [anon_sym_fn] = ACTIONS(1405), [anon_sym_for] = ACTIONS(1405), [anon_sym_if] = ACTIONS(1405), [anon_sym_impl] = ACTIONS(1405), [anon_sym_let] = ACTIONS(1405), [anon_sym_match] = ACTIONS(1405), [anon_sym_pub] = ACTIONS(1405), [anon_sym_return] = ACTIONS(1405), [anon_sym_storage] = ACTIONS(1405), [anon_sym_struct] = ACTIONS(1405), [anon_sym_trait] = ACTIONS(1405), [anon_sym_type] = ACTIONS(1405), [anon_sym_use] = ACTIONS(1405), [anon_sym_while] = ACTIONS(1405), [anon_sym_POUND] = ACTIONS(1403), [anon_sym_BANG] = ACTIONS(1403), [anon_sym_LBRACE] = ACTIONS(1403), [anon_sym_RBRACE] = ACTIONS(1403), [anon_sym_LPAREN] = ACTIONS(1403), [anon_sym_asm] = ACTIONS(1405), [anon_sym_LT] = ACTIONS(1403), [anon_sym_COLON_COLON] = ACTIONS(1403), [anon_sym_STAR] = ACTIONS(1403), [anon_sym_AMP] = ACTIONS(1403), [anon_sym_DOT_DOT] = ACTIONS(1403), [anon_sym_DASH] = ACTIONS(1403), [anon_sym_PIPE] = ACTIONS(1403), [anon_sym_yield] = ACTIONS(1405), [anon_sym_move] = ACTIONS(1405), [sym_integer_literal] = ACTIONS(1403), [aux_sym_string_literal_token1] = ACTIONS(1403), [sym_char_literal] = ACTIONS(1403), [anon_sym_true] = ACTIONS(1405), [anon_sym_false] = ACTIONS(1405), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1405), [sym_metavariable] = ACTIONS(1403), [sym_raw_string_literal] = ACTIONS(1403), [sym_float_literal] = ACTIONS(1403), [sym_block_comment] = ACTIONS(3), }, [362] = { [ts_builtin_sym_end] = ACTIONS(1407), [sym_identifier] = ACTIONS(1409), [anon_sym_SEMI] = ACTIONS(1407), [anon_sym_u8] = ACTIONS(1409), [anon_sym_i8] = ACTIONS(1409), [anon_sym_u16] = ACTIONS(1409), [anon_sym_i16] = ACTIONS(1409), [anon_sym_u32] = ACTIONS(1409), [anon_sym_i32] = ACTIONS(1409), [anon_sym_u64] = ACTIONS(1409), [anon_sym_i64] = ACTIONS(1409), [anon_sym_u128] = ACTIONS(1409), [anon_sym_i128] = ACTIONS(1409), [anon_sym_u256] = ACTIONS(1409), [anon_sym_i256] = ACTIONS(1409), [anon_sym_b256] = ACTIONS(1409), [anon_sym_isize] = ACTIONS(1409), [anon_sym_usize] = ACTIONS(1409), [anon_sym_f32] = ACTIONS(1409), [anon_sym_f64] = ACTIONS(1409), [anon_sym_bool] = ACTIONS(1409), [anon_sym_char] = ACTIONS(1409), [anon_sym_str] = ACTIONS(1409), [anon_sym_LBRACK] = ACTIONS(1407), [anon_sym_contract] = ACTIONS(1409), [anon_sym_script] = ACTIONS(1409), [anon_sym_predicate] = ACTIONS(1409), [anon_sym_library] = ACTIONS(1409), [anon_sym_SQUOTE] = ACTIONS(1409), [anon_sym_abi] = ACTIONS(1409), [anon_sym_break] = ACTIONS(1409), [anon_sym_configurable] = ACTIONS(1409), [anon_sym_const] = ACTIONS(1409), [anon_sym_continue] = ACTIONS(1409), [anon_sym_default] = ACTIONS(1409), [anon_sym_mod] = ACTIONS(1409), [anon_sym_enum] = ACTIONS(1409), [anon_sym_fn] = ACTIONS(1409), [anon_sym_for] = ACTIONS(1409), [anon_sym_if] = ACTIONS(1409), [anon_sym_impl] = ACTIONS(1409), [anon_sym_let] = ACTIONS(1409), [anon_sym_match] = ACTIONS(1409), [anon_sym_pub] = ACTIONS(1409), [anon_sym_return] = ACTIONS(1409), [anon_sym_storage] = ACTIONS(1409), [anon_sym_struct] = ACTIONS(1409), [anon_sym_trait] = ACTIONS(1409), [anon_sym_type] = ACTIONS(1409), [anon_sym_use] = ACTIONS(1409), [anon_sym_while] = ACTIONS(1409), [anon_sym_POUND] = ACTIONS(1407), [anon_sym_BANG] = ACTIONS(1407), [anon_sym_LBRACE] = ACTIONS(1407), [anon_sym_RBRACE] = ACTIONS(1407), [anon_sym_LPAREN] = ACTIONS(1407), [anon_sym_asm] = ACTIONS(1409), [anon_sym_LT] = ACTIONS(1407), [anon_sym_COLON_COLON] = ACTIONS(1407), [anon_sym_STAR] = ACTIONS(1407), [anon_sym_AMP] = ACTIONS(1407), [anon_sym_DOT_DOT] = ACTIONS(1407), [anon_sym_DASH] = ACTIONS(1407), [anon_sym_PIPE] = ACTIONS(1407), [anon_sym_yield] = ACTIONS(1409), [anon_sym_move] = ACTIONS(1409), [sym_integer_literal] = ACTIONS(1407), [aux_sym_string_literal_token1] = ACTIONS(1407), [sym_char_literal] = ACTIONS(1407), [anon_sym_true] = ACTIONS(1409), [anon_sym_false] = ACTIONS(1409), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1409), [sym_metavariable] = ACTIONS(1407), [sym_raw_string_literal] = ACTIONS(1407), [sym_float_literal] = ACTIONS(1407), [sym_block_comment] = ACTIONS(3), }, [363] = { [ts_builtin_sym_end] = ACTIONS(1411), [sym_identifier] = ACTIONS(1413), [anon_sym_SEMI] = ACTIONS(1411), [anon_sym_u8] = ACTIONS(1413), [anon_sym_i8] = ACTIONS(1413), [anon_sym_u16] = ACTIONS(1413), [anon_sym_i16] = ACTIONS(1413), [anon_sym_u32] = ACTIONS(1413), [anon_sym_i32] = ACTIONS(1413), [anon_sym_u64] = ACTIONS(1413), [anon_sym_i64] = ACTIONS(1413), [anon_sym_u128] = ACTIONS(1413), [anon_sym_i128] = ACTIONS(1413), [anon_sym_u256] = ACTIONS(1413), [anon_sym_i256] = ACTIONS(1413), [anon_sym_b256] = ACTIONS(1413), [anon_sym_isize] = ACTIONS(1413), [anon_sym_usize] = ACTIONS(1413), [anon_sym_f32] = ACTIONS(1413), [anon_sym_f64] = ACTIONS(1413), [anon_sym_bool] = ACTIONS(1413), [anon_sym_char] = ACTIONS(1413), [anon_sym_str] = ACTIONS(1413), [anon_sym_LBRACK] = ACTIONS(1411), [anon_sym_contract] = ACTIONS(1413), [anon_sym_script] = ACTIONS(1413), [anon_sym_predicate] = ACTIONS(1413), [anon_sym_library] = ACTIONS(1413), [anon_sym_SQUOTE] = ACTIONS(1413), [anon_sym_abi] = ACTIONS(1413), [anon_sym_break] = ACTIONS(1413), [anon_sym_configurable] = ACTIONS(1413), [anon_sym_const] = ACTIONS(1413), [anon_sym_continue] = ACTIONS(1413), [anon_sym_default] = ACTIONS(1413), [anon_sym_mod] = ACTIONS(1413), [anon_sym_enum] = ACTIONS(1413), [anon_sym_fn] = ACTIONS(1413), [anon_sym_for] = ACTIONS(1413), [anon_sym_if] = ACTIONS(1413), [anon_sym_impl] = ACTIONS(1413), [anon_sym_let] = ACTIONS(1413), [anon_sym_match] = ACTIONS(1413), [anon_sym_pub] = ACTIONS(1413), [anon_sym_return] = ACTIONS(1413), [anon_sym_storage] = ACTIONS(1413), [anon_sym_struct] = ACTIONS(1413), [anon_sym_trait] = ACTIONS(1413), [anon_sym_type] = ACTIONS(1413), [anon_sym_use] = ACTIONS(1413), [anon_sym_while] = ACTIONS(1413), [anon_sym_POUND] = ACTIONS(1411), [anon_sym_BANG] = ACTIONS(1411), [anon_sym_LBRACE] = ACTIONS(1411), [anon_sym_RBRACE] = ACTIONS(1411), [anon_sym_LPAREN] = ACTIONS(1411), [anon_sym_asm] = ACTIONS(1413), [anon_sym_LT] = ACTIONS(1411), [anon_sym_COLON_COLON] = ACTIONS(1411), [anon_sym_STAR] = ACTIONS(1411), [anon_sym_AMP] = ACTIONS(1411), [anon_sym_DOT_DOT] = ACTIONS(1411), [anon_sym_DASH] = ACTIONS(1411), [anon_sym_PIPE] = ACTIONS(1411), [anon_sym_yield] = ACTIONS(1413), [anon_sym_move] = ACTIONS(1413), [sym_integer_literal] = ACTIONS(1411), [aux_sym_string_literal_token1] = ACTIONS(1411), [sym_char_literal] = ACTIONS(1411), [anon_sym_true] = ACTIONS(1413), [anon_sym_false] = ACTIONS(1413), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1413), [sym_metavariable] = ACTIONS(1411), [sym_raw_string_literal] = ACTIONS(1411), [sym_float_literal] = ACTIONS(1411), [sym_block_comment] = ACTIONS(3), }, [364] = { [ts_builtin_sym_end] = ACTIONS(1415), [sym_identifier] = ACTIONS(1417), [anon_sym_SEMI] = ACTIONS(1415), [anon_sym_u8] = ACTIONS(1417), [anon_sym_i8] = ACTIONS(1417), [anon_sym_u16] = ACTIONS(1417), [anon_sym_i16] = ACTIONS(1417), [anon_sym_u32] = ACTIONS(1417), [anon_sym_i32] = ACTIONS(1417), [anon_sym_u64] = ACTIONS(1417), [anon_sym_i64] = ACTIONS(1417), [anon_sym_u128] = ACTIONS(1417), [anon_sym_i128] = ACTIONS(1417), [anon_sym_u256] = ACTIONS(1417), [anon_sym_i256] = ACTIONS(1417), [anon_sym_b256] = ACTIONS(1417), [anon_sym_isize] = ACTIONS(1417), [anon_sym_usize] = ACTIONS(1417), [anon_sym_f32] = ACTIONS(1417), [anon_sym_f64] = ACTIONS(1417), [anon_sym_bool] = ACTIONS(1417), [anon_sym_char] = ACTIONS(1417), [anon_sym_str] = ACTIONS(1417), [anon_sym_LBRACK] = ACTIONS(1415), [anon_sym_contract] = ACTIONS(1417), [anon_sym_script] = ACTIONS(1417), [anon_sym_predicate] = ACTIONS(1417), [anon_sym_library] = ACTIONS(1417), [anon_sym_SQUOTE] = ACTIONS(1417), [anon_sym_abi] = ACTIONS(1417), [anon_sym_break] = ACTIONS(1417), [anon_sym_configurable] = ACTIONS(1417), [anon_sym_const] = ACTIONS(1417), [anon_sym_continue] = ACTIONS(1417), [anon_sym_default] = ACTIONS(1417), [anon_sym_mod] = ACTIONS(1417), [anon_sym_enum] = ACTIONS(1417), [anon_sym_fn] = ACTIONS(1417), [anon_sym_for] = ACTIONS(1417), [anon_sym_if] = ACTIONS(1417), [anon_sym_impl] = ACTIONS(1417), [anon_sym_let] = ACTIONS(1417), [anon_sym_match] = ACTIONS(1417), [anon_sym_pub] = ACTIONS(1417), [anon_sym_return] = ACTIONS(1417), [anon_sym_storage] = ACTIONS(1417), [anon_sym_struct] = ACTIONS(1417), [anon_sym_trait] = ACTIONS(1417), [anon_sym_type] = ACTIONS(1417), [anon_sym_use] = ACTIONS(1417), [anon_sym_while] = ACTIONS(1417), [anon_sym_POUND] = ACTIONS(1415), [anon_sym_BANG] = ACTIONS(1415), [anon_sym_LBRACE] = ACTIONS(1415), [anon_sym_RBRACE] = ACTIONS(1415), [anon_sym_LPAREN] = ACTIONS(1415), [anon_sym_asm] = ACTIONS(1417), [anon_sym_LT] = ACTIONS(1415), [anon_sym_COLON_COLON] = ACTIONS(1415), [anon_sym_STAR] = ACTIONS(1415), [anon_sym_AMP] = ACTIONS(1415), [anon_sym_DOT_DOT] = ACTIONS(1415), [anon_sym_DASH] = ACTIONS(1415), [anon_sym_PIPE] = ACTIONS(1415), [anon_sym_yield] = ACTIONS(1417), [anon_sym_move] = ACTIONS(1417), [sym_integer_literal] = ACTIONS(1415), [aux_sym_string_literal_token1] = ACTIONS(1415), [sym_char_literal] = ACTIONS(1415), [anon_sym_true] = ACTIONS(1417), [anon_sym_false] = ACTIONS(1417), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1417), [sym_metavariable] = ACTIONS(1415), [sym_raw_string_literal] = ACTIONS(1415), [sym_float_literal] = ACTIONS(1415), [sym_block_comment] = ACTIONS(3), }, [365] = { [ts_builtin_sym_end] = ACTIONS(1419), [sym_identifier] = ACTIONS(1421), [anon_sym_SEMI] = ACTIONS(1419), [anon_sym_u8] = ACTIONS(1421), [anon_sym_i8] = ACTIONS(1421), [anon_sym_u16] = ACTIONS(1421), [anon_sym_i16] = ACTIONS(1421), [anon_sym_u32] = ACTIONS(1421), [anon_sym_i32] = ACTIONS(1421), [anon_sym_u64] = ACTIONS(1421), [anon_sym_i64] = ACTIONS(1421), [anon_sym_u128] = ACTIONS(1421), [anon_sym_i128] = ACTIONS(1421), [anon_sym_u256] = ACTIONS(1421), [anon_sym_i256] = ACTIONS(1421), [anon_sym_b256] = ACTIONS(1421), [anon_sym_isize] = ACTIONS(1421), [anon_sym_usize] = ACTIONS(1421), [anon_sym_f32] = ACTIONS(1421), [anon_sym_f64] = ACTIONS(1421), [anon_sym_bool] = ACTIONS(1421), [anon_sym_char] = ACTIONS(1421), [anon_sym_str] = ACTIONS(1421), [anon_sym_LBRACK] = ACTIONS(1419), [anon_sym_contract] = ACTIONS(1421), [anon_sym_script] = ACTIONS(1421), [anon_sym_predicate] = ACTIONS(1421), [anon_sym_library] = ACTIONS(1421), [anon_sym_SQUOTE] = ACTIONS(1421), [anon_sym_abi] = ACTIONS(1421), [anon_sym_break] = ACTIONS(1421), [anon_sym_configurable] = ACTIONS(1421), [anon_sym_const] = ACTIONS(1421), [anon_sym_continue] = ACTIONS(1421), [anon_sym_default] = ACTIONS(1421), [anon_sym_mod] = ACTIONS(1421), [anon_sym_enum] = ACTIONS(1421), [anon_sym_fn] = ACTIONS(1421), [anon_sym_for] = ACTIONS(1421), [anon_sym_if] = ACTIONS(1421), [anon_sym_impl] = ACTIONS(1421), [anon_sym_let] = ACTIONS(1421), [anon_sym_match] = ACTIONS(1421), [anon_sym_pub] = ACTIONS(1421), [anon_sym_return] = ACTIONS(1421), [anon_sym_storage] = ACTIONS(1421), [anon_sym_struct] = ACTIONS(1421), [anon_sym_trait] = ACTIONS(1421), [anon_sym_type] = ACTIONS(1421), [anon_sym_use] = ACTIONS(1421), [anon_sym_while] = ACTIONS(1421), [anon_sym_POUND] = ACTIONS(1419), [anon_sym_BANG] = ACTIONS(1419), [anon_sym_LBRACE] = ACTIONS(1419), [anon_sym_RBRACE] = ACTIONS(1419), [anon_sym_LPAREN] = ACTIONS(1419), [anon_sym_asm] = ACTIONS(1421), [anon_sym_LT] = ACTIONS(1419), [anon_sym_COLON_COLON] = ACTIONS(1419), [anon_sym_STAR] = ACTIONS(1419), [anon_sym_AMP] = ACTIONS(1419), [anon_sym_DOT_DOT] = ACTIONS(1419), [anon_sym_DASH] = ACTIONS(1419), [anon_sym_PIPE] = ACTIONS(1419), [anon_sym_yield] = ACTIONS(1421), [anon_sym_move] = ACTIONS(1421), [sym_integer_literal] = ACTIONS(1419), [aux_sym_string_literal_token1] = ACTIONS(1419), [sym_char_literal] = ACTIONS(1419), [anon_sym_true] = ACTIONS(1421), [anon_sym_false] = ACTIONS(1421), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1421), [sym_metavariable] = ACTIONS(1419), [sym_raw_string_literal] = ACTIONS(1419), [sym_float_literal] = ACTIONS(1419), [sym_block_comment] = ACTIONS(3), }, [366] = { [sym_primitive_type] = STATE(1176), [sym_attribute_item] = STATE(414), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_match_arm] = STATE(408), [sym_last_match_arm] = STATE(2139), [sym_match_pattern] = STATE(2173), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1576), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_enum_variant_list_repeat1] = STATE(414), [aux_sym_match_block_repeat1] = STATE(408), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_POUND] = ACTIONS(357), [anon_sym_RBRACE] = ACTIONS(1431), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [367] = { [ts_builtin_sym_end] = ACTIONS(1443), [sym_identifier] = ACTIONS(1445), [anon_sym_SEMI] = ACTIONS(1443), [anon_sym_u8] = ACTIONS(1445), [anon_sym_i8] = ACTIONS(1445), [anon_sym_u16] = ACTIONS(1445), [anon_sym_i16] = ACTIONS(1445), [anon_sym_u32] = ACTIONS(1445), [anon_sym_i32] = ACTIONS(1445), [anon_sym_u64] = ACTIONS(1445), [anon_sym_i64] = ACTIONS(1445), [anon_sym_u128] = ACTIONS(1445), [anon_sym_i128] = ACTIONS(1445), [anon_sym_u256] = ACTIONS(1445), [anon_sym_i256] = ACTIONS(1445), [anon_sym_b256] = ACTIONS(1445), [anon_sym_isize] = ACTIONS(1445), [anon_sym_usize] = ACTIONS(1445), [anon_sym_f32] = ACTIONS(1445), [anon_sym_f64] = ACTIONS(1445), [anon_sym_bool] = ACTIONS(1445), [anon_sym_char] = ACTIONS(1445), [anon_sym_str] = ACTIONS(1445), [anon_sym_LBRACK] = ACTIONS(1443), [anon_sym_contract] = ACTIONS(1445), [anon_sym_script] = ACTIONS(1445), [anon_sym_predicate] = ACTIONS(1445), [anon_sym_library] = ACTIONS(1445), [anon_sym_SQUOTE] = ACTIONS(1445), [anon_sym_abi] = ACTIONS(1445), [anon_sym_break] = ACTIONS(1445), [anon_sym_configurable] = ACTIONS(1445), [anon_sym_const] = ACTIONS(1445), [anon_sym_continue] = ACTIONS(1445), [anon_sym_default] = ACTIONS(1445), [anon_sym_mod] = ACTIONS(1445), [anon_sym_enum] = ACTIONS(1445), [anon_sym_fn] = ACTIONS(1445), [anon_sym_for] = ACTIONS(1445), [anon_sym_if] = ACTIONS(1445), [anon_sym_impl] = ACTIONS(1445), [anon_sym_let] = ACTIONS(1445), [anon_sym_match] = ACTIONS(1445), [anon_sym_pub] = ACTIONS(1445), [anon_sym_return] = ACTIONS(1445), [anon_sym_storage] = ACTIONS(1445), [anon_sym_struct] = ACTIONS(1445), [anon_sym_trait] = ACTIONS(1445), [anon_sym_type] = ACTIONS(1445), [anon_sym_use] = ACTIONS(1445), [anon_sym_while] = ACTIONS(1445), [anon_sym_POUND] = ACTIONS(1443), [anon_sym_BANG] = ACTIONS(1443), [anon_sym_LBRACE] = ACTIONS(1443), [anon_sym_RBRACE] = ACTIONS(1443), [anon_sym_LPAREN] = ACTIONS(1443), [anon_sym_asm] = ACTIONS(1445), [anon_sym_LT] = ACTIONS(1443), [anon_sym_COLON_COLON] = ACTIONS(1443), [anon_sym_STAR] = ACTIONS(1443), [anon_sym_AMP] = ACTIONS(1443), [anon_sym_DOT_DOT] = ACTIONS(1443), [anon_sym_DASH] = ACTIONS(1443), [anon_sym_PIPE] = ACTIONS(1443), [anon_sym_yield] = ACTIONS(1445), [anon_sym_move] = ACTIONS(1445), [sym_integer_literal] = ACTIONS(1443), [aux_sym_string_literal_token1] = ACTIONS(1443), [sym_char_literal] = ACTIONS(1443), [anon_sym_true] = ACTIONS(1445), [anon_sym_false] = ACTIONS(1445), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1445), [sym_metavariable] = ACTIONS(1443), [sym_raw_string_literal] = ACTIONS(1443), [sym_float_literal] = ACTIONS(1443), [sym_block_comment] = ACTIONS(3), }, [368] = { [ts_builtin_sym_end] = ACTIONS(1447), [sym_identifier] = ACTIONS(1449), [anon_sym_SEMI] = ACTIONS(1447), [anon_sym_u8] = ACTIONS(1449), [anon_sym_i8] = ACTIONS(1449), [anon_sym_u16] = ACTIONS(1449), [anon_sym_i16] = ACTIONS(1449), [anon_sym_u32] = ACTIONS(1449), [anon_sym_i32] = ACTIONS(1449), [anon_sym_u64] = ACTIONS(1449), [anon_sym_i64] = ACTIONS(1449), [anon_sym_u128] = ACTIONS(1449), [anon_sym_i128] = ACTIONS(1449), [anon_sym_u256] = ACTIONS(1449), [anon_sym_i256] = ACTIONS(1449), [anon_sym_b256] = ACTIONS(1449), [anon_sym_isize] = ACTIONS(1449), [anon_sym_usize] = ACTIONS(1449), [anon_sym_f32] = ACTIONS(1449), [anon_sym_f64] = ACTIONS(1449), [anon_sym_bool] = ACTIONS(1449), [anon_sym_char] = ACTIONS(1449), [anon_sym_str] = ACTIONS(1449), [anon_sym_LBRACK] = ACTIONS(1447), [anon_sym_contract] = ACTIONS(1449), [anon_sym_script] = ACTIONS(1449), [anon_sym_predicate] = ACTIONS(1449), [anon_sym_library] = ACTIONS(1449), [anon_sym_SQUOTE] = ACTIONS(1449), [anon_sym_abi] = ACTIONS(1449), [anon_sym_break] = ACTIONS(1449), [anon_sym_configurable] = ACTIONS(1449), [anon_sym_const] = ACTIONS(1449), [anon_sym_continue] = ACTIONS(1449), [anon_sym_default] = ACTIONS(1449), [anon_sym_mod] = ACTIONS(1449), [anon_sym_enum] = ACTIONS(1449), [anon_sym_fn] = ACTIONS(1449), [anon_sym_for] = ACTIONS(1449), [anon_sym_if] = ACTIONS(1449), [anon_sym_impl] = ACTIONS(1449), [anon_sym_let] = ACTIONS(1449), [anon_sym_match] = ACTIONS(1449), [anon_sym_pub] = ACTIONS(1449), [anon_sym_return] = ACTIONS(1449), [anon_sym_storage] = ACTIONS(1449), [anon_sym_struct] = ACTIONS(1449), [anon_sym_trait] = ACTIONS(1449), [anon_sym_type] = ACTIONS(1449), [anon_sym_use] = ACTIONS(1449), [anon_sym_while] = ACTIONS(1449), [anon_sym_POUND] = ACTIONS(1447), [anon_sym_BANG] = ACTIONS(1447), [anon_sym_LBRACE] = ACTIONS(1447), [anon_sym_RBRACE] = ACTIONS(1447), [anon_sym_LPAREN] = ACTIONS(1447), [anon_sym_asm] = ACTIONS(1449), [anon_sym_LT] = ACTIONS(1447), [anon_sym_COLON_COLON] = ACTIONS(1447), [anon_sym_STAR] = ACTIONS(1447), [anon_sym_AMP] = ACTIONS(1447), [anon_sym_DOT_DOT] = ACTIONS(1447), [anon_sym_DASH] = ACTIONS(1447), [anon_sym_PIPE] = ACTIONS(1447), [anon_sym_yield] = ACTIONS(1449), [anon_sym_move] = ACTIONS(1449), [sym_integer_literal] = ACTIONS(1447), [aux_sym_string_literal_token1] = ACTIONS(1447), [sym_char_literal] = ACTIONS(1447), [anon_sym_true] = ACTIONS(1449), [anon_sym_false] = ACTIONS(1449), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1449), [sym_metavariable] = ACTIONS(1447), [sym_raw_string_literal] = ACTIONS(1447), [sym_float_literal] = ACTIONS(1447), [sym_block_comment] = ACTIONS(3), }, [369] = { [ts_builtin_sym_end] = ACTIONS(1451), [sym_identifier] = ACTIONS(1453), [anon_sym_SEMI] = ACTIONS(1451), [anon_sym_u8] = ACTIONS(1453), [anon_sym_i8] = ACTIONS(1453), [anon_sym_u16] = ACTIONS(1453), [anon_sym_i16] = ACTIONS(1453), [anon_sym_u32] = ACTIONS(1453), [anon_sym_i32] = ACTIONS(1453), [anon_sym_u64] = ACTIONS(1453), [anon_sym_i64] = ACTIONS(1453), [anon_sym_u128] = ACTIONS(1453), [anon_sym_i128] = ACTIONS(1453), [anon_sym_u256] = ACTIONS(1453), [anon_sym_i256] = ACTIONS(1453), [anon_sym_b256] = ACTIONS(1453), [anon_sym_isize] = ACTIONS(1453), [anon_sym_usize] = ACTIONS(1453), [anon_sym_f32] = ACTIONS(1453), [anon_sym_f64] = ACTIONS(1453), [anon_sym_bool] = ACTIONS(1453), [anon_sym_char] = ACTIONS(1453), [anon_sym_str] = ACTIONS(1453), [anon_sym_LBRACK] = ACTIONS(1451), [anon_sym_contract] = ACTIONS(1453), [anon_sym_script] = ACTIONS(1453), [anon_sym_predicate] = ACTIONS(1453), [anon_sym_library] = ACTIONS(1453), [anon_sym_SQUOTE] = ACTIONS(1453), [anon_sym_abi] = ACTIONS(1453), [anon_sym_break] = ACTIONS(1453), [anon_sym_configurable] = ACTIONS(1453), [anon_sym_const] = ACTIONS(1453), [anon_sym_continue] = ACTIONS(1453), [anon_sym_default] = ACTIONS(1453), [anon_sym_mod] = ACTIONS(1453), [anon_sym_enum] = ACTIONS(1453), [anon_sym_fn] = ACTIONS(1453), [anon_sym_for] = ACTIONS(1453), [anon_sym_if] = ACTIONS(1453), [anon_sym_impl] = ACTIONS(1453), [anon_sym_let] = ACTIONS(1453), [anon_sym_match] = ACTIONS(1453), [anon_sym_pub] = ACTIONS(1453), [anon_sym_return] = ACTIONS(1453), [anon_sym_storage] = ACTIONS(1453), [anon_sym_struct] = ACTIONS(1453), [anon_sym_trait] = ACTIONS(1453), [anon_sym_type] = ACTIONS(1453), [anon_sym_use] = ACTIONS(1453), [anon_sym_while] = ACTIONS(1453), [anon_sym_POUND] = ACTIONS(1451), [anon_sym_BANG] = ACTIONS(1451), [anon_sym_LBRACE] = ACTIONS(1451), [anon_sym_RBRACE] = ACTIONS(1451), [anon_sym_LPAREN] = ACTIONS(1451), [anon_sym_asm] = ACTIONS(1453), [anon_sym_LT] = ACTIONS(1451), [anon_sym_COLON_COLON] = ACTIONS(1451), [anon_sym_STAR] = ACTIONS(1451), [anon_sym_AMP] = ACTIONS(1451), [anon_sym_DOT_DOT] = ACTIONS(1451), [anon_sym_DASH] = ACTIONS(1451), [anon_sym_PIPE] = ACTIONS(1451), [anon_sym_yield] = ACTIONS(1453), [anon_sym_move] = ACTIONS(1453), [sym_integer_literal] = ACTIONS(1451), [aux_sym_string_literal_token1] = ACTIONS(1451), [sym_char_literal] = ACTIONS(1451), [anon_sym_true] = ACTIONS(1453), [anon_sym_false] = ACTIONS(1453), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1453), [sym_metavariable] = ACTIONS(1451), [sym_raw_string_literal] = ACTIONS(1451), [sym_float_literal] = ACTIONS(1451), [sym_block_comment] = ACTIONS(3), }, [370] = { [ts_builtin_sym_end] = ACTIONS(427), [sym_identifier] = ACTIONS(429), [anon_sym_SEMI] = ACTIONS(427), [anon_sym_u8] = ACTIONS(429), [anon_sym_i8] = ACTIONS(429), [anon_sym_u16] = ACTIONS(429), [anon_sym_i16] = ACTIONS(429), [anon_sym_u32] = ACTIONS(429), [anon_sym_i32] = ACTIONS(429), [anon_sym_u64] = ACTIONS(429), [anon_sym_i64] = ACTIONS(429), [anon_sym_u128] = ACTIONS(429), [anon_sym_i128] = ACTIONS(429), [anon_sym_u256] = ACTIONS(429), [anon_sym_i256] = ACTIONS(429), [anon_sym_b256] = ACTIONS(429), [anon_sym_isize] = ACTIONS(429), [anon_sym_usize] = ACTIONS(429), [anon_sym_f32] = ACTIONS(429), [anon_sym_f64] = ACTIONS(429), [anon_sym_bool] = ACTIONS(429), [anon_sym_char] = ACTIONS(429), [anon_sym_str] = ACTIONS(429), [anon_sym_LBRACK] = ACTIONS(427), [anon_sym_contract] = ACTIONS(429), [anon_sym_script] = ACTIONS(429), [anon_sym_predicate] = ACTIONS(429), [anon_sym_library] = ACTIONS(429), [anon_sym_SQUOTE] = ACTIONS(429), [anon_sym_abi] = ACTIONS(429), [anon_sym_break] = ACTIONS(429), [anon_sym_configurable] = ACTIONS(429), [anon_sym_const] = ACTIONS(429), [anon_sym_continue] = ACTIONS(429), [anon_sym_default] = ACTIONS(429), [anon_sym_mod] = ACTIONS(429), [anon_sym_enum] = ACTIONS(429), [anon_sym_fn] = ACTIONS(429), [anon_sym_for] = ACTIONS(429), [anon_sym_if] = ACTIONS(429), [anon_sym_impl] = ACTIONS(429), [anon_sym_let] = ACTIONS(429), [anon_sym_match] = ACTIONS(429), [anon_sym_pub] = ACTIONS(429), [anon_sym_return] = ACTIONS(429), [anon_sym_storage] = ACTIONS(429), [anon_sym_struct] = ACTIONS(429), [anon_sym_trait] = ACTIONS(429), [anon_sym_type] = ACTIONS(429), [anon_sym_use] = ACTIONS(429), [anon_sym_while] = ACTIONS(429), [anon_sym_POUND] = ACTIONS(427), [anon_sym_BANG] = ACTIONS(427), [anon_sym_LBRACE] = ACTIONS(427), [anon_sym_RBRACE] = ACTIONS(427), [anon_sym_LPAREN] = ACTIONS(427), [anon_sym_asm] = ACTIONS(429), [anon_sym_LT] = ACTIONS(427), [anon_sym_COLON_COLON] = ACTIONS(427), [anon_sym_STAR] = ACTIONS(427), [anon_sym_AMP] = ACTIONS(427), [anon_sym_DOT_DOT] = ACTIONS(427), [anon_sym_DASH] = ACTIONS(427), [anon_sym_PIPE] = ACTIONS(427), [anon_sym_yield] = ACTIONS(429), [anon_sym_move] = ACTIONS(429), [sym_integer_literal] = ACTIONS(427), [aux_sym_string_literal_token1] = ACTIONS(427), [sym_char_literal] = ACTIONS(427), [anon_sym_true] = ACTIONS(429), [anon_sym_false] = ACTIONS(429), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(429), [sym_metavariable] = ACTIONS(427), [sym_raw_string_literal] = ACTIONS(427), [sym_float_literal] = ACTIONS(427), [sym_block_comment] = ACTIONS(3), }, [371] = { [ts_builtin_sym_end] = ACTIONS(1455), [sym_identifier] = ACTIONS(1457), [anon_sym_SEMI] = ACTIONS(1455), [anon_sym_u8] = ACTIONS(1457), [anon_sym_i8] = ACTIONS(1457), [anon_sym_u16] = ACTIONS(1457), [anon_sym_i16] = ACTIONS(1457), [anon_sym_u32] = ACTIONS(1457), [anon_sym_i32] = ACTIONS(1457), [anon_sym_u64] = ACTIONS(1457), [anon_sym_i64] = ACTIONS(1457), [anon_sym_u128] = ACTIONS(1457), [anon_sym_i128] = ACTIONS(1457), [anon_sym_u256] = ACTIONS(1457), [anon_sym_i256] = ACTIONS(1457), [anon_sym_b256] = ACTIONS(1457), [anon_sym_isize] = ACTIONS(1457), [anon_sym_usize] = ACTIONS(1457), [anon_sym_f32] = ACTIONS(1457), [anon_sym_f64] = ACTIONS(1457), [anon_sym_bool] = ACTIONS(1457), [anon_sym_char] = ACTIONS(1457), [anon_sym_str] = ACTIONS(1457), [anon_sym_LBRACK] = ACTIONS(1455), [anon_sym_contract] = ACTIONS(1457), [anon_sym_script] = ACTIONS(1457), [anon_sym_predicate] = ACTIONS(1457), [anon_sym_library] = ACTIONS(1457), [anon_sym_SQUOTE] = ACTIONS(1457), [anon_sym_abi] = ACTIONS(1457), [anon_sym_break] = ACTIONS(1457), [anon_sym_configurable] = ACTIONS(1457), [anon_sym_const] = ACTIONS(1457), [anon_sym_continue] = ACTIONS(1457), [anon_sym_default] = ACTIONS(1457), [anon_sym_mod] = ACTIONS(1457), [anon_sym_enum] = ACTIONS(1457), [anon_sym_fn] = ACTIONS(1457), [anon_sym_for] = ACTIONS(1457), [anon_sym_if] = ACTIONS(1457), [anon_sym_impl] = ACTIONS(1457), [anon_sym_let] = ACTIONS(1457), [anon_sym_match] = ACTIONS(1457), [anon_sym_pub] = ACTIONS(1457), [anon_sym_return] = ACTIONS(1457), [anon_sym_storage] = ACTIONS(1457), [anon_sym_struct] = ACTIONS(1457), [anon_sym_trait] = ACTIONS(1457), [anon_sym_type] = ACTIONS(1457), [anon_sym_use] = ACTIONS(1457), [anon_sym_while] = ACTIONS(1457), [anon_sym_POUND] = ACTIONS(1455), [anon_sym_BANG] = ACTIONS(1455), [anon_sym_LBRACE] = ACTIONS(1455), [anon_sym_RBRACE] = ACTIONS(1455), [anon_sym_LPAREN] = ACTIONS(1455), [anon_sym_asm] = ACTIONS(1457), [anon_sym_LT] = ACTIONS(1455), [anon_sym_COLON_COLON] = ACTIONS(1455), [anon_sym_STAR] = ACTIONS(1455), [anon_sym_AMP] = ACTIONS(1455), [anon_sym_DOT_DOT] = ACTIONS(1455), [anon_sym_DASH] = ACTIONS(1455), [anon_sym_PIPE] = ACTIONS(1455), [anon_sym_yield] = ACTIONS(1457), [anon_sym_move] = ACTIONS(1457), [sym_integer_literal] = ACTIONS(1455), [aux_sym_string_literal_token1] = ACTIONS(1455), [sym_char_literal] = ACTIONS(1455), [anon_sym_true] = ACTIONS(1457), [anon_sym_false] = ACTIONS(1457), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1457), [sym_metavariable] = ACTIONS(1455), [sym_raw_string_literal] = ACTIONS(1455), [sym_float_literal] = ACTIONS(1455), [sym_block_comment] = ACTIONS(3), }, [372] = { [ts_builtin_sym_end] = ACTIONS(1459), [sym_identifier] = ACTIONS(1461), [anon_sym_SEMI] = ACTIONS(1459), [anon_sym_u8] = ACTIONS(1461), [anon_sym_i8] = ACTIONS(1461), [anon_sym_u16] = ACTIONS(1461), [anon_sym_i16] = ACTIONS(1461), [anon_sym_u32] = ACTIONS(1461), [anon_sym_i32] = ACTIONS(1461), [anon_sym_u64] = ACTIONS(1461), [anon_sym_i64] = ACTIONS(1461), [anon_sym_u128] = ACTIONS(1461), [anon_sym_i128] = ACTIONS(1461), [anon_sym_u256] = ACTIONS(1461), [anon_sym_i256] = ACTIONS(1461), [anon_sym_b256] = ACTIONS(1461), [anon_sym_isize] = ACTIONS(1461), [anon_sym_usize] = ACTIONS(1461), [anon_sym_f32] = ACTIONS(1461), [anon_sym_f64] = ACTIONS(1461), [anon_sym_bool] = ACTIONS(1461), [anon_sym_char] = ACTIONS(1461), [anon_sym_str] = ACTIONS(1461), [anon_sym_LBRACK] = ACTIONS(1459), [anon_sym_contract] = ACTIONS(1461), [anon_sym_script] = ACTIONS(1461), [anon_sym_predicate] = ACTIONS(1461), [anon_sym_library] = ACTIONS(1461), [anon_sym_SQUOTE] = ACTIONS(1461), [anon_sym_abi] = ACTIONS(1461), [anon_sym_break] = ACTIONS(1461), [anon_sym_configurable] = ACTIONS(1461), [anon_sym_const] = ACTIONS(1461), [anon_sym_continue] = ACTIONS(1461), [anon_sym_default] = ACTIONS(1461), [anon_sym_mod] = ACTIONS(1461), [anon_sym_enum] = ACTIONS(1461), [anon_sym_fn] = ACTIONS(1461), [anon_sym_for] = ACTIONS(1461), [anon_sym_if] = ACTIONS(1461), [anon_sym_impl] = ACTIONS(1461), [anon_sym_let] = ACTIONS(1461), [anon_sym_match] = ACTIONS(1461), [anon_sym_pub] = ACTIONS(1461), [anon_sym_return] = ACTIONS(1461), [anon_sym_storage] = ACTIONS(1461), [anon_sym_struct] = ACTIONS(1461), [anon_sym_trait] = ACTIONS(1461), [anon_sym_type] = ACTIONS(1461), [anon_sym_use] = ACTIONS(1461), [anon_sym_while] = ACTIONS(1461), [anon_sym_POUND] = ACTIONS(1459), [anon_sym_BANG] = ACTIONS(1459), [anon_sym_LBRACE] = ACTIONS(1459), [anon_sym_RBRACE] = ACTIONS(1459), [anon_sym_LPAREN] = ACTIONS(1459), [anon_sym_asm] = ACTIONS(1461), [anon_sym_LT] = ACTIONS(1459), [anon_sym_COLON_COLON] = ACTIONS(1459), [anon_sym_STAR] = ACTIONS(1459), [anon_sym_AMP] = ACTIONS(1459), [anon_sym_DOT_DOT] = ACTIONS(1459), [anon_sym_DASH] = ACTIONS(1459), [anon_sym_PIPE] = ACTIONS(1459), [anon_sym_yield] = ACTIONS(1461), [anon_sym_move] = ACTIONS(1461), [sym_integer_literal] = ACTIONS(1459), [aux_sym_string_literal_token1] = ACTIONS(1459), [sym_char_literal] = ACTIONS(1459), [anon_sym_true] = ACTIONS(1461), [anon_sym_false] = ACTIONS(1461), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1461), [sym_metavariable] = ACTIONS(1459), [sym_raw_string_literal] = ACTIONS(1459), [sym_float_literal] = ACTIONS(1459), [sym_block_comment] = ACTIONS(3), }, [373] = { [ts_builtin_sym_end] = ACTIONS(443), [sym_identifier] = ACTIONS(445), [anon_sym_SEMI] = ACTIONS(443), [anon_sym_u8] = ACTIONS(445), [anon_sym_i8] = ACTIONS(445), [anon_sym_u16] = ACTIONS(445), [anon_sym_i16] = ACTIONS(445), [anon_sym_u32] = ACTIONS(445), [anon_sym_i32] = ACTIONS(445), [anon_sym_u64] = ACTIONS(445), [anon_sym_i64] = ACTIONS(445), [anon_sym_u128] = ACTIONS(445), [anon_sym_i128] = ACTIONS(445), [anon_sym_u256] = ACTIONS(445), [anon_sym_i256] = ACTIONS(445), [anon_sym_b256] = ACTIONS(445), [anon_sym_isize] = ACTIONS(445), [anon_sym_usize] = ACTIONS(445), [anon_sym_f32] = ACTIONS(445), [anon_sym_f64] = ACTIONS(445), [anon_sym_bool] = ACTIONS(445), [anon_sym_char] = ACTIONS(445), [anon_sym_str] = ACTIONS(445), [anon_sym_LBRACK] = ACTIONS(443), [anon_sym_contract] = ACTIONS(445), [anon_sym_script] = ACTIONS(445), [anon_sym_predicate] = ACTIONS(445), [anon_sym_library] = ACTIONS(445), [anon_sym_SQUOTE] = ACTIONS(445), [anon_sym_abi] = ACTIONS(445), [anon_sym_break] = ACTIONS(445), [anon_sym_configurable] = ACTIONS(445), [anon_sym_const] = ACTIONS(445), [anon_sym_continue] = ACTIONS(445), [anon_sym_default] = ACTIONS(445), [anon_sym_mod] = ACTIONS(445), [anon_sym_enum] = ACTIONS(445), [anon_sym_fn] = ACTIONS(445), [anon_sym_for] = ACTIONS(445), [anon_sym_if] = ACTIONS(445), [anon_sym_impl] = ACTIONS(445), [anon_sym_let] = ACTIONS(445), [anon_sym_match] = ACTIONS(445), [anon_sym_pub] = ACTIONS(445), [anon_sym_return] = ACTIONS(445), [anon_sym_storage] = ACTIONS(445), [anon_sym_struct] = ACTIONS(445), [anon_sym_trait] = ACTIONS(445), [anon_sym_type] = ACTIONS(445), [anon_sym_use] = ACTIONS(445), [anon_sym_while] = ACTIONS(445), [anon_sym_POUND] = ACTIONS(443), [anon_sym_BANG] = ACTIONS(443), [anon_sym_LBRACE] = ACTIONS(443), [anon_sym_RBRACE] = ACTIONS(443), [anon_sym_LPAREN] = ACTIONS(443), [anon_sym_asm] = ACTIONS(445), [anon_sym_LT] = ACTIONS(443), [anon_sym_COLON_COLON] = ACTIONS(443), [anon_sym_STAR] = ACTIONS(443), [anon_sym_AMP] = ACTIONS(443), [anon_sym_DOT_DOT] = ACTIONS(443), [anon_sym_DASH] = ACTIONS(443), [anon_sym_PIPE] = ACTIONS(443), [anon_sym_yield] = ACTIONS(445), [anon_sym_move] = ACTIONS(445), [sym_integer_literal] = ACTIONS(443), [aux_sym_string_literal_token1] = ACTIONS(443), [sym_char_literal] = ACTIONS(443), [anon_sym_true] = ACTIONS(445), [anon_sym_false] = ACTIONS(445), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(445), [sym_metavariable] = ACTIONS(443), [sym_raw_string_literal] = ACTIONS(443), [sym_float_literal] = ACTIONS(443), [sym_block_comment] = ACTIONS(3), }, [374] = { [ts_builtin_sym_end] = ACTIONS(435), [sym_identifier] = ACTIONS(437), [anon_sym_SEMI] = ACTIONS(435), [anon_sym_u8] = ACTIONS(437), [anon_sym_i8] = ACTIONS(437), [anon_sym_u16] = ACTIONS(437), [anon_sym_i16] = ACTIONS(437), [anon_sym_u32] = ACTIONS(437), [anon_sym_i32] = ACTIONS(437), [anon_sym_u64] = ACTIONS(437), [anon_sym_i64] = ACTIONS(437), [anon_sym_u128] = ACTIONS(437), [anon_sym_i128] = ACTIONS(437), [anon_sym_u256] = ACTIONS(437), [anon_sym_i256] = ACTIONS(437), [anon_sym_b256] = ACTIONS(437), [anon_sym_isize] = ACTIONS(437), [anon_sym_usize] = ACTIONS(437), [anon_sym_f32] = ACTIONS(437), [anon_sym_f64] = ACTIONS(437), [anon_sym_bool] = ACTIONS(437), [anon_sym_char] = ACTIONS(437), [anon_sym_str] = ACTIONS(437), [anon_sym_LBRACK] = ACTIONS(435), [anon_sym_contract] = ACTIONS(437), [anon_sym_script] = ACTIONS(437), [anon_sym_predicate] = ACTIONS(437), [anon_sym_library] = ACTIONS(437), [anon_sym_SQUOTE] = ACTIONS(437), [anon_sym_abi] = ACTIONS(437), [anon_sym_break] = ACTIONS(437), [anon_sym_configurable] = ACTIONS(437), [anon_sym_const] = ACTIONS(437), [anon_sym_continue] = ACTIONS(437), [anon_sym_default] = ACTIONS(437), [anon_sym_mod] = ACTIONS(437), [anon_sym_enum] = ACTIONS(437), [anon_sym_fn] = ACTIONS(437), [anon_sym_for] = ACTIONS(437), [anon_sym_if] = ACTIONS(437), [anon_sym_impl] = ACTIONS(437), [anon_sym_let] = ACTIONS(437), [anon_sym_match] = ACTIONS(437), [anon_sym_pub] = ACTIONS(437), [anon_sym_return] = ACTIONS(437), [anon_sym_storage] = ACTIONS(437), [anon_sym_struct] = ACTIONS(437), [anon_sym_trait] = ACTIONS(437), [anon_sym_type] = ACTIONS(437), [anon_sym_use] = ACTIONS(437), [anon_sym_while] = ACTIONS(437), [anon_sym_POUND] = ACTIONS(435), [anon_sym_BANG] = ACTIONS(435), [anon_sym_LBRACE] = ACTIONS(435), [anon_sym_RBRACE] = ACTIONS(435), [anon_sym_LPAREN] = ACTIONS(435), [anon_sym_asm] = ACTIONS(437), [anon_sym_LT] = ACTIONS(435), [anon_sym_COLON_COLON] = ACTIONS(435), [anon_sym_STAR] = ACTIONS(435), [anon_sym_AMP] = ACTIONS(435), [anon_sym_DOT_DOT] = ACTIONS(435), [anon_sym_DASH] = ACTIONS(435), [anon_sym_PIPE] = ACTIONS(435), [anon_sym_yield] = ACTIONS(437), [anon_sym_move] = ACTIONS(437), [sym_integer_literal] = ACTIONS(435), [aux_sym_string_literal_token1] = ACTIONS(435), [sym_char_literal] = ACTIONS(435), [anon_sym_true] = ACTIONS(437), [anon_sym_false] = ACTIONS(437), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(437), [sym_metavariable] = ACTIONS(435), [sym_raw_string_literal] = ACTIONS(435), [sym_float_literal] = ACTIONS(435), [sym_block_comment] = ACTIONS(3), }, [375] = { [ts_builtin_sym_end] = ACTIONS(1463), [sym_identifier] = ACTIONS(1465), [anon_sym_SEMI] = ACTIONS(1463), [anon_sym_u8] = ACTIONS(1465), [anon_sym_i8] = ACTIONS(1465), [anon_sym_u16] = ACTIONS(1465), [anon_sym_i16] = ACTIONS(1465), [anon_sym_u32] = ACTIONS(1465), [anon_sym_i32] = ACTIONS(1465), [anon_sym_u64] = ACTIONS(1465), [anon_sym_i64] = ACTIONS(1465), [anon_sym_u128] = ACTIONS(1465), [anon_sym_i128] = ACTIONS(1465), [anon_sym_u256] = ACTIONS(1465), [anon_sym_i256] = ACTIONS(1465), [anon_sym_b256] = ACTIONS(1465), [anon_sym_isize] = ACTIONS(1465), [anon_sym_usize] = ACTIONS(1465), [anon_sym_f32] = ACTIONS(1465), [anon_sym_f64] = ACTIONS(1465), [anon_sym_bool] = ACTIONS(1465), [anon_sym_char] = ACTIONS(1465), [anon_sym_str] = ACTIONS(1465), [anon_sym_LBRACK] = ACTIONS(1463), [anon_sym_contract] = ACTIONS(1465), [anon_sym_script] = ACTIONS(1465), [anon_sym_predicate] = ACTIONS(1465), [anon_sym_library] = ACTIONS(1465), [anon_sym_SQUOTE] = ACTIONS(1465), [anon_sym_abi] = ACTIONS(1465), [anon_sym_break] = ACTIONS(1465), [anon_sym_configurable] = ACTIONS(1465), [anon_sym_const] = ACTIONS(1465), [anon_sym_continue] = ACTIONS(1465), [anon_sym_default] = ACTIONS(1465), [anon_sym_mod] = ACTIONS(1465), [anon_sym_enum] = ACTIONS(1465), [anon_sym_fn] = ACTIONS(1465), [anon_sym_for] = ACTIONS(1465), [anon_sym_if] = ACTIONS(1465), [anon_sym_impl] = ACTIONS(1465), [anon_sym_let] = ACTIONS(1465), [anon_sym_match] = ACTIONS(1465), [anon_sym_pub] = ACTIONS(1465), [anon_sym_return] = ACTIONS(1465), [anon_sym_storage] = ACTIONS(1465), [anon_sym_struct] = ACTIONS(1465), [anon_sym_trait] = ACTIONS(1465), [anon_sym_type] = ACTIONS(1465), [anon_sym_use] = ACTIONS(1465), [anon_sym_while] = ACTIONS(1465), [anon_sym_POUND] = ACTIONS(1463), [anon_sym_BANG] = ACTIONS(1463), [anon_sym_LBRACE] = ACTIONS(1463), [anon_sym_RBRACE] = ACTIONS(1463), [anon_sym_LPAREN] = ACTIONS(1463), [anon_sym_asm] = ACTIONS(1465), [anon_sym_LT] = ACTIONS(1463), [anon_sym_COLON_COLON] = ACTIONS(1463), [anon_sym_STAR] = ACTIONS(1463), [anon_sym_AMP] = ACTIONS(1463), [anon_sym_DOT_DOT] = ACTIONS(1463), [anon_sym_DASH] = ACTIONS(1463), [anon_sym_PIPE] = ACTIONS(1463), [anon_sym_yield] = ACTIONS(1465), [anon_sym_move] = ACTIONS(1465), [sym_integer_literal] = ACTIONS(1463), [aux_sym_string_literal_token1] = ACTIONS(1463), [sym_char_literal] = ACTIONS(1463), [anon_sym_true] = ACTIONS(1465), [anon_sym_false] = ACTIONS(1465), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1465), [sym_metavariable] = ACTIONS(1463), [sym_raw_string_literal] = ACTIONS(1463), [sym_float_literal] = ACTIONS(1463), [sym_block_comment] = ACTIONS(3), }, [376] = { [ts_builtin_sym_end] = ACTIONS(1467), [sym_identifier] = ACTIONS(1469), [anon_sym_SEMI] = ACTIONS(1467), [anon_sym_u8] = ACTIONS(1469), [anon_sym_i8] = ACTIONS(1469), [anon_sym_u16] = ACTIONS(1469), [anon_sym_i16] = ACTIONS(1469), [anon_sym_u32] = ACTIONS(1469), [anon_sym_i32] = ACTIONS(1469), [anon_sym_u64] = ACTIONS(1469), [anon_sym_i64] = ACTIONS(1469), [anon_sym_u128] = ACTIONS(1469), [anon_sym_i128] = ACTIONS(1469), [anon_sym_u256] = ACTIONS(1469), [anon_sym_i256] = ACTIONS(1469), [anon_sym_b256] = ACTIONS(1469), [anon_sym_isize] = ACTIONS(1469), [anon_sym_usize] = ACTIONS(1469), [anon_sym_f32] = ACTIONS(1469), [anon_sym_f64] = ACTIONS(1469), [anon_sym_bool] = ACTIONS(1469), [anon_sym_char] = ACTIONS(1469), [anon_sym_str] = ACTIONS(1469), [anon_sym_LBRACK] = ACTIONS(1467), [anon_sym_contract] = ACTIONS(1469), [anon_sym_script] = ACTIONS(1469), [anon_sym_predicate] = ACTIONS(1469), [anon_sym_library] = ACTIONS(1469), [anon_sym_SQUOTE] = ACTIONS(1469), [anon_sym_abi] = ACTIONS(1469), [anon_sym_break] = ACTIONS(1469), [anon_sym_configurable] = ACTIONS(1469), [anon_sym_const] = ACTIONS(1469), [anon_sym_continue] = ACTIONS(1469), [anon_sym_default] = ACTIONS(1469), [anon_sym_mod] = ACTIONS(1469), [anon_sym_enum] = ACTIONS(1469), [anon_sym_fn] = ACTIONS(1469), [anon_sym_for] = ACTIONS(1469), [anon_sym_if] = ACTIONS(1469), [anon_sym_impl] = ACTIONS(1469), [anon_sym_let] = ACTIONS(1469), [anon_sym_match] = ACTIONS(1469), [anon_sym_pub] = ACTIONS(1469), [anon_sym_return] = ACTIONS(1469), [anon_sym_storage] = ACTIONS(1469), [anon_sym_struct] = ACTIONS(1469), [anon_sym_trait] = ACTIONS(1469), [anon_sym_type] = ACTIONS(1469), [anon_sym_use] = ACTIONS(1469), [anon_sym_while] = ACTIONS(1469), [anon_sym_POUND] = ACTIONS(1467), [anon_sym_BANG] = ACTIONS(1467), [anon_sym_LBRACE] = ACTIONS(1467), [anon_sym_RBRACE] = ACTIONS(1467), [anon_sym_LPAREN] = ACTIONS(1467), [anon_sym_asm] = ACTIONS(1469), [anon_sym_LT] = ACTIONS(1467), [anon_sym_COLON_COLON] = ACTIONS(1467), [anon_sym_STAR] = ACTIONS(1467), [anon_sym_AMP] = ACTIONS(1467), [anon_sym_DOT_DOT] = ACTIONS(1467), [anon_sym_DASH] = ACTIONS(1467), [anon_sym_PIPE] = ACTIONS(1467), [anon_sym_yield] = ACTIONS(1469), [anon_sym_move] = ACTIONS(1469), [sym_integer_literal] = ACTIONS(1467), [aux_sym_string_literal_token1] = ACTIONS(1467), [sym_char_literal] = ACTIONS(1467), [anon_sym_true] = ACTIONS(1469), [anon_sym_false] = ACTIONS(1469), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1469), [sym_metavariable] = ACTIONS(1467), [sym_raw_string_literal] = ACTIONS(1467), [sym_float_literal] = ACTIONS(1467), [sym_block_comment] = ACTIONS(3), }, [377] = { [ts_builtin_sym_end] = ACTIONS(1471), [sym_identifier] = ACTIONS(1473), [anon_sym_SEMI] = ACTIONS(1471), [anon_sym_u8] = ACTIONS(1473), [anon_sym_i8] = ACTIONS(1473), [anon_sym_u16] = ACTIONS(1473), [anon_sym_i16] = ACTIONS(1473), [anon_sym_u32] = ACTIONS(1473), [anon_sym_i32] = ACTIONS(1473), [anon_sym_u64] = ACTIONS(1473), [anon_sym_i64] = ACTIONS(1473), [anon_sym_u128] = ACTIONS(1473), [anon_sym_i128] = ACTIONS(1473), [anon_sym_u256] = ACTIONS(1473), [anon_sym_i256] = ACTIONS(1473), [anon_sym_b256] = ACTIONS(1473), [anon_sym_isize] = ACTIONS(1473), [anon_sym_usize] = ACTIONS(1473), [anon_sym_f32] = ACTIONS(1473), [anon_sym_f64] = ACTIONS(1473), [anon_sym_bool] = ACTIONS(1473), [anon_sym_char] = ACTIONS(1473), [anon_sym_str] = ACTIONS(1473), [anon_sym_LBRACK] = ACTIONS(1471), [anon_sym_contract] = ACTIONS(1473), [anon_sym_script] = ACTIONS(1473), [anon_sym_predicate] = ACTIONS(1473), [anon_sym_library] = ACTIONS(1473), [anon_sym_SQUOTE] = ACTIONS(1473), [anon_sym_abi] = ACTIONS(1473), [anon_sym_break] = ACTIONS(1473), [anon_sym_configurable] = ACTIONS(1473), [anon_sym_const] = ACTIONS(1473), [anon_sym_continue] = ACTIONS(1473), [anon_sym_default] = ACTIONS(1473), [anon_sym_mod] = ACTIONS(1473), [anon_sym_enum] = ACTIONS(1473), [anon_sym_fn] = ACTIONS(1473), [anon_sym_for] = ACTIONS(1473), [anon_sym_if] = ACTIONS(1473), [anon_sym_impl] = ACTIONS(1473), [anon_sym_let] = ACTIONS(1473), [anon_sym_match] = ACTIONS(1473), [anon_sym_pub] = ACTIONS(1473), [anon_sym_return] = ACTIONS(1473), [anon_sym_storage] = ACTIONS(1473), [anon_sym_struct] = ACTIONS(1473), [anon_sym_trait] = ACTIONS(1473), [anon_sym_type] = ACTIONS(1473), [anon_sym_use] = ACTIONS(1473), [anon_sym_while] = ACTIONS(1473), [anon_sym_POUND] = ACTIONS(1471), [anon_sym_BANG] = ACTIONS(1471), [anon_sym_LBRACE] = ACTIONS(1471), [anon_sym_RBRACE] = ACTIONS(1471), [anon_sym_LPAREN] = ACTIONS(1471), [anon_sym_asm] = ACTIONS(1473), [anon_sym_LT] = ACTIONS(1471), [anon_sym_COLON_COLON] = ACTIONS(1471), [anon_sym_STAR] = ACTIONS(1471), [anon_sym_AMP] = ACTIONS(1471), [anon_sym_DOT_DOT] = ACTIONS(1471), [anon_sym_DASH] = ACTIONS(1471), [anon_sym_PIPE] = ACTIONS(1471), [anon_sym_yield] = ACTIONS(1473), [anon_sym_move] = ACTIONS(1473), [sym_integer_literal] = ACTIONS(1471), [aux_sym_string_literal_token1] = ACTIONS(1471), [sym_char_literal] = ACTIONS(1471), [anon_sym_true] = ACTIONS(1473), [anon_sym_false] = ACTIONS(1473), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1473), [sym_metavariable] = ACTIONS(1471), [sym_raw_string_literal] = ACTIONS(1471), [sym_float_literal] = ACTIONS(1471), [sym_block_comment] = ACTIONS(3), }, [378] = { [ts_builtin_sym_end] = ACTIONS(1475), [sym_identifier] = ACTIONS(1477), [anon_sym_SEMI] = ACTIONS(1475), [anon_sym_u8] = ACTIONS(1477), [anon_sym_i8] = ACTIONS(1477), [anon_sym_u16] = ACTIONS(1477), [anon_sym_i16] = ACTIONS(1477), [anon_sym_u32] = ACTIONS(1477), [anon_sym_i32] = ACTIONS(1477), [anon_sym_u64] = ACTIONS(1477), [anon_sym_i64] = ACTIONS(1477), [anon_sym_u128] = ACTIONS(1477), [anon_sym_i128] = ACTIONS(1477), [anon_sym_u256] = ACTIONS(1477), [anon_sym_i256] = ACTIONS(1477), [anon_sym_b256] = ACTIONS(1477), [anon_sym_isize] = ACTIONS(1477), [anon_sym_usize] = ACTIONS(1477), [anon_sym_f32] = ACTIONS(1477), [anon_sym_f64] = ACTIONS(1477), [anon_sym_bool] = ACTIONS(1477), [anon_sym_char] = ACTIONS(1477), [anon_sym_str] = ACTIONS(1477), [anon_sym_LBRACK] = ACTIONS(1475), [anon_sym_contract] = ACTIONS(1477), [anon_sym_script] = ACTIONS(1477), [anon_sym_predicate] = ACTIONS(1477), [anon_sym_library] = ACTIONS(1477), [anon_sym_SQUOTE] = ACTIONS(1477), [anon_sym_abi] = ACTIONS(1477), [anon_sym_break] = ACTIONS(1477), [anon_sym_configurable] = ACTIONS(1477), [anon_sym_const] = ACTIONS(1477), [anon_sym_continue] = ACTIONS(1477), [anon_sym_default] = ACTIONS(1477), [anon_sym_mod] = ACTIONS(1477), [anon_sym_enum] = ACTIONS(1477), [anon_sym_fn] = ACTIONS(1477), [anon_sym_for] = ACTIONS(1477), [anon_sym_if] = ACTIONS(1477), [anon_sym_impl] = ACTIONS(1477), [anon_sym_let] = ACTIONS(1477), [anon_sym_match] = ACTIONS(1477), [anon_sym_pub] = ACTIONS(1477), [anon_sym_return] = ACTIONS(1477), [anon_sym_storage] = ACTIONS(1477), [anon_sym_struct] = ACTIONS(1477), [anon_sym_trait] = ACTIONS(1477), [anon_sym_type] = ACTIONS(1477), [anon_sym_use] = ACTIONS(1477), [anon_sym_while] = ACTIONS(1477), [anon_sym_POUND] = ACTIONS(1475), [anon_sym_BANG] = ACTIONS(1475), [anon_sym_LBRACE] = ACTIONS(1475), [anon_sym_RBRACE] = ACTIONS(1475), [anon_sym_LPAREN] = ACTIONS(1475), [anon_sym_asm] = ACTIONS(1477), [anon_sym_LT] = ACTIONS(1475), [anon_sym_COLON_COLON] = ACTIONS(1475), [anon_sym_STAR] = ACTIONS(1475), [anon_sym_AMP] = ACTIONS(1475), [anon_sym_DOT_DOT] = ACTIONS(1475), [anon_sym_DASH] = ACTIONS(1475), [anon_sym_PIPE] = ACTIONS(1475), [anon_sym_yield] = ACTIONS(1477), [anon_sym_move] = ACTIONS(1477), [sym_integer_literal] = ACTIONS(1475), [aux_sym_string_literal_token1] = ACTIONS(1475), [sym_char_literal] = ACTIONS(1475), [anon_sym_true] = ACTIONS(1477), [anon_sym_false] = ACTIONS(1477), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1477), [sym_metavariable] = ACTIONS(1475), [sym_raw_string_literal] = ACTIONS(1475), [sym_float_literal] = ACTIONS(1475), [sym_block_comment] = ACTIONS(3), }, [379] = { [ts_builtin_sym_end] = ACTIONS(1479), [sym_identifier] = ACTIONS(1481), [anon_sym_SEMI] = ACTIONS(1479), [anon_sym_u8] = ACTIONS(1481), [anon_sym_i8] = ACTIONS(1481), [anon_sym_u16] = ACTIONS(1481), [anon_sym_i16] = ACTIONS(1481), [anon_sym_u32] = ACTIONS(1481), [anon_sym_i32] = ACTIONS(1481), [anon_sym_u64] = ACTIONS(1481), [anon_sym_i64] = ACTIONS(1481), [anon_sym_u128] = ACTIONS(1481), [anon_sym_i128] = ACTIONS(1481), [anon_sym_u256] = ACTIONS(1481), [anon_sym_i256] = ACTIONS(1481), [anon_sym_b256] = ACTIONS(1481), [anon_sym_isize] = ACTIONS(1481), [anon_sym_usize] = ACTIONS(1481), [anon_sym_f32] = ACTIONS(1481), [anon_sym_f64] = ACTIONS(1481), [anon_sym_bool] = ACTIONS(1481), [anon_sym_char] = ACTIONS(1481), [anon_sym_str] = ACTIONS(1481), [anon_sym_LBRACK] = ACTIONS(1479), [anon_sym_contract] = ACTIONS(1481), [anon_sym_script] = ACTIONS(1481), [anon_sym_predicate] = ACTIONS(1481), [anon_sym_library] = ACTIONS(1481), [anon_sym_SQUOTE] = ACTIONS(1481), [anon_sym_abi] = ACTIONS(1481), [anon_sym_break] = ACTIONS(1481), [anon_sym_configurable] = ACTIONS(1481), [anon_sym_const] = ACTIONS(1481), [anon_sym_continue] = ACTIONS(1481), [anon_sym_default] = ACTIONS(1481), [anon_sym_mod] = ACTIONS(1481), [anon_sym_enum] = ACTIONS(1481), [anon_sym_fn] = ACTIONS(1481), [anon_sym_for] = ACTIONS(1481), [anon_sym_if] = ACTIONS(1481), [anon_sym_impl] = ACTIONS(1481), [anon_sym_let] = ACTIONS(1481), [anon_sym_match] = ACTIONS(1481), [anon_sym_pub] = ACTIONS(1481), [anon_sym_return] = ACTIONS(1481), [anon_sym_storage] = ACTIONS(1481), [anon_sym_struct] = ACTIONS(1481), [anon_sym_trait] = ACTIONS(1481), [anon_sym_type] = ACTIONS(1481), [anon_sym_use] = ACTIONS(1481), [anon_sym_while] = ACTIONS(1481), [anon_sym_POUND] = ACTIONS(1479), [anon_sym_BANG] = ACTIONS(1479), [anon_sym_LBRACE] = ACTIONS(1479), [anon_sym_RBRACE] = ACTIONS(1479), [anon_sym_LPAREN] = ACTIONS(1479), [anon_sym_asm] = ACTIONS(1481), [anon_sym_LT] = ACTIONS(1479), [anon_sym_COLON_COLON] = ACTIONS(1479), [anon_sym_STAR] = ACTIONS(1479), [anon_sym_AMP] = ACTIONS(1479), [anon_sym_DOT_DOT] = ACTIONS(1479), [anon_sym_DASH] = ACTIONS(1479), [anon_sym_PIPE] = ACTIONS(1479), [anon_sym_yield] = ACTIONS(1481), [anon_sym_move] = ACTIONS(1481), [sym_integer_literal] = ACTIONS(1479), [aux_sym_string_literal_token1] = ACTIONS(1479), [sym_char_literal] = ACTIONS(1479), [anon_sym_true] = ACTIONS(1481), [anon_sym_false] = ACTIONS(1481), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1481), [sym_metavariable] = ACTIONS(1479), [sym_raw_string_literal] = ACTIONS(1479), [sym_float_literal] = ACTIONS(1479), [sym_block_comment] = ACTIONS(3), }, [380] = { [sym_primitive_type] = STATE(1176), [sym_attribute_item] = STATE(414), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_match_arm] = STATE(409), [sym_last_match_arm] = STATE(2135), [sym_match_pattern] = STATE(2173), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1576), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_enum_variant_list_repeat1] = STATE(414), [aux_sym_match_block_repeat1] = STATE(409), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_POUND] = ACTIONS(357), [anon_sym_RBRACE] = ACTIONS(1483), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [381] = { [ts_builtin_sym_end] = ACTIONS(1485), [sym_identifier] = ACTIONS(1487), [anon_sym_SEMI] = ACTIONS(1485), [anon_sym_u8] = ACTIONS(1487), [anon_sym_i8] = ACTIONS(1487), [anon_sym_u16] = ACTIONS(1487), [anon_sym_i16] = ACTIONS(1487), [anon_sym_u32] = ACTIONS(1487), [anon_sym_i32] = ACTIONS(1487), [anon_sym_u64] = ACTIONS(1487), [anon_sym_i64] = ACTIONS(1487), [anon_sym_u128] = ACTIONS(1487), [anon_sym_i128] = ACTIONS(1487), [anon_sym_u256] = ACTIONS(1487), [anon_sym_i256] = ACTIONS(1487), [anon_sym_b256] = ACTIONS(1487), [anon_sym_isize] = ACTIONS(1487), [anon_sym_usize] = ACTIONS(1487), [anon_sym_f32] = ACTIONS(1487), [anon_sym_f64] = ACTIONS(1487), [anon_sym_bool] = ACTIONS(1487), [anon_sym_char] = ACTIONS(1487), [anon_sym_str] = ACTIONS(1487), [anon_sym_LBRACK] = ACTIONS(1485), [anon_sym_contract] = ACTIONS(1487), [anon_sym_script] = ACTIONS(1487), [anon_sym_predicate] = ACTIONS(1487), [anon_sym_library] = ACTIONS(1487), [anon_sym_SQUOTE] = ACTIONS(1487), [anon_sym_abi] = ACTIONS(1487), [anon_sym_break] = ACTIONS(1487), [anon_sym_configurable] = ACTIONS(1487), [anon_sym_const] = ACTIONS(1487), [anon_sym_continue] = ACTIONS(1487), [anon_sym_default] = ACTIONS(1487), [anon_sym_mod] = ACTIONS(1487), [anon_sym_enum] = ACTIONS(1487), [anon_sym_fn] = ACTIONS(1487), [anon_sym_for] = ACTIONS(1487), [anon_sym_if] = ACTIONS(1487), [anon_sym_impl] = ACTIONS(1487), [anon_sym_let] = ACTIONS(1487), [anon_sym_match] = ACTIONS(1487), [anon_sym_pub] = ACTIONS(1487), [anon_sym_return] = ACTIONS(1487), [anon_sym_storage] = ACTIONS(1487), [anon_sym_struct] = ACTIONS(1487), [anon_sym_trait] = ACTIONS(1487), [anon_sym_type] = ACTIONS(1487), [anon_sym_use] = ACTIONS(1487), [anon_sym_while] = ACTIONS(1487), [anon_sym_POUND] = ACTIONS(1485), [anon_sym_BANG] = ACTIONS(1485), [anon_sym_LBRACE] = ACTIONS(1485), [anon_sym_RBRACE] = ACTIONS(1485), [anon_sym_LPAREN] = ACTIONS(1485), [anon_sym_asm] = ACTIONS(1487), [anon_sym_LT] = ACTIONS(1485), [anon_sym_COLON_COLON] = ACTIONS(1485), [anon_sym_STAR] = ACTIONS(1485), [anon_sym_AMP] = ACTIONS(1485), [anon_sym_DOT_DOT] = ACTIONS(1485), [anon_sym_DASH] = ACTIONS(1485), [anon_sym_PIPE] = ACTIONS(1485), [anon_sym_yield] = ACTIONS(1487), [anon_sym_move] = ACTIONS(1487), [sym_integer_literal] = ACTIONS(1485), [aux_sym_string_literal_token1] = ACTIONS(1485), [sym_char_literal] = ACTIONS(1485), [anon_sym_true] = ACTIONS(1487), [anon_sym_false] = ACTIONS(1487), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1487), [sym_metavariable] = ACTIONS(1485), [sym_raw_string_literal] = ACTIONS(1485), [sym_float_literal] = ACTIONS(1485), [sym_block_comment] = ACTIONS(3), }, [382] = { [ts_builtin_sym_end] = ACTIONS(1489), [sym_identifier] = ACTIONS(1491), [anon_sym_SEMI] = ACTIONS(1489), [anon_sym_u8] = ACTIONS(1491), [anon_sym_i8] = ACTIONS(1491), [anon_sym_u16] = ACTIONS(1491), [anon_sym_i16] = ACTIONS(1491), [anon_sym_u32] = ACTIONS(1491), [anon_sym_i32] = ACTIONS(1491), [anon_sym_u64] = ACTIONS(1491), [anon_sym_i64] = ACTIONS(1491), [anon_sym_u128] = ACTIONS(1491), [anon_sym_i128] = ACTIONS(1491), [anon_sym_u256] = ACTIONS(1491), [anon_sym_i256] = ACTIONS(1491), [anon_sym_b256] = ACTIONS(1491), [anon_sym_isize] = ACTIONS(1491), [anon_sym_usize] = ACTIONS(1491), [anon_sym_f32] = ACTIONS(1491), [anon_sym_f64] = ACTIONS(1491), [anon_sym_bool] = ACTIONS(1491), [anon_sym_char] = ACTIONS(1491), [anon_sym_str] = ACTIONS(1491), [anon_sym_LBRACK] = ACTIONS(1489), [anon_sym_contract] = ACTIONS(1491), [anon_sym_script] = ACTIONS(1491), [anon_sym_predicate] = ACTIONS(1491), [anon_sym_library] = ACTIONS(1491), [anon_sym_SQUOTE] = ACTIONS(1491), [anon_sym_abi] = ACTIONS(1491), [anon_sym_break] = ACTIONS(1491), [anon_sym_configurable] = ACTIONS(1491), [anon_sym_const] = ACTIONS(1491), [anon_sym_continue] = ACTIONS(1491), [anon_sym_default] = ACTIONS(1491), [anon_sym_mod] = ACTIONS(1491), [anon_sym_enum] = ACTIONS(1491), [anon_sym_fn] = ACTIONS(1491), [anon_sym_for] = ACTIONS(1491), [anon_sym_if] = ACTIONS(1491), [anon_sym_impl] = ACTIONS(1491), [anon_sym_let] = ACTIONS(1491), [anon_sym_match] = ACTIONS(1491), [anon_sym_pub] = ACTIONS(1491), [anon_sym_return] = ACTIONS(1491), [anon_sym_storage] = ACTIONS(1491), [anon_sym_struct] = ACTIONS(1491), [anon_sym_trait] = ACTIONS(1491), [anon_sym_type] = ACTIONS(1491), [anon_sym_use] = ACTIONS(1491), [anon_sym_while] = ACTIONS(1491), [anon_sym_POUND] = ACTIONS(1489), [anon_sym_BANG] = ACTIONS(1489), [anon_sym_LBRACE] = ACTIONS(1489), [anon_sym_RBRACE] = ACTIONS(1489), [anon_sym_LPAREN] = ACTIONS(1489), [anon_sym_asm] = ACTIONS(1491), [anon_sym_LT] = ACTIONS(1489), [anon_sym_COLON_COLON] = ACTIONS(1489), [anon_sym_STAR] = ACTIONS(1489), [anon_sym_AMP] = ACTIONS(1489), [anon_sym_DOT_DOT] = ACTIONS(1489), [anon_sym_DASH] = ACTIONS(1489), [anon_sym_PIPE] = ACTIONS(1489), [anon_sym_yield] = ACTIONS(1491), [anon_sym_move] = ACTIONS(1491), [sym_integer_literal] = ACTIONS(1489), [aux_sym_string_literal_token1] = ACTIONS(1489), [sym_char_literal] = ACTIONS(1489), [anon_sym_true] = ACTIONS(1491), [anon_sym_false] = ACTIONS(1491), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1491), [sym_metavariable] = ACTIONS(1489), [sym_raw_string_literal] = ACTIONS(1489), [sym_float_literal] = ACTIONS(1489), [sym_block_comment] = ACTIONS(3), }, [383] = { [ts_builtin_sym_end] = ACTIONS(1493), [sym_identifier] = ACTIONS(1495), [anon_sym_SEMI] = ACTIONS(1493), [anon_sym_u8] = ACTIONS(1495), [anon_sym_i8] = ACTIONS(1495), [anon_sym_u16] = ACTIONS(1495), [anon_sym_i16] = ACTIONS(1495), [anon_sym_u32] = ACTIONS(1495), [anon_sym_i32] = ACTIONS(1495), [anon_sym_u64] = ACTIONS(1495), [anon_sym_i64] = ACTIONS(1495), [anon_sym_u128] = ACTIONS(1495), [anon_sym_i128] = ACTIONS(1495), [anon_sym_u256] = ACTIONS(1495), [anon_sym_i256] = ACTIONS(1495), [anon_sym_b256] = ACTIONS(1495), [anon_sym_isize] = ACTIONS(1495), [anon_sym_usize] = ACTIONS(1495), [anon_sym_f32] = ACTIONS(1495), [anon_sym_f64] = ACTIONS(1495), [anon_sym_bool] = ACTIONS(1495), [anon_sym_char] = ACTIONS(1495), [anon_sym_str] = ACTIONS(1495), [anon_sym_LBRACK] = ACTIONS(1493), [anon_sym_contract] = ACTIONS(1495), [anon_sym_script] = ACTIONS(1495), [anon_sym_predicate] = ACTIONS(1495), [anon_sym_library] = ACTIONS(1495), [anon_sym_SQUOTE] = ACTIONS(1495), [anon_sym_abi] = ACTIONS(1495), [anon_sym_break] = ACTIONS(1495), [anon_sym_configurable] = ACTIONS(1495), [anon_sym_const] = ACTIONS(1495), [anon_sym_continue] = ACTIONS(1495), [anon_sym_default] = ACTIONS(1495), [anon_sym_mod] = ACTIONS(1495), [anon_sym_enum] = ACTIONS(1495), [anon_sym_fn] = ACTIONS(1495), [anon_sym_for] = ACTIONS(1495), [anon_sym_if] = ACTIONS(1495), [anon_sym_impl] = ACTIONS(1495), [anon_sym_let] = ACTIONS(1495), [anon_sym_match] = ACTIONS(1495), [anon_sym_pub] = ACTIONS(1495), [anon_sym_return] = ACTIONS(1495), [anon_sym_storage] = ACTIONS(1495), [anon_sym_struct] = ACTIONS(1495), [anon_sym_trait] = ACTIONS(1495), [anon_sym_type] = ACTIONS(1495), [anon_sym_use] = ACTIONS(1495), [anon_sym_while] = ACTIONS(1495), [anon_sym_POUND] = ACTIONS(1493), [anon_sym_BANG] = ACTIONS(1493), [anon_sym_LBRACE] = ACTIONS(1493), [anon_sym_RBRACE] = ACTIONS(1493), [anon_sym_LPAREN] = ACTIONS(1493), [anon_sym_asm] = ACTIONS(1495), [anon_sym_LT] = ACTIONS(1493), [anon_sym_COLON_COLON] = ACTIONS(1493), [anon_sym_STAR] = ACTIONS(1493), [anon_sym_AMP] = ACTIONS(1493), [anon_sym_DOT_DOT] = ACTIONS(1493), [anon_sym_DASH] = ACTIONS(1493), [anon_sym_PIPE] = ACTIONS(1493), [anon_sym_yield] = ACTIONS(1495), [anon_sym_move] = ACTIONS(1495), [sym_integer_literal] = ACTIONS(1493), [aux_sym_string_literal_token1] = ACTIONS(1493), [sym_char_literal] = ACTIONS(1493), [anon_sym_true] = ACTIONS(1495), [anon_sym_false] = ACTIONS(1495), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1495), [sym_metavariable] = ACTIONS(1493), [sym_raw_string_literal] = ACTIONS(1493), [sym_float_literal] = ACTIONS(1493), [sym_block_comment] = ACTIONS(3), }, [384] = { [ts_builtin_sym_end] = ACTIONS(1497), [sym_identifier] = ACTIONS(1499), [anon_sym_SEMI] = ACTIONS(1497), [anon_sym_u8] = ACTIONS(1499), [anon_sym_i8] = ACTIONS(1499), [anon_sym_u16] = ACTIONS(1499), [anon_sym_i16] = ACTIONS(1499), [anon_sym_u32] = ACTIONS(1499), [anon_sym_i32] = ACTIONS(1499), [anon_sym_u64] = ACTIONS(1499), [anon_sym_i64] = ACTIONS(1499), [anon_sym_u128] = ACTIONS(1499), [anon_sym_i128] = ACTIONS(1499), [anon_sym_u256] = ACTIONS(1499), [anon_sym_i256] = ACTIONS(1499), [anon_sym_b256] = ACTIONS(1499), [anon_sym_isize] = ACTIONS(1499), [anon_sym_usize] = ACTIONS(1499), [anon_sym_f32] = ACTIONS(1499), [anon_sym_f64] = ACTIONS(1499), [anon_sym_bool] = ACTIONS(1499), [anon_sym_char] = ACTIONS(1499), [anon_sym_str] = ACTIONS(1499), [anon_sym_LBRACK] = ACTIONS(1497), [anon_sym_contract] = ACTIONS(1499), [anon_sym_script] = ACTIONS(1499), [anon_sym_predicate] = ACTIONS(1499), [anon_sym_library] = ACTIONS(1499), [anon_sym_SQUOTE] = ACTIONS(1499), [anon_sym_abi] = ACTIONS(1499), [anon_sym_break] = ACTIONS(1499), [anon_sym_configurable] = ACTIONS(1499), [anon_sym_const] = ACTIONS(1499), [anon_sym_continue] = ACTIONS(1499), [anon_sym_default] = ACTIONS(1499), [anon_sym_mod] = ACTIONS(1499), [anon_sym_enum] = ACTIONS(1499), [anon_sym_fn] = ACTIONS(1499), [anon_sym_for] = ACTIONS(1499), [anon_sym_if] = ACTIONS(1499), [anon_sym_impl] = ACTIONS(1499), [anon_sym_let] = ACTIONS(1499), [anon_sym_match] = ACTIONS(1499), [anon_sym_pub] = ACTIONS(1499), [anon_sym_return] = ACTIONS(1499), [anon_sym_storage] = ACTIONS(1499), [anon_sym_struct] = ACTIONS(1499), [anon_sym_trait] = ACTIONS(1499), [anon_sym_type] = ACTIONS(1499), [anon_sym_use] = ACTIONS(1499), [anon_sym_while] = ACTIONS(1499), [anon_sym_POUND] = ACTIONS(1497), [anon_sym_BANG] = ACTIONS(1497), [anon_sym_LBRACE] = ACTIONS(1497), [anon_sym_RBRACE] = ACTIONS(1497), [anon_sym_LPAREN] = ACTIONS(1497), [anon_sym_asm] = ACTIONS(1499), [anon_sym_LT] = ACTIONS(1497), [anon_sym_COLON_COLON] = ACTIONS(1497), [anon_sym_STAR] = ACTIONS(1497), [anon_sym_AMP] = ACTIONS(1497), [anon_sym_DOT_DOT] = ACTIONS(1497), [anon_sym_DASH] = ACTIONS(1497), [anon_sym_PIPE] = ACTIONS(1497), [anon_sym_yield] = ACTIONS(1499), [anon_sym_move] = ACTIONS(1499), [sym_integer_literal] = ACTIONS(1497), [aux_sym_string_literal_token1] = ACTIONS(1497), [sym_char_literal] = ACTIONS(1497), [anon_sym_true] = ACTIONS(1499), [anon_sym_false] = ACTIONS(1499), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1499), [sym_metavariable] = ACTIONS(1497), [sym_raw_string_literal] = ACTIONS(1497), [sym_float_literal] = ACTIONS(1497), [sym_block_comment] = ACTIONS(3), }, [385] = { [ts_builtin_sym_end] = ACTIONS(1501), [sym_identifier] = ACTIONS(1503), [anon_sym_SEMI] = ACTIONS(1501), [anon_sym_u8] = ACTIONS(1503), [anon_sym_i8] = ACTIONS(1503), [anon_sym_u16] = ACTIONS(1503), [anon_sym_i16] = ACTIONS(1503), [anon_sym_u32] = ACTIONS(1503), [anon_sym_i32] = ACTIONS(1503), [anon_sym_u64] = ACTIONS(1503), [anon_sym_i64] = ACTIONS(1503), [anon_sym_u128] = ACTIONS(1503), [anon_sym_i128] = ACTIONS(1503), [anon_sym_u256] = ACTIONS(1503), [anon_sym_i256] = ACTIONS(1503), [anon_sym_b256] = ACTIONS(1503), [anon_sym_isize] = ACTIONS(1503), [anon_sym_usize] = ACTIONS(1503), [anon_sym_f32] = ACTIONS(1503), [anon_sym_f64] = ACTIONS(1503), [anon_sym_bool] = ACTIONS(1503), [anon_sym_char] = ACTIONS(1503), [anon_sym_str] = ACTIONS(1503), [anon_sym_LBRACK] = ACTIONS(1501), [anon_sym_contract] = ACTIONS(1503), [anon_sym_script] = ACTIONS(1503), [anon_sym_predicate] = ACTIONS(1503), [anon_sym_library] = ACTIONS(1503), [anon_sym_SQUOTE] = ACTIONS(1503), [anon_sym_abi] = ACTIONS(1503), [anon_sym_break] = ACTIONS(1503), [anon_sym_configurable] = ACTIONS(1503), [anon_sym_const] = ACTIONS(1503), [anon_sym_continue] = ACTIONS(1503), [anon_sym_default] = ACTIONS(1503), [anon_sym_mod] = ACTIONS(1503), [anon_sym_enum] = ACTIONS(1503), [anon_sym_fn] = ACTIONS(1503), [anon_sym_for] = ACTIONS(1503), [anon_sym_if] = ACTIONS(1503), [anon_sym_impl] = ACTIONS(1503), [anon_sym_let] = ACTIONS(1503), [anon_sym_match] = ACTIONS(1503), [anon_sym_pub] = ACTIONS(1503), [anon_sym_return] = ACTIONS(1503), [anon_sym_storage] = ACTIONS(1503), [anon_sym_struct] = ACTIONS(1503), [anon_sym_trait] = ACTIONS(1503), [anon_sym_type] = ACTIONS(1503), [anon_sym_use] = ACTIONS(1503), [anon_sym_while] = ACTIONS(1503), [anon_sym_POUND] = ACTIONS(1501), [anon_sym_BANG] = ACTIONS(1501), [anon_sym_LBRACE] = ACTIONS(1501), [anon_sym_RBRACE] = ACTIONS(1501), [anon_sym_LPAREN] = ACTIONS(1501), [anon_sym_asm] = ACTIONS(1503), [anon_sym_LT] = ACTIONS(1501), [anon_sym_COLON_COLON] = ACTIONS(1501), [anon_sym_STAR] = ACTIONS(1501), [anon_sym_AMP] = ACTIONS(1501), [anon_sym_DOT_DOT] = ACTIONS(1501), [anon_sym_DASH] = ACTIONS(1501), [anon_sym_PIPE] = ACTIONS(1501), [anon_sym_yield] = ACTIONS(1503), [anon_sym_move] = ACTIONS(1503), [sym_integer_literal] = ACTIONS(1501), [aux_sym_string_literal_token1] = ACTIONS(1501), [sym_char_literal] = ACTIONS(1501), [anon_sym_true] = ACTIONS(1503), [anon_sym_false] = ACTIONS(1503), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1503), [sym_metavariable] = ACTIONS(1501), [sym_raw_string_literal] = ACTIONS(1501), [sym_float_literal] = ACTIONS(1501), [sym_block_comment] = ACTIONS(3), }, [386] = { [ts_builtin_sym_end] = ACTIONS(1505), [sym_identifier] = ACTIONS(1507), [anon_sym_SEMI] = ACTIONS(1505), [anon_sym_u8] = ACTIONS(1507), [anon_sym_i8] = ACTIONS(1507), [anon_sym_u16] = ACTIONS(1507), [anon_sym_i16] = ACTIONS(1507), [anon_sym_u32] = ACTIONS(1507), [anon_sym_i32] = ACTIONS(1507), [anon_sym_u64] = ACTIONS(1507), [anon_sym_i64] = ACTIONS(1507), [anon_sym_u128] = ACTIONS(1507), [anon_sym_i128] = ACTIONS(1507), [anon_sym_u256] = ACTIONS(1507), [anon_sym_i256] = ACTIONS(1507), [anon_sym_b256] = ACTIONS(1507), [anon_sym_isize] = ACTIONS(1507), [anon_sym_usize] = ACTIONS(1507), [anon_sym_f32] = ACTIONS(1507), [anon_sym_f64] = ACTIONS(1507), [anon_sym_bool] = ACTIONS(1507), [anon_sym_char] = ACTIONS(1507), [anon_sym_str] = ACTIONS(1507), [anon_sym_LBRACK] = ACTIONS(1505), [anon_sym_contract] = ACTIONS(1507), [anon_sym_script] = ACTIONS(1507), [anon_sym_predicate] = ACTIONS(1507), [anon_sym_library] = ACTIONS(1507), [anon_sym_SQUOTE] = ACTIONS(1507), [anon_sym_abi] = ACTIONS(1507), [anon_sym_break] = ACTIONS(1507), [anon_sym_configurable] = ACTIONS(1507), [anon_sym_const] = ACTIONS(1507), [anon_sym_continue] = ACTIONS(1507), [anon_sym_default] = ACTIONS(1507), [anon_sym_mod] = ACTIONS(1507), [anon_sym_enum] = ACTIONS(1507), [anon_sym_fn] = ACTIONS(1507), [anon_sym_for] = ACTIONS(1507), [anon_sym_if] = ACTIONS(1507), [anon_sym_impl] = ACTIONS(1507), [anon_sym_let] = ACTIONS(1507), [anon_sym_match] = ACTIONS(1507), [anon_sym_pub] = ACTIONS(1507), [anon_sym_return] = ACTIONS(1507), [anon_sym_storage] = ACTIONS(1507), [anon_sym_struct] = ACTIONS(1507), [anon_sym_trait] = ACTIONS(1507), [anon_sym_type] = ACTIONS(1507), [anon_sym_use] = ACTIONS(1507), [anon_sym_while] = ACTIONS(1507), [anon_sym_POUND] = ACTIONS(1505), [anon_sym_BANG] = ACTIONS(1505), [anon_sym_LBRACE] = ACTIONS(1505), [anon_sym_RBRACE] = ACTIONS(1505), [anon_sym_LPAREN] = ACTIONS(1505), [anon_sym_asm] = ACTIONS(1507), [anon_sym_LT] = ACTIONS(1505), [anon_sym_COLON_COLON] = ACTIONS(1505), [anon_sym_STAR] = ACTIONS(1505), [anon_sym_AMP] = ACTIONS(1505), [anon_sym_DOT_DOT] = ACTIONS(1505), [anon_sym_DASH] = ACTIONS(1505), [anon_sym_PIPE] = ACTIONS(1505), [anon_sym_yield] = ACTIONS(1507), [anon_sym_move] = ACTIONS(1507), [sym_integer_literal] = ACTIONS(1505), [aux_sym_string_literal_token1] = ACTIONS(1505), [sym_char_literal] = ACTIONS(1505), [anon_sym_true] = ACTIONS(1507), [anon_sym_false] = ACTIONS(1507), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1507), [sym_metavariable] = ACTIONS(1505), [sym_raw_string_literal] = ACTIONS(1505), [sym_float_literal] = ACTIONS(1505), [sym_block_comment] = ACTIONS(3), }, [387] = { [sym_primitive_type] = STATE(1176), [sym_attribute_item] = STATE(414), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_match_arm] = STATE(410), [sym_last_match_arm] = STATE(2169), [sym_match_pattern] = STATE(2173), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1576), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_enum_variant_list_repeat1] = STATE(414), [aux_sym_match_block_repeat1] = STATE(410), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_POUND] = ACTIONS(357), [anon_sym_RBRACE] = ACTIONS(1509), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [388] = { [ts_builtin_sym_end] = ACTIONS(1511), [sym_identifier] = ACTIONS(1513), [anon_sym_SEMI] = ACTIONS(1511), [anon_sym_u8] = ACTIONS(1513), [anon_sym_i8] = ACTIONS(1513), [anon_sym_u16] = ACTIONS(1513), [anon_sym_i16] = ACTIONS(1513), [anon_sym_u32] = ACTIONS(1513), [anon_sym_i32] = ACTIONS(1513), [anon_sym_u64] = ACTIONS(1513), [anon_sym_i64] = ACTIONS(1513), [anon_sym_u128] = ACTIONS(1513), [anon_sym_i128] = ACTIONS(1513), [anon_sym_u256] = ACTIONS(1513), [anon_sym_i256] = ACTIONS(1513), [anon_sym_b256] = ACTIONS(1513), [anon_sym_isize] = ACTIONS(1513), [anon_sym_usize] = ACTIONS(1513), [anon_sym_f32] = ACTIONS(1513), [anon_sym_f64] = ACTIONS(1513), [anon_sym_bool] = ACTIONS(1513), [anon_sym_char] = ACTIONS(1513), [anon_sym_str] = ACTIONS(1513), [anon_sym_LBRACK] = ACTIONS(1511), [anon_sym_contract] = ACTIONS(1513), [anon_sym_script] = ACTIONS(1513), [anon_sym_predicate] = ACTIONS(1513), [anon_sym_library] = ACTIONS(1513), [anon_sym_SQUOTE] = ACTIONS(1513), [anon_sym_abi] = ACTIONS(1513), [anon_sym_break] = ACTIONS(1513), [anon_sym_configurable] = ACTIONS(1513), [anon_sym_const] = ACTIONS(1513), [anon_sym_continue] = ACTIONS(1513), [anon_sym_default] = ACTIONS(1513), [anon_sym_mod] = ACTIONS(1513), [anon_sym_enum] = ACTIONS(1513), [anon_sym_fn] = ACTIONS(1513), [anon_sym_for] = ACTIONS(1513), [anon_sym_if] = ACTIONS(1513), [anon_sym_impl] = ACTIONS(1513), [anon_sym_let] = ACTIONS(1513), [anon_sym_match] = ACTIONS(1513), [anon_sym_pub] = ACTIONS(1513), [anon_sym_return] = ACTIONS(1513), [anon_sym_storage] = ACTIONS(1513), [anon_sym_struct] = ACTIONS(1513), [anon_sym_trait] = ACTIONS(1513), [anon_sym_type] = ACTIONS(1513), [anon_sym_use] = ACTIONS(1513), [anon_sym_while] = ACTIONS(1513), [anon_sym_POUND] = ACTIONS(1511), [anon_sym_BANG] = ACTIONS(1511), [anon_sym_LBRACE] = ACTIONS(1511), [anon_sym_RBRACE] = ACTIONS(1511), [anon_sym_LPAREN] = ACTIONS(1511), [anon_sym_asm] = ACTIONS(1513), [anon_sym_LT] = ACTIONS(1511), [anon_sym_COLON_COLON] = ACTIONS(1511), [anon_sym_STAR] = ACTIONS(1511), [anon_sym_AMP] = ACTIONS(1511), [anon_sym_DOT_DOT] = ACTIONS(1511), [anon_sym_DASH] = ACTIONS(1511), [anon_sym_PIPE] = ACTIONS(1511), [anon_sym_yield] = ACTIONS(1513), [anon_sym_move] = ACTIONS(1513), [sym_integer_literal] = ACTIONS(1511), [aux_sym_string_literal_token1] = ACTIONS(1511), [sym_char_literal] = ACTIONS(1511), [anon_sym_true] = ACTIONS(1513), [anon_sym_false] = ACTIONS(1513), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1513), [sym_metavariable] = ACTIONS(1511), [sym_raw_string_literal] = ACTIONS(1511), [sym_float_literal] = ACTIONS(1511), [sym_block_comment] = ACTIONS(3), }, [389] = { [ts_builtin_sym_end] = ACTIONS(1515), [sym_identifier] = ACTIONS(1517), [anon_sym_SEMI] = ACTIONS(1515), [anon_sym_u8] = ACTIONS(1517), [anon_sym_i8] = ACTIONS(1517), [anon_sym_u16] = ACTIONS(1517), [anon_sym_i16] = ACTIONS(1517), [anon_sym_u32] = ACTIONS(1517), [anon_sym_i32] = ACTIONS(1517), [anon_sym_u64] = ACTIONS(1517), [anon_sym_i64] = ACTIONS(1517), [anon_sym_u128] = ACTIONS(1517), [anon_sym_i128] = ACTIONS(1517), [anon_sym_u256] = ACTIONS(1517), [anon_sym_i256] = ACTIONS(1517), [anon_sym_b256] = ACTIONS(1517), [anon_sym_isize] = ACTIONS(1517), [anon_sym_usize] = ACTIONS(1517), [anon_sym_f32] = ACTIONS(1517), [anon_sym_f64] = ACTIONS(1517), [anon_sym_bool] = ACTIONS(1517), [anon_sym_char] = ACTIONS(1517), [anon_sym_str] = ACTIONS(1517), [anon_sym_LBRACK] = ACTIONS(1515), [anon_sym_contract] = ACTIONS(1517), [anon_sym_script] = ACTIONS(1517), [anon_sym_predicate] = ACTIONS(1517), [anon_sym_library] = ACTIONS(1517), [anon_sym_SQUOTE] = ACTIONS(1517), [anon_sym_abi] = ACTIONS(1517), [anon_sym_break] = ACTIONS(1517), [anon_sym_configurable] = ACTIONS(1517), [anon_sym_const] = ACTIONS(1517), [anon_sym_continue] = ACTIONS(1517), [anon_sym_default] = ACTIONS(1517), [anon_sym_mod] = ACTIONS(1517), [anon_sym_enum] = ACTIONS(1517), [anon_sym_fn] = ACTIONS(1517), [anon_sym_for] = ACTIONS(1517), [anon_sym_if] = ACTIONS(1517), [anon_sym_impl] = ACTIONS(1517), [anon_sym_let] = ACTIONS(1517), [anon_sym_match] = ACTIONS(1517), [anon_sym_pub] = ACTIONS(1517), [anon_sym_return] = ACTIONS(1517), [anon_sym_storage] = ACTIONS(1517), [anon_sym_struct] = ACTIONS(1517), [anon_sym_trait] = ACTIONS(1517), [anon_sym_type] = ACTIONS(1517), [anon_sym_use] = ACTIONS(1517), [anon_sym_while] = ACTIONS(1517), [anon_sym_POUND] = ACTIONS(1515), [anon_sym_BANG] = ACTIONS(1515), [anon_sym_LBRACE] = ACTIONS(1515), [anon_sym_RBRACE] = ACTIONS(1515), [anon_sym_LPAREN] = ACTIONS(1515), [anon_sym_asm] = ACTIONS(1517), [anon_sym_LT] = ACTIONS(1515), [anon_sym_COLON_COLON] = ACTIONS(1515), [anon_sym_STAR] = ACTIONS(1515), [anon_sym_AMP] = ACTIONS(1515), [anon_sym_DOT_DOT] = ACTIONS(1515), [anon_sym_DASH] = ACTIONS(1515), [anon_sym_PIPE] = ACTIONS(1515), [anon_sym_yield] = ACTIONS(1517), [anon_sym_move] = ACTIONS(1517), [sym_integer_literal] = ACTIONS(1515), [aux_sym_string_literal_token1] = ACTIONS(1515), [sym_char_literal] = ACTIONS(1515), [anon_sym_true] = ACTIONS(1517), [anon_sym_false] = ACTIONS(1517), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1517), [sym_metavariable] = ACTIONS(1515), [sym_raw_string_literal] = ACTIONS(1515), [sym_float_literal] = ACTIONS(1515), [sym_block_comment] = ACTIONS(3), }, [390] = { [ts_builtin_sym_end] = ACTIONS(1519), [sym_identifier] = ACTIONS(1521), [anon_sym_SEMI] = ACTIONS(1519), [anon_sym_u8] = ACTIONS(1521), [anon_sym_i8] = ACTIONS(1521), [anon_sym_u16] = ACTIONS(1521), [anon_sym_i16] = ACTIONS(1521), [anon_sym_u32] = ACTIONS(1521), [anon_sym_i32] = ACTIONS(1521), [anon_sym_u64] = ACTIONS(1521), [anon_sym_i64] = ACTIONS(1521), [anon_sym_u128] = ACTIONS(1521), [anon_sym_i128] = ACTIONS(1521), [anon_sym_u256] = ACTIONS(1521), [anon_sym_i256] = ACTIONS(1521), [anon_sym_b256] = ACTIONS(1521), [anon_sym_isize] = ACTIONS(1521), [anon_sym_usize] = ACTIONS(1521), [anon_sym_f32] = ACTIONS(1521), [anon_sym_f64] = ACTIONS(1521), [anon_sym_bool] = ACTIONS(1521), [anon_sym_char] = ACTIONS(1521), [anon_sym_str] = ACTIONS(1521), [anon_sym_LBRACK] = ACTIONS(1519), [anon_sym_contract] = ACTIONS(1521), [anon_sym_script] = ACTIONS(1521), [anon_sym_predicate] = ACTIONS(1521), [anon_sym_library] = ACTIONS(1521), [anon_sym_SQUOTE] = ACTIONS(1521), [anon_sym_abi] = ACTIONS(1521), [anon_sym_break] = ACTIONS(1521), [anon_sym_configurable] = ACTIONS(1521), [anon_sym_const] = ACTIONS(1521), [anon_sym_continue] = ACTIONS(1521), [anon_sym_default] = ACTIONS(1521), [anon_sym_mod] = ACTIONS(1521), [anon_sym_enum] = ACTIONS(1521), [anon_sym_fn] = ACTIONS(1521), [anon_sym_for] = ACTIONS(1521), [anon_sym_if] = ACTIONS(1521), [anon_sym_impl] = ACTIONS(1521), [anon_sym_let] = ACTIONS(1521), [anon_sym_match] = ACTIONS(1521), [anon_sym_pub] = ACTIONS(1521), [anon_sym_return] = ACTIONS(1521), [anon_sym_storage] = ACTIONS(1521), [anon_sym_struct] = ACTIONS(1521), [anon_sym_trait] = ACTIONS(1521), [anon_sym_type] = ACTIONS(1521), [anon_sym_use] = ACTIONS(1521), [anon_sym_while] = ACTIONS(1521), [anon_sym_POUND] = ACTIONS(1519), [anon_sym_BANG] = ACTIONS(1519), [anon_sym_LBRACE] = ACTIONS(1519), [anon_sym_RBRACE] = ACTIONS(1519), [anon_sym_LPAREN] = ACTIONS(1519), [anon_sym_asm] = ACTIONS(1521), [anon_sym_LT] = ACTIONS(1519), [anon_sym_COLON_COLON] = ACTIONS(1519), [anon_sym_STAR] = ACTIONS(1519), [anon_sym_AMP] = ACTIONS(1519), [anon_sym_DOT_DOT] = ACTIONS(1519), [anon_sym_DASH] = ACTIONS(1519), [anon_sym_PIPE] = ACTIONS(1519), [anon_sym_yield] = ACTIONS(1521), [anon_sym_move] = ACTIONS(1521), [sym_integer_literal] = ACTIONS(1519), [aux_sym_string_literal_token1] = ACTIONS(1519), [sym_char_literal] = ACTIONS(1519), [anon_sym_true] = ACTIONS(1521), [anon_sym_false] = ACTIONS(1521), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1521), [sym_metavariable] = ACTIONS(1519), [sym_raw_string_literal] = ACTIONS(1519), [sym_float_literal] = ACTIONS(1519), [sym_block_comment] = ACTIONS(3), }, [391] = { [ts_builtin_sym_end] = ACTIONS(1523), [sym_identifier] = ACTIONS(1525), [anon_sym_SEMI] = ACTIONS(1523), [anon_sym_u8] = ACTIONS(1525), [anon_sym_i8] = ACTIONS(1525), [anon_sym_u16] = ACTIONS(1525), [anon_sym_i16] = ACTIONS(1525), [anon_sym_u32] = ACTIONS(1525), [anon_sym_i32] = ACTIONS(1525), [anon_sym_u64] = ACTIONS(1525), [anon_sym_i64] = ACTIONS(1525), [anon_sym_u128] = ACTIONS(1525), [anon_sym_i128] = ACTIONS(1525), [anon_sym_u256] = ACTIONS(1525), [anon_sym_i256] = ACTIONS(1525), [anon_sym_b256] = ACTIONS(1525), [anon_sym_isize] = ACTIONS(1525), [anon_sym_usize] = ACTIONS(1525), [anon_sym_f32] = ACTIONS(1525), [anon_sym_f64] = ACTIONS(1525), [anon_sym_bool] = ACTIONS(1525), [anon_sym_char] = ACTIONS(1525), [anon_sym_str] = ACTIONS(1525), [anon_sym_LBRACK] = ACTIONS(1523), [anon_sym_contract] = ACTIONS(1525), [anon_sym_script] = ACTIONS(1525), [anon_sym_predicate] = ACTIONS(1525), [anon_sym_library] = ACTIONS(1525), [anon_sym_SQUOTE] = ACTIONS(1525), [anon_sym_abi] = ACTIONS(1525), [anon_sym_break] = ACTIONS(1525), [anon_sym_configurable] = ACTIONS(1525), [anon_sym_const] = ACTIONS(1525), [anon_sym_continue] = ACTIONS(1525), [anon_sym_default] = ACTIONS(1525), [anon_sym_mod] = ACTIONS(1525), [anon_sym_enum] = ACTIONS(1525), [anon_sym_fn] = ACTIONS(1525), [anon_sym_for] = ACTIONS(1525), [anon_sym_if] = ACTIONS(1525), [anon_sym_impl] = ACTIONS(1525), [anon_sym_let] = ACTIONS(1525), [anon_sym_match] = ACTIONS(1525), [anon_sym_pub] = ACTIONS(1525), [anon_sym_return] = ACTIONS(1525), [anon_sym_storage] = ACTIONS(1525), [anon_sym_struct] = ACTIONS(1525), [anon_sym_trait] = ACTIONS(1525), [anon_sym_type] = ACTIONS(1525), [anon_sym_use] = ACTIONS(1525), [anon_sym_while] = ACTIONS(1525), [anon_sym_POUND] = ACTIONS(1523), [anon_sym_BANG] = ACTIONS(1523), [anon_sym_LBRACE] = ACTIONS(1523), [anon_sym_RBRACE] = ACTIONS(1523), [anon_sym_LPAREN] = ACTIONS(1523), [anon_sym_asm] = ACTIONS(1525), [anon_sym_LT] = ACTIONS(1523), [anon_sym_COLON_COLON] = ACTIONS(1523), [anon_sym_STAR] = ACTIONS(1523), [anon_sym_AMP] = ACTIONS(1523), [anon_sym_DOT_DOT] = ACTIONS(1523), [anon_sym_DASH] = ACTIONS(1523), [anon_sym_PIPE] = ACTIONS(1523), [anon_sym_yield] = ACTIONS(1525), [anon_sym_move] = ACTIONS(1525), [sym_integer_literal] = ACTIONS(1523), [aux_sym_string_literal_token1] = ACTIONS(1523), [sym_char_literal] = ACTIONS(1523), [anon_sym_true] = ACTIONS(1525), [anon_sym_false] = ACTIONS(1525), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1525), [sym_metavariable] = ACTIONS(1523), [sym_raw_string_literal] = ACTIONS(1523), [sym_float_literal] = ACTIONS(1523), [sym_block_comment] = ACTIONS(3), }, [392] = { [ts_builtin_sym_end] = ACTIONS(1527), [sym_identifier] = ACTIONS(1529), [anon_sym_SEMI] = ACTIONS(1527), [anon_sym_u8] = ACTIONS(1529), [anon_sym_i8] = ACTIONS(1529), [anon_sym_u16] = ACTIONS(1529), [anon_sym_i16] = ACTIONS(1529), [anon_sym_u32] = ACTIONS(1529), [anon_sym_i32] = ACTIONS(1529), [anon_sym_u64] = ACTIONS(1529), [anon_sym_i64] = ACTIONS(1529), [anon_sym_u128] = ACTIONS(1529), [anon_sym_i128] = ACTIONS(1529), [anon_sym_u256] = ACTIONS(1529), [anon_sym_i256] = ACTIONS(1529), [anon_sym_b256] = ACTIONS(1529), [anon_sym_isize] = ACTIONS(1529), [anon_sym_usize] = ACTIONS(1529), [anon_sym_f32] = ACTIONS(1529), [anon_sym_f64] = ACTIONS(1529), [anon_sym_bool] = ACTIONS(1529), [anon_sym_char] = ACTIONS(1529), [anon_sym_str] = ACTIONS(1529), [anon_sym_LBRACK] = ACTIONS(1527), [anon_sym_contract] = ACTIONS(1529), [anon_sym_script] = ACTIONS(1529), [anon_sym_predicate] = ACTIONS(1529), [anon_sym_library] = ACTIONS(1529), [anon_sym_SQUOTE] = ACTIONS(1529), [anon_sym_abi] = ACTIONS(1529), [anon_sym_break] = ACTIONS(1529), [anon_sym_configurable] = ACTIONS(1529), [anon_sym_const] = ACTIONS(1529), [anon_sym_continue] = ACTIONS(1529), [anon_sym_default] = ACTIONS(1529), [anon_sym_mod] = ACTIONS(1529), [anon_sym_enum] = ACTIONS(1529), [anon_sym_fn] = ACTIONS(1529), [anon_sym_for] = ACTIONS(1529), [anon_sym_if] = ACTIONS(1529), [anon_sym_impl] = ACTIONS(1529), [anon_sym_let] = ACTIONS(1529), [anon_sym_match] = ACTIONS(1529), [anon_sym_pub] = ACTIONS(1529), [anon_sym_return] = ACTIONS(1529), [anon_sym_storage] = ACTIONS(1529), [anon_sym_struct] = ACTIONS(1529), [anon_sym_trait] = ACTIONS(1529), [anon_sym_type] = ACTIONS(1529), [anon_sym_use] = ACTIONS(1529), [anon_sym_while] = ACTIONS(1529), [anon_sym_POUND] = ACTIONS(1527), [anon_sym_BANG] = ACTIONS(1527), [anon_sym_LBRACE] = ACTIONS(1527), [anon_sym_RBRACE] = ACTIONS(1527), [anon_sym_LPAREN] = ACTIONS(1527), [anon_sym_asm] = ACTIONS(1529), [anon_sym_LT] = ACTIONS(1527), [anon_sym_COLON_COLON] = ACTIONS(1527), [anon_sym_STAR] = ACTIONS(1527), [anon_sym_AMP] = ACTIONS(1527), [anon_sym_DOT_DOT] = ACTIONS(1527), [anon_sym_DASH] = ACTIONS(1527), [anon_sym_PIPE] = ACTIONS(1527), [anon_sym_yield] = ACTIONS(1529), [anon_sym_move] = ACTIONS(1529), [sym_integer_literal] = ACTIONS(1527), [aux_sym_string_literal_token1] = ACTIONS(1527), [sym_char_literal] = ACTIONS(1527), [anon_sym_true] = ACTIONS(1529), [anon_sym_false] = ACTIONS(1529), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1529), [sym_metavariable] = ACTIONS(1527), [sym_raw_string_literal] = ACTIONS(1527), [sym_float_literal] = ACTIONS(1527), [sym_block_comment] = ACTIONS(3), }, [393] = { [ts_builtin_sym_end] = ACTIONS(1531), [sym_identifier] = ACTIONS(1533), [anon_sym_SEMI] = ACTIONS(1531), [anon_sym_u8] = ACTIONS(1533), [anon_sym_i8] = ACTIONS(1533), [anon_sym_u16] = ACTIONS(1533), [anon_sym_i16] = ACTIONS(1533), [anon_sym_u32] = ACTIONS(1533), [anon_sym_i32] = ACTIONS(1533), [anon_sym_u64] = ACTIONS(1533), [anon_sym_i64] = ACTIONS(1533), [anon_sym_u128] = ACTIONS(1533), [anon_sym_i128] = ACTIONS(1533), [anon_sym_u256] = ACTIONS(1533), [anon_sym_i256] = ACTIONS(1533), [anon_sym_b256] = ACTIONS(1533), [anon_sym_isize] = ACTIONS(1533), [anon_sym_usize] = ACTIONS(1533), [anon_sym_f32] = ACTIONS(1533), [anon_sym_f64] = ACTIONS(1533), [anon_sym_bool] = ACTIONS(1533), [anon_sym_char] = ACTIONS(1533), [anon_sym_str] = ACTIONS(1533), [anon_sym_LBRACK] = ACTIONS(1531), [anon_sym_contract] = ACTIONS(1533), [anon_sym_script] = ACTIONS(1533), [anon_sym_predicate] = ACTIONS(1533), [anon_sym_library] = ACTIONS(1533), [anon_sym_SQUOTE] = ACTIONS(1533), [anon_sym_abi] = ACTIONS(1533), [anon_sym_break] = ACTIONS(1533), [anon_sym_configurable] = ACTIONS(1533), [anon_sym_const] = ACTIONS(1533), [anon_sym_continue] = ACTIONS(1533), [anon_sym_default] = ACTIONS(1533), [anon_sym_mod] = ACTIONS(1533), [anon_sym_enum] = ACTIONS(1533), [anon_sym_fn] = ACTIONS(1533), [anon_sym_for] = ACTIONS(1533), [anon_sym_if] = ACTIONS(1533), [anon_sym_impl] = ACTIONS(1533), [anon_sym_let] = ACTIONS(1533), [anon_sym_match] = ACTIONS(1533), [anon_sym_pub] = ACTIONS(1533), [anon_sym_return] = ACTIONS(1533), [anon_sym_storage] = ACTIONS(1533), [anon_sym_struct] = ACTIONS(1533), [anon_sym_trait] = ACTIONS(1533), [anon_sym_type] = ACTIONS(1533), [anon_sym_use] = ACTIONS(1533), [anon_sym_while] = ACTIONS(1533), [anon_sym_POUND] = ACTIONS(1531), [anon_sym_BANG] = ACTIONS(1531), [anon_sym_LBRACE] = ACTIONS(1531), [anon_sym_RBRACE] = ACTIONS(1531), [anon_sym_LPAREN] = ACTIONS(1531), [anon_sym_asm] = ACTIONS(1533), [anon_sym_LT] = ACTIONS(1531), [anon_sym_COLON_COLON] = ACTIONS(1531), [anon_sym_STAR] = ACTIONS(1531), [anon_sym_AMP] = ACTIONS(1531), [anon_sym_DOT_DOT] = ACTIONS(1531), [anon_sym_DASH] = ACTIONS(1531), [anon_sym_PIPE] = ACTIONS(1531), [anon_sym_yield] = ACTIONS(1533), [anon_sym_move] = ACTIONS(1533), [sym_integer_literal] = ACTIONS(1531), [aux_sym_string_literal_token1] = ACTIONS(1531), [sym_char_literal] = ACTIONS(1531), [anon_sym_true] = ACTIONS(1533), [anon_sym_false] = ACTIONS(1533), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1533), [sym_metavariable] = ACTIONS(1531), [sym_raw_string_literal] = ACTIONS(1531), [sym_float_literal] = ACTIONS(1531), [sym_block_comment] = ACTIONS(3), }, [394] = { [ts_builtin_sym_end] = ACTIONS(1535), [sym_identifier] = ACTIONS(1537), [anon_sym_SEMI] = ACTIONS(1535), [anon_sym_u8] = ACTIONS(1537), [anon_sym_i8] = ACTIONS(1537), [anon_sym_u16] = ACTIONS(1537), [anon_sym_i16] = ACTIONS(1537), [anon_sym_u32] = ACTIONS(1537), [anon_sym_i32] = ACTIONS(1537), [anon_sym_u64] = ACTIONS(1537), [anon_sym_i64] = ACTIONS(1537), [anon_sym_u128] = ACTIONS(1537), [anon_sym_i128] = ACTIONS(1537), [anon_sym_u256] = ACTIONS(1537), [anon_sym_i256] = ACTIONS(1537), [anon_sym_b256] = ACTIONS(1537), [anon_sym_isize] = ACTIONS(1537), [anon_sym_usize] = ACTIONS(1537), [anon_sym_f32] = ACTIONS(1537), [anon_sym_f64] = ACTIONS(1537), [anon_sym_bool] = ACTIONS(1537), [anon_sym_char] = ACTIONS(1537), [anon_sym_str] = ACTIONS(1537), [anon_sym_LBRACK] = ACTIONS(1535), [anon_sym_contract] = ACTIONS(1537), [anon_sym_script] = ACTIONS(1537), [anon_sym_predicate] = ACTIONS(1537), [anon_sym_library] = ACTIONS(1537), [anon_sym_SQUOTE] = ACTIONS(1537), [anon_sym_abi] = ACTIONS(1537), [anon_sym_break] = ACTIONS(1537), [anon_sym_configurable] = ACTIONS(1537), [anon_sym_const] = ACTIONS(1537), [anon_sym_continue] = ACTIONS(1537), [anon_sym_default] = ACTIONS(1537), [anon_sym_mod] = ACTIONS(1537), [anon_sym_enum] = ACTIONS(1537), [anon_sym_fn] = ACTIONS(1537), [anon_sym_for] = ACTIONS(1537), [anon_sym_if] = ACTIONS(1537), [anon_sym_impl] = ACTIONS(1537), [anon_sym_let] = ACTIONS(1537), [anon_sym_match] = ACTIONS(1537), [anon_sym_pub] = ACTIONS(1537), [anon_sym_return] = ACTIONS(1537), [anon_sym_storage] = ACTIONS(1537), [anon_sym_struct] = ACTIONS(1537), [anon_sym_trait] = ACTIONS(1537), [anon_sym_type] = ACTIONS(1537), [anon_sym_use] = ACTIONS(1537), [anon_sym_while] = ACTIONS(1537), [anon_sym_POUND] = ACTIONS(1535), [anon_sym_BANG] = ACTIONS(1535), [anon_sym_LBRACE] = ACTIONS(1535), [anon_sym_RBRACE] = ACTIONS(1535), [anon_sym_LPAREN] = ACTIONS(1535), [anon_sym_asm] = ACTIONS(1537), [anon_sym_LT] = ACTIONS(1535), [anon_sym_COLON_COLON] = ACTIONS(1535), [anon_sym_STAR] = ACTIONS(1535), [anon_sym_AMP] = ACTIONS(1535), [anon_sym_DOT_DOT] = ACTIONS(1535), [anon_sym_DASH] = ACTIONS(1535), [anon_sym_PIPE] = ACTIONS(1535), [anon_sym_yield] = ACTIONS(1537), [anon_sym_move] = ACTIONS(1537), [sym_integer_literal] = ACTIONS(1535), [aux_sym_string_literal_token1] = ACTIONS(1535), [sym_char_literal] = ACTIONS(1535), [anon_sym_true] = ACTIONS(1537), [anon_sym_false] = ACTIONS(1537), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1537), [sym_metavariable] = ACTIONS(1535), [sym_raw_string_literal] = ACTIONS(1535), [sym_float_literal] = ACTIONS(1535), [sym_block_comment] = ACTIONS(3), }, [395] = { [ts_builtin_sym_end] = ACTIONS(1539), [sym_identifier] = ACTIONS(1541), [anon_sym_SEMI] = ACTIONS(1539), [anon_sym_u8] = ACTIONS(1541), [anon_sym_i8] = ACTIONS(1541), [anon_sym_u16] = ACTIONS(1541), [anon_sym_i16] = ACTIONS(1541), [anon_sym_u32] = ACTIONS(1541), [anon_sym_i32] = ACTIONS(1541), [anon_sym_u64] = ACTIONS(1541), [anon_sym_i64] = ACTIONS(1541), [anon_sym_u128] = ACTIONS(1541), [anon_sym_i128] = ACTIONS(1541), [anon_sym_u256] = ACTIONS(1541), [anon_sym_i256] = ACTIONS(1541), [anon_sym_b256] = ACTIONS(1541), [anon_sym_isize] = ACTIONS(1541), [anon_sym_usize] = ACTIONS(1541), [anon_sym_f32] = ACTIONS(1541), [anon_sym_f64] = ACTIONS(1541), [anon_sym_bool] = ACTIONS(1541), [anon_sym_char] = ACTIONS(1541), [anon_sym_str] = ACTIONS(1541), [anon_sym_LBRACK] = ACTIONS(1539), [anon_sym_contract] = ACTIONS(1541), [anon_sym_script] = ACTIONS(1541), [anon_sym_predicate] = ACTIONS(1541), [anon_sym_library] = ACTIONS(1541), [anon_sym_SQUOTE] = ACTIONS(1541), [anon_sym_abi] = ACTIONS(1541), [anon_sym_break] = ACTIONS(1541), [anon_sym_configurable] = ACTIONS(1541), [anon_sym_const] = ACTIONS(1541), [anon_sym_continue] = ACTIONS(1541), [anon_sym_default] = ACTIONS(1541), [anon_sym_mod] = ACTIONS(1541), [anon_sym_enum] = ACTIONS(1541), [anon_sym_fn] = ACTIONS(1541), [anon_sym_for] = ACTIONS(1541), [anon_sym_if] = ACTIONS(1541), [anon_sym_impl] = ACTIONS(1541), [anon_sym_let] = ACTIONS(1541), [anon_sym_match] = ACTIONS(1541), [anon_sym_pub] = ACTIONS(1541), [anon_sym_return] = ACTIONS(1541), [anon_sym_storage] = ACTIONS(1541), [anon_sym_struct] = ACTIONS(1541), [anon_sym_trait] = ACTIONS(1541), [anon_sym_type] = ACTIONS(1541), [anon_sym_use] = ACTIONS(1541), [anon_sym_while] = ACTIONS(1541), [anon_sym_POUND] = ACTIONS(1539), [anon_sym_BANG] = ACTIONS(1539), [anon_sym_LBRACE] = ACTIONS(1539), [anon_sym_RBRACE] = ACTIONS(1539), [anon_sym_LPAREN] = ACTIONS(1539), [anon_sym_asm] = ACTIONS(1541), [anon_sym_LT] = ACTIONS(1539), [anon_sym_COLON_COLON] = ACTIONS(1539), [anon_sym_STAR] = ACTIONS(1539), [anon_sym_AMP] = ACTIONS(1539), [anon_sym_DOT_DOT] = ACTIONS(1539), [anon_sym_DASH] = ACTIONS(1539), [anon_sym_PIPE] = ACTIONS(1539), [anon_sym_yield] = ACTIONS(1541), [anon_sym_move] = ACTIONS(1541), [sym_integer_literal] = ACTIONS(1539), [aux_sym_string_literal_token1] = ACTIONS(1539), [sym_char_literal] = ACTIONS(1539), [anon_sym_true] = ACTIONS(1541), [anon_sym_false] = ACTIONS(1541), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1541), [sym_metavariable] = ACTIONS(1539), [sym_raw_string_literal] = ACTIONS(1539), [sym_float_literal] = ACTIONS(1539), [sym_block_comment] = ACTIONS(3), }, [396] = { [ts_builtin_sym_end] = ACTIONS(1543), [sym_identifier] = ACTIONS(1545), [anon_sym_SEMI] = ACTIONS(1543), [anon_sym_u8] = ACTIONS(1545), [anon_sym_i8] = ACTIONS(1545), [anon_sym_u16] = ACTIONS(1545), [anon_sym_i16] = ACTIONS(1545), [anon_sym_u32] = ACTIONS(1545), [anon_sym_i32] = ACTIONS(1545), [anon_sym_u64] = ACTIONS(1545), [anon_sym_i64] = ACTIONS(1545), [anon_sym_u128] = ACTIONS(1545), [anon_sym_i128] = ACTIONS(1545), [anon_sym_u256] = ACTIONS(1545), [anon_sym_i256] = ACTIONS(1545), [anon_sym_b256] = ACTIONS(1545), [anon_sym_isize] = ACTIONS(1545), [anon_sym_usize] = ACTIONS(1545), [anon_sym_f32] = ACTIONS(1545), [anon_sym_f64] = ACTIONS(1545), [anon_sym_bool] = ACTIONS(1545), [anon_sym_char] = ACTIONS(1545), [anon_sym_str] = ACTIONS(1545), [anon_sym_LBRACK] = ACTIONS(1543), [anon_sym_contract] = ACTIONS(1545), [anon_sym_script] = ACTIONS(1545), [anon_sym_predicate] = ACTIONS(1545), [anon_sym_library] = ACTIONS(1545), [anon_sym_SQUOTE] = ACTIONS(1545), [anon_sym_abi] = ACTIONS(1545), [anon_sym_break] = ACTIONS(1545), [anon_sym_configurable] = ACTIONS(1545), [anon_sym_const] = ACTIONS(1545), [anon_sym_continue] = ACTIONS(1545), [anon_sym_default] = ACTIONS(1545), [anon_sym_mod] = ACTIONS(1545), [anon_sym_enum] = ACTIONS(1545), [anon_sym_fn] = ACTIONS(1545), [anon_sym_for] = ACTIONS(1545), [anon_sym_if] = ACTIONS(1545), [anon_sym_impl] = ACTIONS(1545), [anon_sym_let] = ACTIONS(1545), [anon_sym_match] = ACTIONS(1545), [anon_sym_pub] = ACTIONS(1545), [anon_sym_return] = ACTIONS(1545), [anon_sym_storage] = ACTIONS(1545), [anon_sym_struct] = ACTIONS(1545), [anon_sym_trait] = ACTIONS(1545), [anon_sym_type] = ACTIONS(1545), [anon_sym_use] = ACTIONS(1545), [anon_sym_while] = ACTIONS(1545), [anon_sym_POUND] = ACTIONS(1543), [anon_sym_BANG] = ACTIONS(1543), [anon_sym_LBRACE] = ACTIONS(1543), [anon_sym_RBRACE] = ACTIONS(1543), [anon_sym_LPAREN] = ACTIONS(1543), [anon_sym_asm] = ACTIONS(1545), [anon_sym_LT] = ACTIONS(1543), [anon_sym_COLON_COLON] = ACTIONS(1543), [anon_sym_STAR] = ACTIONS(1543), [anon_sym_AMP] = ACTIONS(1543), [anon_sym_DOT_DOT] = ACTIONS(1543), [anon_sym_DASH] = ACTIONS(1543), [anon_sym_PIPE] = ACTIONS(1543), [anon_sym_yield] = ACTIONS(1545), [anon_sym_move] = ACTIONS(1545), [sym_integer_literal] = ACTIONS(1543), [aux_sym_string_literal_token1] = ACTIONS(1543), [sym_char_literal] = ACTIONS(1543), [anon_sym_true] = ACTIONS(1545), [anon_sym_false] = ACTIONS(1545), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1545), [sym_metavariable] = ACTIONS(1543), [sym_raw_string_literal] = ACTIONS(1543), [sym_float_literal] = ACTIONS(1543), [sym_block_comment] = ACTIONS(3), }, [397] = { [ts_builtin_sym_end] = ACTIONS(1547), [sym_identifier] = ACTIONS(1549), [anon_sym_SEMI] = ACTIONS(1547), [anon_sym_u8] = ACTIONS(1549), [anon_sym_i8] = ACTIONS(1549), [anon_sym_u16] = ACTIONS(1549), [anon_sym_i16] = ACTIONS(1549), [anon_sym_u32] = ACTIONS(1549), [anon_sym_i32] = ACTIONS(1549), [anon_sym_u64] = ACTIONS(1549), [anon_sym_i64] = ACTIONS(1549), [anon_sym_u128] = ACTIONS(1549), [anon_sym_i128] = ACTIONS(1549), [anon_sym_u256] = ACTIONS(1549), [anon_sym_i256] = ACTIONS(1549), [anon_sym_b256] = ACTIONS(1549), [anon_sym_isize] = ACTIONS(1549), [anon_sym_usize] = ACTIONS(1549), [anon_sym_f32] = ACTIONS(1549), [anon_sym_f64] = ACTIONS(1549), [anon_sym_bool] = ACTIONS(1549), [anon_sym_char] = ACTIONS(1549), [anon_sym_str] = ACTIONS(1549), [anon_sym_LBRACK] = ACTIONS(1547), [anon_sym_contract] = ACTIONS(1549), [anon_sym_script] = ACTIONS(1549), [anon_sym_predicate] = ACTIONS(1549), [anon_sym_library] = ACTIONS(1549), [anon_sym_SQUOTE] = ACTIONS(1549), [anon_sym_abi] = ACTIONS(1549), [anon_sym_break] = ACTIONS(1549), [anon_sym_configurable] = ACTIONS(1549), [anon_sym_const] = ACTIONS(1549), [anon_sym_continue] = ACTIONS(1549), [anon_sym_default] = ACTIONS(1549), [anon_sym_mod] = ACTIONS(1549), [anon_sym_enum] = ACTIONS(1549), [anon_sym_fn] = ACTIONS(1549), [anon_sym_for] = ACTIONS(1549), [anon_sym_if] = ACTIONS(1549), [anon_sym_impl] = ACTIONS(1549), [anon_sym_let] = ACTIONS(1549), [anon_sym_match] = ACTIONS(1549), [anon_sym_pub] = ACTIONS(1549), [anon_sym_return] = ACTIONS(1549), [anon_sym_storage] = ACTIONS(1549), [anon_sym_struct] = ACTIONS(1549), [anon_sym_trait] = ACTIONS(1549), [anon_sym_type] = ACTIONS(1549), [anon_sym_use] = ACTIONS(1549), [anon_sym_while] = ACTIONS(1549), [anon_sym_POUND] = ACTIONS(1547), [anon_sym_BANG] = ACTIONS(1547), [anon_sym_LBRACE] = ACTIONS(1547), [anon_sym_RBRACE] = ACTIONS(1547), [anon_sym_LPAREN] = ACTIONS(1547), [anon_sym_asm] = ACTIONS(1549), [anon_sym_LT] = ACTIONS(1547), [anon_sym_COLON_COLON] = ACTIONS(1547), [anon_sym_STAR] = ACTIONS(1547), [anon_sym_AMP] = ACTIONS(1547), [anon_sym_DOT_DOT] = ACTIONS(1547), [anon_sym_DASH] = ACTIONS(1547), [anon_sym_PIPE] = ACTIONS(1547), [anon_sym_yield] = ACTIONS(1549), [anon_sym_move] = ACTIONS(1549), [sym_integer_literal] = ACTIONS(1547), [aux_sym_string_literal_token1] = ACTIONS(1547), [sym_char_literal] = ACTIONS(1547), [anon_sym_true] = ACTIONS(1549), [anon_sym_false] = ACTIONS(1549), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1549), [sym_metavariable] = ACTIONS(1547), [sym_raw_string_literal] = ACTIONS(1547), [sym_float_literal] = ACTIONS(1547), [sym_block_comment] = ACTIONS(3), }, [398] = { [ts_builtin_sym_end] = ACTIONS(1551), [sym_identifier] = ACTIONS(1553), [anon_sym_SEMI] = ACTIONS(1551), [anon_sym_u8] = ACTIONS(1553), [anon_sym_i8] = ACTIONS(1553), [anon_sym_u16] = ACTIONS(1553), [anon_sym_i16] = ACTIONS(1553), [anon_sym_u32] = ACTIONS(1553), [anon_sym_i32] = ACTIONS(1553), [anon_sym_u64] = ACTIONS(1553), [anon_sym_i64] = ACTIONS(1553), [anon_sym_u128] = ACTIONS(1553), [anon_sym_i128] = ACTIONS(1553), [anon_sym_u256] = ACTIONS(1553), [anon_sym_i256] = ACTIONS(1553), [anon_sym_b256] = ACTIONS(1553), [anon_sym_isize] = ACTIONS(1553), [anon_sym_usize] = ACTIONS(1553), [anon_sym_f32] = ACTIONS(1553), [anon_sym_f64] = ACTIONS(1553), [anon_sym_bool] = ACTIONS(1553), [anon_sym_char] = ACTIONS(1553), [anon_sym_str] = ACTIONS(1553), [anon_sym_LBRACK] = ACTIONS(1551), [anon_sym_contract] = ACTIONS(1553), [anon_sym_script] = ACTIONS(1553), [anon_sym_predicate] = ACTIONS(1553), [anon_sym_library] = ACTIONS(1553), [anon_sym_SQUOTE] = ACTIONS(1553), [anon_sym_abi] = ACTIONS(1553), [anon_sym_break] = ACTIONS(1553), [anon_sym_configurable] = ACTIONS(1553), [anon_sym_const] = ACTIONS(1553), [anon_sym_continue] = ACTIONS(1553), [anon_sym_default] = ACTIONS(1553), [anon_sym_mod] = ACTIONS(1553), [anon_sym_enum] = ACTIONS(1553), [anon_sym_fn] = ACTIONS(1553), [anon_sym_for] = ACTIONS(1553), [anon_sym_if] = ACTIONS(1553), [anon_sym_impl] = ACTIONS(1553), [anon_sym_let] = ACTIONS(1553), [anon_sym_match] = ACTIONS(1553), [anon_sym_pub] = ACTIONS(1553), [anon_sym_return] = ACTIONS(1553), [anon_sym_storage] = ACTIONS(1553), [anon_sym_struct] = ACTIONS(1553), [anon_sym_trait] = ACTIONS(1553), [anon_sym_type] = ACTIONS(1553), [anon_sym_use] = ACTIONS(1553), [anon_sym_while] = ACTIONS(1553), [anon_sym_POUND] = ACTIONS(1551), [anon_sym_BANG] = ACTIONS(1551), [anon_sym_LBRACE] = ACTIONS(1551), [anon_sym_RBRACE] = ACTIONS(1551), [anon_sym_LPAREN] = ACTIONS(1551), [anon_sym_asm] = ACTIONS(1553), [anon_sym_LT] = ACTIONS(1551), [anon_sym_COLON_COLON] = ACTIONS(1551), [anon_sym_STAR] = ACTIONS(1551), [anon_sym_AMP] = ACTIONS(1551), [anon_sym_DOT_DOT] = ACTIONS(1551), [anon_sym_DASH] = ACTIONS(1551), [anon_sym_PIPE] = ACTIONS(1551), [anon_sym_yield] = ACTIONS(1553), [anon_sym_move] = ACTIONS(1553), [sym_integer_literal] = ACTIONS(1551), [aux_sym_string_literal_token1] = ACTIONS(1551), [sym_char_literal] = ACTIONS(1551), [anon_sym_true] = ACTIONS(1553), [anon_sym_false] = ACTIONS(1553), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1553), [sym_metavariable] = ACTIONS(1551), [sym_raw_string_literal] = ACTIONS(1551), [sym_float_literal] = ACTIONS(1551), [sym_block_comment] = ACTIONS(3), }, [399] = { [ts_builtin_sym_end] = ACTIONS(1555), [sym_identifier] = ACTIONS(1557), [anon_sym_SEMI] = ACTIONS(1555), [anon_sym_u8] = ACTIONS(1557), [anon_sym_i8] = ACTIONS(1557), [anon_sym_u16] = ACTIONS(1557), [anon_sym_i16] = ACTIONS(1557), [anon_sym_u32] = ACTIONS(1557), [anon_sym_i32] = ACTIONS(1557), [anon_sym_u64] = ACTIONS(1557), [anon_sym_i64] = ACTIONS(1557), [anon_sym_u128] = ACTIONS(1557), [anon_sym_i128] = ACTIONS(1557), [anon_sym_u256] = ACTIONS(1557), [anon_sym_i256] = ACTIONS(1557), [anon_sym_b256] = ACTIONS(1557), [anon_sym_isize] = ACTIONS(1557), [anon_sym_usize] = ACTIONS(1557), [anon_sym_f32] = ACTIONS(1557), [anon_sym_f64] = ACTIONS(1557), [anon_sym_bool] = ACTIONS(1557), [anon_sym_char] = ACTIONS(1557), [anon_sym_str] = ACTIONS(1557), [anon_sym_LBRACK] = ACTIONS(1555), [anon_sym_contract] = ACTIONS(1557), [anon_sym_script] = ACTIONS(1557), [anon_sym_predicate] = ACTIONS(1557), [anon_sym_library] = ACTIONS(1557), [anon_sym_SQUOTE] = ACTIONS(1557), [anon_sym_abi] = ACTIONS(1557), [anon_sym_break] = ACTIONS(1557), [anon_sym_configurable] = ACTIONS(1557), [anon_sym_const] = ACTIONS(1557), [anon_sym_continue] = ACTIONS(1557), [anon_sym_default] = ACTIONS(1557), [anon_sym_mod] = ACTIONS(1557), [anon_sym_enum] = ACTIONS(1557), [anon_sym_fn] = ACTIONS(1557), [anon_sym_for] = ACTIONS(1557), [anon_sym_if] = ACTIONS(1557), [anon_sym_impl] = ACTIONS(1557), [anon_sym_let] = ACTIONS(1557), [anon_sym_match] = ACTIONS(1557), [anon_sym_pub] = ACTIONS(1557), [anon_sym_return] = ACTIONS(1557), [anon_sym_storage] = ACTIONS(1557), [anon_sym_struct] = ACTIONS(1557), [anon_sym_trait] = ACTIONS(1557), [anon_sym_type] = ACTIONS(1557), [anon_sym_use] = ACTIONS(1557), [anon_sym_while] = ACTIONS(1557), [anon_sym_POUND] = ACTIONS(1555), [anon_sym_BANG] = ACTIONS(1555), [anon_sym_LBRACE] = ACTIONS(1555), [anon_sym_RBRACE] = ACTIONS(1555), [anon_sym_LPAREN] = ACTIONS(1555), [anon_sym_asm] = ACTIONS(1557), [anon_sym_LT] = ACTIONS(1555), [anon_sym_COLON_COLON] = ACTIONS(1555), [anon_sym_STAR] = ACTIONS(1555), [anon_sym_AMP] = ACTIONS(1555), [anon_sym_DOT_DOT] = ACTIONS(1555), [anon_sym_DASH] = ACTIONS(1555), [anon_sym_PIPE] = ACTIONS(1555), [anon_sym_yield] = ACTIONS(1557), [anon_sym_move] = ACTIONS(1557), [sym_integer_literal] = ACTIONS(1555), [aux_sym_string_literal_token1] = ACTIONS(1555), [sym_char_literal] = ACTIONS(1555), [anon_sym_true] = ACTIONS(1557), [anon_sym_false] = ACTIONS(1557), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1557), [sym_metavariable] = ACTIONS(1555), [sym_raw_string_literal] = ACTIONS(1555), [sym_float_literal] = ACTIONS(1555), [sym_block_comment] = ACTIONS(3), }, [400] = { [ts_builtin_sym_end] = ACTIONS(1559), [sym_identifier] = ACTIONS(1561), [anon_sym_SEMI] = ACTIONS(1559), [anon_sym_u8] = ACTIONS(1561), [anon_sym_i8] = ACTIONS(1561), [anon_sym_u16] = ACTIONS(1561), [anon_sym_i16] = ACTIONS(1561), [anon_sym_u32] = ACTIONS(1561), [anon_sym_i32] = ACTIONS(1561), [anon_sym_u64] = ACTIONS(1561), [anon_sym_i64] = ACTIONS(1561), [anon_sym_u128] = ACTIONS(1561), [anon_sym_i128] = ACTIONS(1561), [anon_sym_u256] = ACTIONS(1561), [anon_sym_i256] = ACTIONS(1561), [anon_sym_b256] = ACTIONS(1561), [anon_sym_isize] = ACTIONS(1561), [anon_sym_usize] = ACTIONS(1561), [anon_sym_f32] = ACTIONS(1561), [anon_sym_f64] = ACTIONS(1561), [anon_sym_bool] = ACTIONS(1561), [anon_sym_char] = ACTIONS(1561), [anon_sym_str] = ACTIONS(1561), [anon_sym_LBRACK] = ACTIONS(1559), [anon_sym_contract] = ACTIONS(1561), [anon_sym_script] = ACTIONS(1561), [anon_sym_predicate] = ACTIONS(1561), [anon_sym_library] = ACTIONS(1561), [anon_sym_SQUOTE] = ACTIONS(1561), [anon_sym_abi] = ACTIONS(1561), [anon_sym_break] = ACTIONS(1561), [anon_sym_configurable] = ACTIONS(1561), [anon_sym_const] = ACTIONS(1561), [anon_sym_continue] = ACTIONS(1561), [anon_sym_default] = ACTIONS(1561), [anon_sym_mod] = ACTIONS(1561), [anon_sym_enum] = ACTIONS(1561), [anon_sym_fn] = ACTIONS(1561), [anon_sym_for] = ACTIONS(1561), [anon_sym_if] = ACTIONS(1561), [anon_sym_impl] = ACTIONS(1561), [anon_sym_let] = ACTIONS(1561), [anon_sym_match] = ACTIONS(1561), [anon_sym_pub] = ACTIONS(1561), [anon_sym_return] = ACTIONS(1561), [anon_sym_storage] = ACTIONS(1561), [anon_sym_struct] = ACTIONS(1561), [anon_sym_trait] = ACTIONS(1561), [anon_sym_type] = ACTIONS(1561), [anon_sym_use] = ACTIONS(1561), [anon_sym_while] = ACTIONS(1561), [anon_sym_POUND] = ACTIONS(1559), [anon_sym_BANG] = ACTIONS(1559), [anon_sym_LBRACE] = ACTIONS(1559), [anon_sym_RBRACE] = ACTIONS(1559), [anon_sym_LPAREN] = ACTIONS(1559), [anon_sym_asm] = ACTIONS(1561), [anon_sym_LT] = ACTIONS(1559), [anon_sym_COLON_COLON] = ACTIONS(1559), [anon_sym_STAR] = ACTIONS(1559), [anon_sym_AMP] = ACTIONS(1559), [anon_sym_DOT_DOT] = ACTIONS(1559), [anon_sym_DASH] = ACTIONS(1559), [anon_sym_PIPE] = ACTIONS(1559), [anon_sym_yield] = ACTIONS(1561), [anon_sym_move] = ACTIONS(1561), [sym_integer_literal] = ACTIONS(1559), [aux_sym_string_literal_token1] = ACTIONS(1559), [sym_char_literal] = ACTIONS(1559), [anon_sym_true] = ACTIONS(1561), [anon_sym_false] = ACTIONS(1561), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1561), [sym_metavariable] = ACTIONS(1559), [sym_raw_string_literal] = ACTIONS(1559), [sym_float_literal] = ACTIONS(1559), [sym_block_comment] = ACTIONS(3), }, [401] = { [ts_builtin_sym_end] = ACTIONS(1563), [sym_identifier] = ACTIONS(1565), [anon_sym_SEMI] = ACTIONS(1563), [anon_sym_u8] = ACTIONS(1565), [anon_sym_i8] = ACTIONS(1565), [anon_sym_u16] = ACTIONS(1565), [anon_sym_i16] = ACTIONS(1565), [anon_sym_u32] = ACTIONS(1565), [anon_sym_i32] = ACTIONS(1565), [anon_sym_u64] = ACTIONS(1565), [anon_sym_i64] = ACTIONS(1565), [anon_sym_u128] = ACTIONS(1565), [anon_sym_i128] = ACTIONS(1565), [anon_sym_u256] = ACTIONS(1565), [anon_sym_i256] = ACTIONS(1565), [anon_sym_b256] = ACTIONS(1565), [anon_sym_isize] = ACTIONS(1565), [anon_sym_usize] = ACTIONS(1565), [anon_sym_f32] = ACTIONS(1565), [anon_sym_f64] = ACTIONS(1565), [anon_sym_bool] = ACTIONS(1565), [anon_sym_char] = ACTIONS(1565), [anon_sym_str] = ACTIONS(1565), [anon_sym_LBRACK] = ACTIONS(1563), [anon_sym_contract] = ACTIONS(1565), [anon_sym_script] = ACTIONS(1565), [anon_sym_predicate] = ACTIONS(1565), [anon_sym_library] = ACTIONS(1565), [anon_sym_SQUOTE] = ACTIONS(1565), [anon_sym_abi] = ACTIONS(1565), [anon_sym_break] = ACTIONS(1565), [anon_sym_configurable] = ACTIONS(1565), [anon_sym_const] = ACTIONS(1565), [anon_sym_continue] = ACTIONS(1565), [anon_sym_default] = ACTIONS(1565), [anon_sym_mod] = ACTIONS(1565), [anon_sym_enum] = ACTIONS(1565), [anon_sym_fn] = ACTIONS(1565), [anon_sym_for] = ACTIONS(1565), [anon_sym_if] = ACTIONS(1565), [anon_sym_impl] = ACTIONS(1565), [anon_sym_let] = ACTIONS(1565), [anon_sym_match] = ACTIONS(1565), [anon_sym_pub] = ACTIONS(1565), [anon_sym_return] = ACTIONS(1565), [anon_sym_storage] = ACTIONS(1565), [anon_sym_struct] = ACTIONS(1565), [anon_sym_trait] = ACTIONS(1565), [anon_sym_type] = ACTIONS(1565), [anon_sym_use] = ACTIONS(1565), [anon_sym_while] = ACTIONS(1565), [anon_sym_POUND] = ACTIONS(1563), [anon_sym_BANG] = ACTIONS(1563), [anon_sym_LBRACE] = ACTIONS(1563), [anon_sym_RBRACE] = ACTIONS(1563), [anon_sym_LPAREN] = ACTIONS(1563), [anon_sym_asm] = ACTIONS(1565), [anon_sym_LT] = ACTIONS(1563), [anon_sym_COLON_COLON] = ACTIONS(1563), [anon_sym_STAR] = ACTIONS(1563), [anon_sym_AMP] = ACTIONS(1563), [anon_sym_DOT_DOT] = ACTIONS(1563), [anon_sym_DASH] = ACTIONS(1563), [anon_sym_PIPE] = ACTIONS(1563), [anon_sym_yield] = ACTIONS(1565), [anon_sym_move] = ACTIONS(1565), [sym_integer_literal] = ACTIONS(1563), [aux_sym_string_literal_token1] = ACTIONS(1563), [sym_char_literal] = ACTIONS(1563), [anon_sym_true] = ACTIONS(1565), [anon_sym_false] = ACTIONS(1565), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1565), [sym_metavariable] = ACTIONS(1563), [sym_raw_string_literal] = ACTIONS(1563), [sym_float_literal] = ACTIONS(1563), [sym_block_comment] = ACTIONS(3), }, [402] = { [ts_builtin_sym_end] = ACTIONS(1567), [sym_identifier] = ACTIONS(1569), [anon_sym_SEMI] = ACTIONS(1567), [anon_sym_u8] = ACTIONS(1569), [anon_sym_i8] = ACTIONS(1569), [anon_sym_u16] = ACTIONS(1569), [anon_sym_i16] = ACTIONS(1569), [anon_sym_u32] = ACTIONS(1569), [anon_sym_i32] = ACTIONS(1569), [anon_sym_u64] = ACTIONS(1569), [anon_sym_i64] = ACTIONS(1569), [anon_sym_u128] = ACTIONS(1569), [anon_sym_i128] = ACTIONS(1569), [anon_sym_u256] = ACTIONS(1569), [anon_sym_i256] = ACTIONS(1569), [anon_sym_b256] = ACTIONS(1569), [anon_sym_isize] = ACTIONS(1569), [anon_sym_usize] = ACTIONS(1569), [anon_sym_f32] = ACTIONS(1569), [anon_sym_f64] = ACTIONS(1569), [anon_sym_bool] = ACTIONS(1569), [anon_sym_char] = ACTIONS(1569), [anon_sym_str] = ACTIONS(1569), [anon_sym_LBRACK] = ACTIONS(1567), [anon_sym_contract] = ACTIONS(1569), [anon_sym_script] = ACTIONS(1569), [anon_sym_predicate] = ACTIONS(1569), [anon_sym_library] = ACTIONS(1569), [anon_sym_SQUOTE] = ACTIONS(1569), [anon_sym_abi] = ACTIONS(1569), [anon_sym_break] = ACTIONS(1569), [anon_sym_configurable] = ACTIONS(1569), [anon_sym_const] = ACTIONS(1569), [anon_sym_continue] = ACTIONS(1569), [anon_sym_default] = ACTIONS(1569), [anon_sym_mod] = ACTIONS(1569), [anon_sym_enum] = ACTIONS(1569), [anon_sym_fn] = ACTIONS(1569), [anon_sym_for] = ACTIONS(1569), [anon_sym_if] = ACTIONS(1569), [anon_sym_impl] = ACTIONS(1569), [anon_sym_let] = ACTIONS(1569), [anon_sym_match] = ACTIONS(1569), [anon_sym_pub] = ACTIONS(1569), [anon_sym_return] = ACTIONS(1569), [anon_sym_storage] = ACTIONS(1569), [anon_sym_struct] = ACTIONS(1569), [anon_sym_trait] = ACTIONS(1569), [anon_sym_type] = ACTIONS(1569), [anon_sym_use] = ACTIONS(1569), [anon_sym_while] = ACTIONS(1569), [anon_sym_POUND] = ACTIONS(1567), [anon_sym_BANG] = ACTIONS(1567), [anon_sym_LBRACE] = ACTIONS(1567), [anon_sym_RBRACE] = ACTIONS(1567), [anon_sym_LPAREN] = ACTIONS(1567), [anon_sym_asm] = ACTIONS(1569), [anon_sym_LT] = ACTIONS(1567), [anon_sym_COLON_COLON] = ACTIONS(1567), [anon_sym_STAR] = ACTIONS(1567), [anon_sym_AMP] = ACTIONS(1567), [anon_sym_DOT_DOT] = ACTIONS(1567), [anon_sym_DASH] = ACTIONS(1567), [anon_sym_PIPE] = ACTIONS(1567), [anon_sym_yield] = ACTIONS(1569), [anon_sym_move] = ACTIONS(1569), [sym_integer_literal] = ACTIONS(1567), [aux_sym_string_literal_token1] = ACTIONS(1567), [sym_char_literal] = ACTIONS(1567), [anon_sym_true] = ACTIONS(1569), [anon_sym_false] = ACTIONS(1569), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1569), [sym_metavariable] = ACTIONS(1567), [sym_raw_string_literal] = ACTIONS(1567), [sym_float_literal] = ACTIONS(1567), [sym_block_comment] = ACTIONS(3), }, [403] = { [ts_builtin_sym_end] = ACTIONS(1571), [sym_identifier] = ACTIONS(1573), [anon_sym_SEMI] = ACTIONS(1571), [anon_sym_u8] = ACTIONS(1573), [anon_sym_i8] = ACTIONS(1573), [anon_sym_u16] = ACTIONS(1573), [anon_sym_i16] = ACTIONS(1573), [anon_sym_u32] = ACTIONS(1573), [anon_sym_i32] = ACTIONS(1573), [anon_sym_u64] = ACTIONS(1573), [anon_sym_i64] = ACTIONS(1573), [anon_sym_u128] = ACTIONS(1573), [anon_sym_i128] = ACTIONS(1573), [anon_sym_u256] = ACTIONS(1573), [anon_sym_i256] = ACTIONS(1573), [anon_sym_b256] = ACTIONS(1573), [anon_sym_isize] = ACTIONS(1573), [anon_sym_usize] = ACTIONS(1573), [anon_sym_f32] = ACTIONS(1573), [anon_sym_f64] = ACTIONS(1573), [anon_sym_bool] = ACTIONS(1573), [anon_sym_char] = ACTIONS(1573), [anon_sym_str] = ACTIONS(1573), [anon_sym_LBRACK] = ACTIONS(1571), [anon_sym_contract] = ACTIONS(1573), [anon_sym_script] = ACTIONS(1573), [anon_sym_predicate] = ACTIONS(1573), [anon_sym_library] = ACTIONS(1573), [anon_sym_SQUOTE] = ACTIONS(1573), [anon_sym_abi] = ACTIONS(1573), [anon_sym_break] = ACTIONS(1573), [anon_sym_configurable] = ACTIONS(1573), [anon_sym_const] = ACTIONS(1573), [anon_sym_continue] = ACTIONS(1573), [anon_sym_default] = ACTIONS(1573), [anon_sym_mod] = ACTIONS(1573), [anon_sym_enum] = ACTIONS(1573), [anon_sym_fn] = ACTIONS(1573), [anon_sym_for] = ACTIONS(1573), [anon_sym_if] = ACTIONS(1573), [anon_sym_impl] = ACTIONS(1573), [anon_sym_let] = ACTIONS(1573), [anon_sym_match] = ACTIONS(1573), [anon_sym_pub] = ACTIONS(1573), [anon_sym_return] = ACTIONS(1573), [anon_sym_storage] = ACTIONS(1573), [anon_sym_struct] = ACTIONS(1573), [anon_sym_trait] = ACTIONS(1573), [anon_sym_type] = ACTIONS(1573), [anon_sym_use] = ACTIONS(1573), [anon_sym_while] = ACTIONS(1573), [anon_sym_POUND] = ACTIONS(1571), [anon_sym_BANG] = ACTIONS(1571), [anon_sym_LBRACE] = ACTIONS(1571), [anon_sym_RBRACE] = ACTIONS(1571), [anon_sym_LPAREN] = ACTIONS(1571), [anon_sym_asm] = ACTIONS(1573), [anon_sym_LT] = ACTIONS(1571), [anon_sym_COLON_COLON] = ACTIONS(1571), [anon_sym_STAR] = ACTIONS(1571), [anon_sym_AMP] = ACTIONS(1571), [anon_sym_DOT_DOT] = ACTIONS(1571), [anon_sym_DASH] = ACTIONS(1571), [anon_sym_PIPE] = ACTIONS(1571), [anon_sym_yield] = ACTIONS(1573), [anon_sym_move] = ACTIONS(1573), [sym_integer_literal] = ACTIONS(1571), [aux_sym_string_literal_token1] = ACTIONS(1571), [sym_char_literal] = ACTIONS(1571), [anon_sym_true] = ACTIONS(1573), [anon_sym_false] = ACTIONS(1573), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1573), [sym_metavariable] = ACTIONS(1571), [sym_raw_string_literal] = ACTIONS(1571), [sym_float_literal] = ACTIONS(1571), [sym_block_comment] = ACTIONS(3), }, [404] = { [ts_builtin_sym_end] = ACTIONS(1575), [sym_identifier] = ACTIONS(1577), [anon_sym_SEMI] = ACTIONS(1575), [anon_sym_u8] = ACTIONS(1577), [anon_sym_i8] = ACTIONS(1577), [anon_sym_u16] = ACTIONS(1577), [anon_sym_i16] = ACTIONS(1577), [anon_sym_u32] = ACTIONS(1577), [anon_sym_i32] = ACTIONS(1577), [anon_sym_u64] = ACTIONS(1577), [anon_sym_i64] = ACTIONS(1577), [anon_sym_u128] = ACTIONS(1577), [anon_sym_i128] = ACTIONS(1577), [anon_sym_u256] = ACTIONS(1577), [anon_sym_i256] = ACTIONS(1577), [anon_sym_b256] = ACTIONS(1577), [anon_sym_isize] = ACTIONS(1577), [anon_sym_usize] = ACTIONS(1577), [anon_sym_f32] = ACTIONS(1577), [anon_sym_f64] = ACTIONS(1577), [anon_sym_bool] = ACTIONS(1577), [anon_sym_char] = ACTIONS(1577), [anon_sym_str] = ACTIONS(1577), [anon_sym_LBRACK] = ACTIONS(1575), [anon_sym_contract] = ACTIONS(1577), [anon_sym_script] = ACTIONS(1577), [anon_sym_predicate] = ACTIONS(1577), [anon_sym_library] = ACTIONS(1577), [anon_sym_SQUOTE] = ACTIONS(1577), [anon_sym_abi] = ACTIONS(1577), [anon_sym_break] = ACTIONS(1577), [anon_sym_configurable] = ACTIONS(1577), [anon_sym_const] = ACTIONS(1577), [anon_sym_continue] = ACTIONS(1577), [anon_sym_default] = ACTIONS(1577), [anon_sym_mod] = ACTIONS(1577), [anon_sym_enum] = ACTIONS(1577), [anon_sym_fn] = ACTIONS(1577), [anon_sym_for] = ACTIONS(1577), [anon_sym_if] = ACTIONS(1577), [anon_sym_impl] = ACTIONS(1577), [anon_sym_let] = ACTIONS(1577), [anon_sym_match] = ACTIONS(1577), [anon_sym_pub] = ACTIONS(1577), [anon_sym_return] = ACTIONS(1577), [anon_sym_storage] = ACTIONS(1577), [anon_sym_struct] = ACTIONS(1577), [anon_sym_trait] = ACTIONS(1577), [anon_sym_type] = ACTIONS(1577), [anon_sym_use] = ACTIONS(1577), [anon_sym_while] = ACTIONS(1577), [anon_sym_POUND] = ACTIONS(1575), [anon_sym_BANG] = ACTIONS(1575), [anon_sym_LBRACE] = ACTIONS(1575), [anon_sym_RBRACE] = ACTIONS(1575), [anon_sym_LPAREN] = ACTIONS(1575), [anon_sym_asm] = ACTIONS(1577), [anon_sym_LT] = ACTIONS(1575), [anon_sym_COLON_COLON] = ACTIONS(1575), [anon_sym_STAR] = ACTIONS(1575), [anon_sym_AMP] = ACTIONS(1575), [anon_sym_DOT_DOT] = ACTIONS(1575), [anon_sym_DASH] = ACTIONS(1575), [anon_sym_PIPE] = ACTIONS(1575), [anon_sym_yield] = ACTIONS(1577), [anon_sym_move] = ACTIONS(1577), [sym_integer_literal] = ACTIONS(1575), [aux_sym_string_literal_token1] = ACTIONS(1575), [sym_char_literal] = ACTIONS(1575), [anon_sym_true] = ACTIONS(1577), [anon_sym_false] = ACTIONS(1577), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1577), [sym_metavariable] = ACTIONS(1575), [sym_raw_string_literal] = ACTIONS(1575), [sym_float_literal] = ACTIONS(1575), [sym_block_comment] = ACTIONS(3), }, [405] = { [ts_builtin_sym_end] = ACTIONS(1579), [sym_identifier] = ACTIONS(1581), [anon_sym_SEMI] = ACTIONS(1579), [anon_sym_u8] = ACTIONS(1581), [anon_sym_i8] = ACTIONS(1581), [anon_sym_u16] = ACTIONS(1581), [anon_sym_i16] = ACTIONS(1581), [anon_sym_u32] = ACTIONS(1581), [anon_sym_i32] = ACTIONS(1581), [anon_sym_u64] = ACTIONS(1581), [anon_sym_i64] = ACTIONS(1581), [anon_sym_u128] = ACTIONS(1581), [anon_sym_i128] = ACTIONS(1581), [anon_sym_u256] = ACTIONS(1581), [anon_sym_i256] = ACTIONS(1581), [anon_sym_b256] = ACTIONS(1581), [anon_sym_isize] = ACTIONS(1581), [anon_sym_usize] = ACTIONS(1581), [anon_sym_f32] = ACTIONS(1581), [anon_sym_f64] = ACTIONS(1581), [anon_sym_bool] = ACTIONS(1581), [anon_sym_char] = ACTIONS(1581), [anon_sym_str] = ACTIONS(1581), [anon_sym_LBRACK] = ACTIONS(1579), [anon_sym_contract] = ACTIONS(1581), [anon_sym_script] = ACTIONS(1581), [anon_sym_predicate] = ACTIONS(1581), [anon_sym_library] = ACTIONS(1581), [anon_sym_SQUOTE] = ACTIONS(1581), [anon_sym_abi] = ACTIONS(1581), [anon_sym_break] = ACTIONS(1581), [anon_sym_configurable] = ACTIONS(1581), [anon_sym_const] = ACTIONS(1581), [anon_sym_continue] = ACTIONS(1581), [anon_sym_default] = ACTIONS(1581), [anon_sym_mod] = ACTIONS(1581), [anon_sym_enum] = ACTIONS(1581), [anon_sym_fn] = ACTIONS(1581), [anon_sym_for] = ACTIONS(1581), [anon_sym_if] = ACTIONS(1581), [anon_sym_impl] = ACTIONS(1581), [anon_sym_let] = ACTIONS(1581), [anon_sym_match] = ACTIONS(1581), [anon_sym_pub] = ACTIONS(1581), [anon_sym_return] = ACTIONS(1581), [anon_sym_storage] = ACTIONS(1581), [anon_sym_struct] = ACTIONS(1581), [anon_sym_trait] = ACTIONS(1581), [anon_sym_type] = ACTIONS(1581), [anon_sym_use] = ACTIONS(1581), [anon_sym_while] = ACTIONS(1581), [anon_sym_POUND] = ACTIONS(1579), [anon_sym_BANG] = ACTIONS(1579), [anon_sym_LBRACE] = ACTIONS(1579), [anon_sym_RBRACE] = ACTIONS(1579), [anon_sym_LPAREN] = ACTIONS(1579), [anon_sym_asm] = ACTIONS(1581), [anon_sym_LT] = ACTIONS(1579), [anon_sym_COLON_COLON] = ACTIONS(1579), [anon_sym_STAR] = ACTIONS(1579), [anon_sym_AMP] = ACTIONS(1579), [anon_sym_DOT_DOT] = ACTIONS(1579), [anon_sym_DASH] = ACTIONS(1579), [anon_sym_PIPE] = ACTIONS(1579), [anon_sym_yield] = ACTIONS(1581), [anon_sym_move] = ACTIONS(1581), [sym_integer_literal] = ACTIONS(1579), [aux_sym_string_literal_token1] = ACTIONS(1579), [sym_char_literal] = ACTIONS(1579), [anon_sym_true] = ACTIONS(1581), [anon_sym_false] = ACTIONS(1581), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1581), [sym_metavariable] = ACTIONS(1579), [sym_raw_string_literal] = ACTIONS(1579), [sym_float_literal] = ACTIONS(1579), [sym_block_comment] = ACTIONS(3), }, [406] = { [ts_builtin_sym_end] = ACTIONS(1583), [sym_identifier] = ACTIONS(1585), [anon_sym_SEMI] = ACTIONS(1583), [anon_sym_u8] = ACTIONS(1585), [anon_sym_i8] = ACTIONS(1585), [anon_sym_u16] = ACTIONS(1585), [anon_sym_i16] = ACTIONS(1585), [anon_sym_u32] = ACTIONS(1585), [anon_sym_i32] = ACTIONS(1585), [anon_sym_u64] = ACTIONS(1585), [anon_sym_i64] = ACTIONS(1585), [anon_sym_u128] = ACTIONS(1585), [anon_sym_i128] = ACTIONS(1585), [anon_sym_u256] = ACTIONS(1585), [anon_sym_i256] = ACTIONS(1585), [anon_sym_b256] = ACTIONS(1585), [anon_sym_isize] = ACTIONS(1585), [anon_sym_usize] = ACTIONS(1585), [anon_sym_f32] = ACTIONS(1585), [anon_sym_f64] = ACTIONS(1585), [anon_sym_bool] = ACTIONS(1585), [anon_sym_char] = ACTIONS(1585), [anon_sym_str] = ACTIONS(1585), [anon_sym_LBRACK] = ACTIONS(1583), [anon_sym_contract] = ACTIONS(1585), [anon_sym_script] = ACTIONS(1585), [anon_sym_predicate] = ACTIONS(1585), [anon_sym_library] = ACTIONS(1585), [anon_sym_SQUOTE] = ACTIONS(1585), [anon_sym_abi] = ACTIONS(1585), [anon_sym_break] = ACTIONS(1585), [anon_sym_configurable] = ACTIONS(1585), [anon_sym_const] = ACTIONS(1585), [anon_sym_continue] = ACTIONS(1585), [anon_sym_default] = ACTIONS(1585), [anon_sym_mod] = ACTIONS(1585), [anon_sym_enum] = ACTIONS(1585), [anon_sym_fn] = ACTIONS(1585), [anon_sym_for] = ACTIONS(1585), [anon_sym_if] = ACTIONS(1585), [anon_sym_impl] = ACTIONS(1585), [anon_sym_let] = ACTIONS(1585), [anon_sym_match] = ACTIONS(1585), [anon_sym_pub] = ACTIONS(1585), [anon_sym_return] = ACTIONS(1585), [anon_sym_storage] = ACTIONS(1585), [anon_sym_struct] = ACTIONS(1585), [anon_sym_trait] = ACTIONS(1585), [anon_sym_type] = ACTIONS(1585), [anon_sym_use] = ACTIONS(1585), [anon_sym_while] = ACTIONS(1585), [anon_sym_POUND] = ACTIONS(1583), [anon_sym_BANG] = ACTIONS(1583), [anon_sym_LBRACE] = ACTIONS(1583), [anon_sym_RBRACE] = ACTIONS(1583), [anon_sym_LPAREN] = ACTIONS(1583), [anon_sym_asm] = ACTIONS(1585), [anon_sym_LT] = ACTIONS(1583), [anon_sym_COLON_COLON] = ACTIONS(1583), [anon_sym_STAR] = ACTIONS(1583), [anon_sym_AMP] = ACTIONS(1583), [anon_sym_DOT_DOT] = ACTIONS(1583), [anon_sym_DASH] = ACTIONS(1583), [anon_sym_PIPE] = ACTIONS(1583), [anon_sym_yield] = ACTIONS(1585), [anon_sym_move] = ACTIONS(1585), [sym_integer_literal] = ACTIONS(1583), [aux_sym_string_literal_token1] = ACTIONS(1583), [sym_char_literal] = ACTIONS(1583), [anon_sym_true] = ACTIONS(1585), [anon_sym_false] = ACTIONS(1585), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1585), [sym_metavariable] = ACTIONS(1583), [sym_raw_string_literal] = ACTIONS(1583), [sym_float_literal] = ACTIONS(1583), [sym_block_comment] = ACTIONS(3), }, [407] = { [ts_builtin_sym_end] = ACTIONS(1587), [sym_identifier] = ACTIONS(1589), [anon_sym_SEMI] = ACTIONS(1587), [anon_sym_u8] = ACTIONS(1589), [anon_sym_i8] = ACTIONS(1589), [anon_sym_u16] = ACTIONS(1589), [anon_sym_i16] = ACTIONS(1589), [anon_sym_u32] = ACTIONS(1589), [anon_sym_i32] = ACTIONS(1589), [anon_sym_u64] = ACTIONS(1589), [anon_sym_i64] = ACTIONS(1589), [anon_sym_u128] = ACTIONS(1589), [anon_sym_i128] = ACTIONS(1589), [anon_sym_u256] = ACTIONS(1589), [anon_sym_i256] = ACTIONS(1589), [anon_sym_b256] = ACTIONS(1589), [anon_sym_isize] = ACTIONS(1589), [anon_sym_usize] = ACTIONS(1589), [anon_sym_f32] = ACTIONS(1589), [anon_sym_f64] = ACTIONS(1589), [anon_sym_bool] = ACTIONS(1589), [anon_sym_char] = ACTIONS(1589), [anon_sym_str] = ACTIONS(1589), [anon_sym_LBRACK] = ACTIONS(1587), [anon_sym_contract] = ACTIONS(1589), [anon_sym_script] = ACTIONS(1589), [anon_sym_predicate] = ACTIONS(1589), [anon_sym_library] = ACTIONS(1589), [anon_sym_SQUOTE] = ACTIONS(1589), [anon_sym_abi] = ACTIONS(1589), [anon_sym_break] = ACTIONS(1589), [anon_sym_configurable] = ACTIONS(1589), [anon_sym_const] = ACTIONS(1589), [anon_sym_continue] = ACTIONS(1589), [anon_sym_default] = ACTIONS(1589), [anon_sym_mod] = ACTIONS(1589), [anon_sym_enum] = ACTIONS(1589), [anon_sym_fn] = ACTIONS(1589), [anon_sym_for] = ACTIONS(1589), [anon_sym_if] = ACTIONS(1589), [anon_sym_impl] = ACTIONS(1589), [anon_sym_let] = ACTIONS(1589), [anon_sym_match] = ACTIONS(1589), [anon_sym_pub] = ACTIONS(1589), [anon_sym_return] = ACTIONS(1589), [anon_sym_storage] = ACTIONS(1589), [anon_sym_struct] = ACTIONS(1589), [anon_sym_trait] = ACTIONS(1589), [anon_sym_type] = ACTIONS(1589), [anon_sym_use] = ACTIONS(1589), [anon_sym_while] = ACTIONS(1589), [anon_sym_POUND] = ACTIONS(1587), [anon_sym_BANG] = ACTIONS(1587), [anon_sym_LBRACE] = ACTIONS(1587), [anon_sym_RBRACE] = ACTIONS(1587), [anon_sym_LPAREN] = ACTIONS(1587), [anon_sym_asm] = ACTIONS(1589), [anon_sym_LT] = ACTIONS(1587), [anon_sym_COLON_COLON] = ACTIONS(1587), [anon_sym_STAR] = ACTIONS(1587), [anon_sym_AMP] = ACTIONS(1587), [anon_sym_DOT_DOT] = ACTIONS(1587), [anon_sym_DASH] = ACTIONS(1587), [anon_sym_PIPE] = ACTIONS(1587), [anon_sym_yield] = ACTIONS(1589), [anon_sym_move] = ACTIONS(1589), [sym_integer_literal] = ACTIONS(1587), [aux_sym_string_literal_token1] = ACTIONS(1587), [sym_char_literal] = ACTIONS(1587), [anon_sym_true] = ACTIONS(1589), [anon_sym_false] = ACTIONS(1589), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1589), [sym_metavariable] = ACTIONS(1587), [sym_raw_string_literal] = ACTIONS(1587), [sym_float_literal] = ACTIONS(1587), [sym_block_comment] = ACTIONS(3), }, [408] = { [sym_primitive_type] = STATE(1176), [sym_attribute_item] = STATE(414), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_match_arm] = STATE(411), [sym_last_match_arm] = STATE(2003), [sym_match_pattern] = STATE(2173), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1576), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_enum_variant_list_repeat1] = STATE(414), [aux_sym_match_block_repeat1] = STATE(411), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_POUND] = ACTIONS(357), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [409] = { [sym_primitive_type] = STATE(1176), [sym_attribute_item] = STATE(414), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_match_arm] = STATE(411), [sym_last_match_arm] = STATE(2039), [sym_match_pattern] = STATE(2173), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1576), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_enum_variant_list_repeat1] = STATE(414), [aux_sym_match_block_repeat1] = STATE(411), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_POUND] = ACTIONS(357), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [410] = { [sym_primitive_type] = STATE(1176), [sym_attribute_item] = STATE(414), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_match_arm] = STATE(411), [sym_last_match_arm] = STATE(2178), [sym_match_pattern] = STATE(2173), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1576), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_enum_variant_list_repeat1] = STATE(414), [aux_sym_match_block_repeat1] = STATE(411), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_POUND] = ACTIONS(357), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [411] = { [sym_primitive_type] = STATE(1176), [sym_attribute_item] = STATE(412), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_match_arm] = STATE(411), [sym_match_pattern] = STATE(2077), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1576), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_enum_variant_list_repeat1] = STATE(412), [aux_sym_match_block_repeat1] = STATE(411), [sym_identifier] = ACTIONS(1591), [anon_sym_u8] = ACTIONS(1594), [anon_sym_i8] = ACTIONS(1594), [anon_sym_u16] = ACTIONS(1594), [anon_sym_i16] = ACTIONS(1594), [anon_sym_u32] = ACTIONS(1594), [anon_sym_i32] = ACTIONS(1594), [anon_sym_u64] = ACTIONS(1594), [anon_sym_i64] = ACTIONS(1594), [anon_sym_u128] = ACTIONS(1594), [anon_sym_i128] = ACTIONS(1594), [anon_sym_u256] = ACTIONS(1594), [anon_sym_i256] = ACTIONS(1594), [anon_sym_b256] = ACTIONS(1594), [anon_sym_isize] = ACTIONS(1594), [anon_sym_usize] = ACTIONS(1594), [anon_sym_f32] = ACTIONS(1594), [anon_sym_f64] = ACTIONS(1594), [anon_sym_bool] = ACTIONS(1594), [anon_sym_char] = ACTIONS(1594), [anon_sym_str] = ACTIONS(1597), [anon_sym_LBRACK] = ACTIONS(1600), [anon_sym_const] = ACTIONS(1603), [anon_sym_default] = ACTIONS(1606), [anon_sym_POUND] = ACTIONS(1609), [anon_sym_LPAREN] = ACTIONS(1612), [anon_sym_LT] = ACTIONS(1615), [anon_sym_COLON_COLON] = ACTIONS(1618), [anon_sym__] = ACTIONS(1621), [anon_sym_AMP] = ACTIONS(1624), [anon_sym_ref] = ACTIONS(1627), [sym_mutable_specifier] = ACTIONS(1630), [anon_sym_DOT_DOT] = ACTIONS(1633), [anon_sym_DASH] = ACTIONS(1636), [anon_sym_deref] = ACTIONS(1639), [sym_integer_literal] = ACTIONS(1642), [aux_sym_string_literal_token1] = ACTIONS(1645), [sym_char_literal] = ACTIONS(1642), [anon_sym_true] = ACTIONS(1648), [anon_sym_false] = ACTIONS(1648), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1651), [sym_metavariable] = ACTIONS(1654), [sym_raw_string_literal] = ACTIONS(1642), [sym_float_literal] = ACTIONS(1642), [sym_block_comment] = ACTIONS(3), }, [412] = { [sym_primitive_type] = STATE(1176), [sym_attribute_item] = STATE(474), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_match_pattern] = STATE(2107), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1576), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_enum_variant_list_repeat1] = STATE(474), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_POUND] = ACTIONS(357), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [413] = { [sym_primitive_type] = STATE(413), [sym_delim_token_tree] = STATE(413), [sym__delim_tokens] = STATE(413), [sym__non_delim_token] = STATE(413), [sym__literal] = STATE(413), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(413), [sym_identifier] = ACTIONS(1657), [anon_sym_u8] = ACTIONS(1660), [anon_sym_i8] = ACTIONS(1660), [anon_sym_u16] = ACTIONS(1660), [anon_sym_i16] = ACTIONS(1660), [anon_sym_u32] = ACTIONS(1660), [anon_sym_i32] = ACTIONS(1660), [anon_sym_u64] = ACTIONS(1660), [anon_sym_i64] = ACTIONS(1660), [anon_sym_u128] = ACTIONS(1660), [anon_sym_i128] = ACTIONS(1660), [anon_sym_u256] = ACTIONS(1660), [anon_sym_i256] = ACTIONS(1660), [anon_sym_b256] = ACTIONS(1660), [anon_sym_isize] = ACTIONS(1660), [anon_sym_usize] = ACTIONS(1660), [anon_sym_f32] = ACTIONS(1660), [anon_sym_f64] = ACTIONS(1660), [anon_sym_bool] = ACTIONS(1660), [anon_sym_char] = ACTIONS(1660), [anon_sym_str] = ACTIONS(1663), [anon_sym_LBRACK] = ACTIONS(1666), [anon_sym_RBRACK] = ACTIONS(1669), [aux_sym__non_special_token_token1] = ACTIONS(1657), [anon_sym_SQUOTE] = ACTIONS(1657), [anon_sym_abi] = ACTIONS(1657), [anon_sym_as] = ACTIONS(1657), [anon_sym_break] = ACTIONS(1657), [anon_sym_configurable] = ACTIONS(1657), [anon_sym_const] = ACTIONS(1657), [anon_sym_continue] = ACTIONS(1657), [anon_sym_default] = ACTIONS(1657), [anon_sym_mod] = ACTIONS(1657), [anon_sym_enum] = ACTIONS(1657), [anon_sym_fn] = ACTIONS(1657), [anon_sym_for] = ACTIONS(1657), [anon_sym_if] = ACTIONS(1657), [anon_sym_impl] = ACTIONS(1657), [anon_sym_let] = ACTIONS(1657), [anon_sym_match] = ACTIONS(1657), [anon_sym_pub] = ACTIONS(1657), [anon_sym_return] = ACTIONS(1657), [anon_sym_storage] = ACTIONS(1657), [anon_sym_struct] = ACTIONS(1657), [anon_sym_trait] = ACTIONS(1657), [anon_sym_type] = ACTIONS(1657), [anon_sym_use] = ACTIONS(1657), [anon_sym_where] = ACTIONS(1657), [anon_sym_while] = ACTIONS(1657), [anon_sym_LBRACE] = ACTIONS(1671), [anon_sym_RBRACE] = ACTIONS(1669), [anon_sym_LPAREN] = ACTIONS(1674), [anon_sym_RPAREN] = ACTIONS(1669), [sym_mutable_specifier] = ACTIONS(1657), [anon_sym_DOLLAR] = ACTIONS(1677), [sym_integer_literal] = ACTIONS(1680), [aux_sym_string_literal_token1] = ACTIONS(1683), [sym_char_literal] = ACTIONS(1680), [anon_sym_true] = ACTIONS(1686), [anon_sym_false] = ACTIONS(1686), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1657), [sym_raw_string_literal] = ACTIONS(1680), [sym_float_literal] = ACTIONS(1680), [sym_block_comment] = ACTIONS(3), }, [414] = { [sym_primitive_type] = STATE(1176), [sym_attribute_item] = STATE(474), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_match_pattern] = STATE(2001), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1576), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [aux_sym_enum_variant_list_repeat1] = STATE(474), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_POUND] = ACTIONS(357), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [415] = { [sym_primitive_type] = STATE(1176), [sym_asm_parameter] = STATE(1704), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1507), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_COMMA] = ACTIONS(1691), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_RPAREN] = ACTIONS(1693), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [416] = { [sym_primitive_type] = STATE(413), [sym_delim_token_tree] = STATE(413), [sym__delim_tokens] = STATE(413), [sym__non_delim_token] = STATE(413), [sym__literal] = STATE(413), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(413), [sym_identifier] = ACTIONS(1695), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [aux_sym__non_special_token_token1] = ACTIONS(1695), [anon_sym_SQUOTE] = ACTIONS(1695), [anon_sym_abi] = ACTIONS(1695), [anon_sym_as] = ACTIONS(1695), [anon_sym_break] = ACTIONS(1695), [anon_sym_configurable] = ACTIONS(1695), [anon_sym_const] = ACTIONS(1695), [anon_sym_continue] = ACTIONS(1695), [anon_sym_default] = ACTIONS(1695), [anon_sym_mod] = ACTIONS(1695), [anon_sym_enum] = ACTIONS(1695), [anon_sym_fn] = ACTIONS(1695), [anon_sym_for] = ACTIONS(1695), [anon_sym_if] = ACTIONS(1695), [anon_sym_impl] = ACTIONS(1695), [anon_sym_let] = ACTIONS(1695), [anon_sym_match] = ACTIONS(1695), [anon_sym_pub] = ACTIONS(1695), [anon_sym_return] = ACTIONS(1695), [anon_sym_storage] = ACTIONS(1695), [anon_sym_struct] = ACTIONS(1695), [anon_sym_trait] = ACTIONS(1695), [anon_sym_type] = ACTIONS(1695), [anon_sym_use] = ACTIONS(1695), [anon_sym_where] = ACTIONS(1695), [anon_sym_while] = ACTIONS(1695), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_RBRACE] = ACTIONS(1705), [anon_sym_LPAREN] = ACTIONS(1707), [sym_mutable_specifier] = ACTIONS(1695), [anon_sym_DOLLAR] = ACTIONS(1709), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1695), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [417] = { [sym_primitive_type] = STATE(421), [sym_delim_token_tree] = STATE(421), [sym__delim_tokens] = STATE(421), [sym__non_delim_token] = STATE(421), [sym__literal] = STATE(421), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(421), [sym_identifier] = ACTIONS(1717), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [aux_sym__non_special_token_token1] = ACTIONS(1717), [anon_sym_SQUOTE] = ACTIONS(1717), [anon_sym_abi] = ACTIONS(1717), [anon_sym_as] = ACTIONS(1717), [anon_sym_break] = ACTIONS(1717), [anon_sym_configurable] = ACTIONS(1717), [anon_sym_const] = ACTIONS(1717), [anon_sym_continue] = ACTIONS(1717), [anon_sym_default] = ACTIONS(1717), [anon_sym_mod] = ACTIONS(1717), [anon_sym_enum] = ACTIONS(1717), [anon_sym_fn] = ACTIONS(1717), [anon_sym_for] = ACTIONS(1717), [anon_sym_if] = ACTIONS(1717), [anon_sym_impl] = ACTIONS(1717), [anon_sym_let] = ACTIONS(1717), [anon_sym_match] = ACTIONS(1717), [anon_sym_pub] = ACTIONS(1717), [anon_sym_return] = ACTIONS(1717), [anon_sym_storage] = ACTIONS(1717), [anon_sym_struct] = ACTIONS(1717), [anon_sym_trait] = ACTIONS(1717), [anon_sym_type] = ACTIONS(1717), [anon_sym_use] = ACTIONS(1717), [anon_sym_where] = ACTIONS(1717), [anon_sym_while] = ACTIONS(1717), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_LPAREN] = ACTIONS(1707), [anon_sym_RPAREN] = ACTIONS(1719), [sym_mutable_specifier] = ACTIONS(1717), [anon_sym_DOLLAR] = ACTIONS(1721), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1717), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [418] = { [sym_primitive_type] = STATE(420), [sym_delim_token_tree] = STATE(420), [sym__delim_tokens] = STATE(420), [sym__non_delim_token] = STATE(420), [sym__literal] = STATE(420), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(420), [sym_identifier] = ACTIONS(1723), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [anon_sym_RBRACK] = ACTIONS(1719), [aux_sym__non_special_token_token1] = ACTIONS(1723), [anon_sym_SQUOTE] = ACTIONS(1723), [anon_sym_abi] = ACTIONS(1723), [anon_sym_as] = ACTIONS(1723), [anon_sym_break] = ACTIONS(1723), [anon_sym_configurable] = ACTIONS(1723), [anon_sym_const] = ACTIONS(1723), [anon_sym_continue] = ACTIONS(1723), [anon_sym_default] = ACTIONS(1723), [anon_sym_mod] = ACTIONS(1723), [anon_sym_enum] = ACTIONS(1723), [anon_sym_fn] = ACTIONS(1723), [anon_sym_for] = ACTIONS(1723), [anon_sym_if] = ACTIONS(1723), [anon_sym_impl] = ACTIONS(1723), [anon_sym_let] = ACTIONS(1723), [anon_sym_match] = ACTIONS(1723), [anon_sym_pub] = ACTIONS(1723), [anon_sym_return] = ACTIONS(1723), [anon_sym_storage] = ACTIONS(1723), [anon_sym_struct] = ACTIONS(1723), [anon_sym_trait] = ACTIONS(1723), [anon_sym_type] = ACTIONS(1723), [anon_sym_use] = ACTIONS(1723), [anon_sym_where] = ACTIONS(1723), [anon_sym_while] = ACTIONS(1723), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_LPAREN] = ACTIONS(1707), [sym_mutable_specifier] = ACTIONS(1723), [anon_sym_DOLLAR] = ACTIONS(1725), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1723), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [419] = { [sym_primitive_type] = STATE(416), [sym_delim_token_tree] = STATE(416), [sym__delim_tokens] = STATE(416), [sym__non_delim_token] = STATE(416), [sym__literal] = STATE(416), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(416), [sym_identifier] = ACTIONS(1727), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [aux_sym__non_special_token_token1] = ACTIONS(1727), [anon_sym_SQUOTE] = ACTIONS(1727), [anon_sym_abi] = ACTIONS(1727), [anon_sym_as] = ACTIONS(1727), [anon_sym_break] = ACTIONS(1727), [anon_sym_configurable] = ACTIONS(1727), [anon_sym_const] = ACTIONS(1727), [anon_sym_continue] = ACTIONS(1727), [anon_sym_default] = ACTIONS(1727), [anon_sym_mod] = ACTIONS(1727), [anon_sym_enum] = ACTIONS(1727), [anon_sym_fn] = ACTIONS(1727), [anon_sym_for] = ACTIONS(1727), [anon_sym_if] = ACTIONS(1727), [anon_sym_impl] = ACTIONS(1727), [anon_sym_let] = ACTIONS(1727), [anon_sym_match] = ACTIONS(1727), [anon_sym_pub] = ACTIONS(1727), [anon_sym_return] = ACTIONS(1727), [anon_sym_storage] = ACTIONS(1727), [anon_sym_struct] = ACTIONS(1727), [anon_sym_trait] = ACTIONS(1727), [anon_sym_type] = ACTIONS(1727), [anon_sym_use] = ACTIONS(1727), [anon_sym_where] = ACTIONS(1727), [anon_sym_while] = ACTIONS(1727), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_RBRACE] = ACTIONS(1719), [anon_sym_LPAREN] = ACTIONS(1707), [sym_mutable_specifier] = ACTIONS(1727), [anon_sym_DOLLAR] = ACTIONS(1729), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1727), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [420] = { [sym_primitive_type] = STATE(413), [sym_delim_token_tree] = STATE(413), [sym__delim_tokens] = STATE(413), [sym__non_delim_token] = STATE(413), [sym__literal] = STATE(413), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(413), [sym_identifier] = ACTIONS(1695), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [anon_sym_RBRACK] = ACTIONS(1705), [aux_sym__non_special_token_token1] = ACTIONS(1695), [anon_sym_SQUOTE] = ACTIONS(1695), [anon_sym_abi] = ACTIONS(1695), [anon_sym_as] = ACTIONS(1695), [anon_sym_break] = ACTIONS(1695), [anon_sym_configurable] = ACTIONS(1695), [anon_sym_const] = ACTIONS(1695), [anon_sym_continue] = ACTIONS(1695), [anon_sym_default] = ACTIONS(1695), [anon_sym_mod] = ACTIONS(1695), [anon_sym_enum] = ACTIONS(1695), [anon_sym_fn] = ACTIONS(1695), [anon_sym_for] = ACTIONS(1695), [anon_sym_if] = ACTIONS(1695), [anon_sym_impl] = ACTIONS(1695), [anon_sym_let] = ACTIONS(1695), [anon_sym_match] = ACTIONS(1695), [anon_sym_pub] = ACTIONS(1695), [anon_sym_return] = ACTIONS(1695), [anon_sym_storage] = ACTIONS(1695), [anon_sym_struct] = ACTIONS(1695), [anon_sym_trait] = ACTIONS(1695), [anon_sym_type] = ACTIONS(1695), [anon_sym_use] = ACTIONS(1695), [anon_sym_where] = ACTIONS(1695), [anon_sym_while] = ACTIONS(1695), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_LPAREN] = ACTIONS(1707), [sym_mutable_specifier] = ACTIONS(1695), [anon_sym_DOLLAR] = ACTIONS(1709), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1695), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [421] = { [sym_primitive_type] = STATE(413), [sym_delim_token_tree] = STATE(413), [sym__delim_tokens] = STATE(413), [sym__non_delim_token] = STATE(413), [sym__literal] = STATE(413), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(413), [sym_identifier] = ACTIONS(1695), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [aux_sym__non_special_token_token1] = ACTIONS(1695), [anon_sym_SQUOTE] = ACTIONS(1695), [anon_sym_abi] = ACTIONS(1695), [anon_sym_as] = ACTIONS(1695), [anon_sym_break] = ACTIONS(1695), [anon_sym_configurable] = ACTIONS(1695), [anon_sym_const] = ACTIONS(1695), [anon_sym_continue] = ACTIONS(1695), [anon_sym_default] = ACTIONS(1695), [anon_sym_mod] = ACTIONS(1695), [anon_sym_enum] = ACTIONS(1695), [anon_sym_fn] = ACTIONS(1695), [anon_sym_for] = ACTIONS(1695), [anon_sym_if] = ACTIONS(1695), [anon_sym_impl] = ACTIONS(1695), [anon_sym_let] = ACTIONS(1695), [anon_sym_match] = ACTIONS(1695), [anon_sym_pub] = ACTIONS(1695), [anon_sym_return] = ACTIONS(1695), [anon_sym_storage] = ACTIONS(1695), [anon_sym_struct] = ACTIONS(1695), [anon_sym_trait] = ACTIONS(1695), [anon_sym_type] = ACTIONS(1695), [anon_sym_use] = ACTIONS(1695), [anon_sym_where] = ACTIONS(1695), [anon_sym_while] = ACTIONS(1695), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_LPAREN] = ACTIONS(1707), [anon_sym_RPAREN] = ACTIONS(1705), [sym_mutable_specifier] = ACTIONS(1695), [anon_sym_DOLLAR] = ACTIONS(1709), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1695), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [422] = { [sym_primitive_type] = STATE(1176), [sym_asm_parameter] = STATE(1966), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1507), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_RPAREN] = ACTIONS(1731), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [423] = { [sym_primitive_type] = STATE(431), [sym_delim_token_tree] = STATE(431), [sym__delim_tokens] = STATE(431), [sym__non_delim_token] = STATE(431), [sym__literal] = STATE(431), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(431), [sym_identifier] = ACTIONS(1733), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [anon_sym_RBRACK] = ACTIONS(1735), [aux_sym__non_special_token_token1] = ACTIONS(1733), [anon_sym_SQUOTE] = ACTIONS(1733), [anon_sym_abi] = ACTIONS(1733), [anon_sym_as] = ACTIONS(1733), [anon_sym_break] = ACTIONS(1733), [anon_sym_configurable] = ACTIONS(1733), [anon_sym_const] = ACTIONS(1733), [anon_sym_continue] = ACTIONS(1733), [anon_sym_default] = ACTIONS(1733), [anon_sym_mod] = ACTIONS(1733), [anon_sym_enum] = ACTIONS(1733), [anon_sym_fn] = ACTIONS(1733), [anon_sym_for] = ACTIONS(1733), [anon_sym_if] = ACTIONS(1733), [anon_sym_impl] = ACTIONS(1733), [anon_sym_let] = ACTIONS(1733), [anon_sym_match] = ACTIONS(1733), [anon_sym_pub] = ACTIONS(1733), [anon_sym_return] = ACTIONS(1733), [anon_sym_storage] = ACTIONS(1733), [anon_sym_struct] = ACTIONS(1733), [anon_sym_trait] = ACTIONS(1733), [anon_sym_type] = ACTIONS(1733), [anon_sym_use] = ACTIONS(1733), [anon_sym_where] = ACTIONS(1733), [anon_sym_while] = ACTIONS(1733), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_LPAREN] = ACTIONS(1707), [sym_mutable_specifier] = ACTIONS(1733), [anon_sym_DOLLAR] = ACTIONS(1737), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1733), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [424] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1550), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_COMMA] = ACTIONS(1739), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_RPAREN] = ACTIONS(1741), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [425] = { [sym_primitive_type] = STATE(432), [sym_delim_token_tree] = STATE(432), [sym__delim_tokens] = STATE(432), [sym__non_delim_token] = STATE(432), [sym__literal] = STATE(432), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(432), [sym_identifier] = ACTIONS(1743), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [aux_sym__non_special_token_token1] = ACTIONS(1743), [anon_sym_SQUOTE] = ACTIONS(1743), [anon_sym_abi] = ACTIONS(1743), [anon_sym_as] = ACTIONS(1743), [anon_sym_break] = ACTIONS(1743), [anon_sym_configurable] = ACTIONS(1743), [anon_sym_const] = ACTIONS(1743), [anon_sym_continue] = ACTIONS(1743), [anon_sym_default] = ACTIONS(1743), [anon_sym_mod] = ACTIONS(1743), [anon_sym_enum] = ACTIONS(1743), [anon_sym_fn] = ACTIONS(1743), [anon_sym_for] = ACTIONS(1743), [anon_sym_if] = ACTIONS(1743), [anon_sym_impl] = ACTIONS(1743), [anon_sym_let] = ACTIONS(1743), [anon_sym_match] = ACTIONS(1743), [anon_sym_pub] = ACTIONS(1743), [anon_sym_return] = ACTIONS(1743), [anon_sym_storage] = ACTIONS(1743), [anon_sym_struct] = ACTIONS(1743), [anon_sym_trait] = ACTIONS(1743), [anon_sym_type] = ACTIONS(1743), [anon_sym_use] = ACTIONS(1743), [anon_sym_where] = ACTIONS(1743), [anon_sym_while] = ACTIONS(1743), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_RBRACE] = ACTIONS(1735), [anon_sym_LPAREN] = ACTIONS(1707), [sym_mutable_specifier] = ACTIONS(1743), [anon_sym_DOLLAR] = ACTIONS(1745), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1743), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [426] = { [sym_primitive_type] = STATE(430), [sym_delim_token_tree] = STATE(430), [sym__delim_tokens] = STATE(430), [sym__non_delim_token] = STATE(430), [sym__literal] = STATE(430), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(430), [sym_identifier] = ACTIONS(1747), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [aux_sym__non_special_token_token1] = ACTIONS(1747), [anon_sym_SQUOTE] = ACTIONS(1747), [anon_sym_abi] = ACTIONS(1747), [anon_sym_as] = ACTIONS(1747), [anon_sym_break] = ACTIONS(1747), [anon_sym_configurable] = ACTIONS(1747), [anon_sym_const] = ACTIONS(1747), [anon_sym_continue] = ACTIONS(1747), [anon_sym_default] = ACTIONS(1747), [anon_sym_mod] = ACTIONS(1747), [anon_sym_enum] = ACTIONS(1747), [anon_sym_fn] = ACTIONS(1747), [anon_sym_for] = ACTIONS(1747), [anon_sym_if] = ACTIONS(1747), [anon_sym_impl] = ACTIONS(1747), [anon_sym_let] = ACTIONS(1747), [anon_sym_match] = ACTIONS(1747), [anon_sym_pub] = ACTIONS(1747), [anon_sym_return] = ACTIONS(1747), [anon_sym_storage] = ACTIONS(1747), [anon_sym_struct] = ACTIONS(1747), [anon_sym_trait] = ACTIONS(1747), [anon_sym_type] = ACTIONS(1747), [anon_sym_use] = ACTIONS(1747), [anon_sym_where] = ACTIONS(1747), [anon_sym_while] = ACTIONS(1747), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_LPAREN] = ACTIONS(1707), [anon_sym_RPAREN] = ACTIONS(1735), [sym_mutable_specifier] = ACTIONS(1747), [anon_sym_DOLLAR] = ACTIONS(1749), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1747), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [427] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1529), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_RBRACK] = ACTIONS(807), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_COMMA] = ACTIONS(811), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [428] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1503), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_COMMA] = ACTIONS(789), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_RPAREN] = ACTIONS(1751), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [429] = { [sym_primitive_type] = STATE(1176), [sym_asm_parameter] = STATE(1966), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1507), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_RPAREN] = ACTIONS(1753), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [430] = { [sym_primitive_type] = STATE(413), [sym_delim_token_tree] = STATE(413), [sym__delim_tokens] = STATE(413), [sym__non_delim_token] = STATE(413), [sym__literal] = STATE(413), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(413), [sym_identifier] = ACTIONS(1695), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [aux_sym__non_special_token_token1] = ACTIONS(1695), [anon_sym_SQUOTE] = ACTIONS(1695), [anon_sym_abi] = ACTIONS(1695), [anon_sym_as] = ACTIONS(1695), [anon_sym_break] = ACTIONS(1695), [anon_sym_configurable] = ACTIONS(1695), [anon_sym_const] = ACTIONS(1695), [anon_sym_continue] = ACTIONS(1695), [anon_sym_default] = ACTIONS(1695), [anon_sym_mod] = ACTIONS(1695), [anon_sym_enum] = ACTIONS(1695), [anon_sym_fn] = ACTIONS(1695), [anon_sym_for] = ACTIONS(1695), [anon_sym_if] = ACTIONS(1695), [anon_sym_impl] = ACTIONS(1695), [anon_sym_let] = ACTIONS(1695), [anon_sym_match] = ACTIONS(1695), [anon_sym_pub] = ACTIONS(1695), [anon_sym_return] = ACTIONS(1695), [anon_sym_storage] = ACTIONS(1695), [anon_sym_struct] = ACTIONS(1695), [anon_sym_trait] = ACTIONS(1695), [anon_sym_type] = ACTIONS(1695), [anon_sym_use] = ACTIONS(1695), [anon_sym_where] = ACTIONS(1695), [anon_sym_while] = ACTIONS(1695), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_LPAREN] = ACTIONS(1707), [anon_sym_RPAREN] = ACTIONS(1755), [sym_mutable_specifier] = ACTIONS(1695), [anon_sym_DOLLAR] = ACTIONS(1709), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1695), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [431] = { [sym_primitive_type] = STATE(413), [sym_delim_token_tree] = STATE(413), [sym__delim_tokens] = STATE(413), [sym__non_delim_token] = STATE(413), [sym__literal] = STATE(413), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(413), [sym_identifier] = ACTIONS(1695), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [anon_sym_RBRACK] = ACTIONS(1755), [aux_sym__non_special_token_token1] = ACTIONS(1695), [anon_sym_SQUOTE] = ACTIONS(1695), [anon_sym_abi] = ACTIONS(1695), [anon_sym_as] = ACTIONS(1695), [anon_sym_break] = ACTIONS(1695), [anon_sym_configurable] = ACTIONS(1695), [anon_sym_const] = ACTIONS(1695), [anon_sym_continue] = ACTIONS(1695), [anon_sym_default] = ACTIONS(1695), [anon_sym_mod] = ACTIONS(1695), [anon_sym_enum] = ACTIONS(1695), [anon_sym_fn] = ACTIONS(1695), [anon_sym_for] = ACTIONS(1695), [anon_sym_if] = ACTIONS(1695), [anon_sym_impl] = ACTIONS(1695), [anon_sym_let] = ACTIONS(1695), [anon_sym_match] = ACTIONS(1695), [anon_sym_pub] = ACTIONS(1695), [anon_sym_return] = ACTIONS(1695), [anon_sym_storage] = ACTIONS(1695), [anon_sym_struct] = ACTIONS(1695), [anon_sym_trait] = ACTIONS(1695), [anon_sym_type] = ACTIONS(1695), [anon_sym_use] = ACTIONS(1695), [anon_sym_where] = ACTIONS(1695), [anon_sym_while] = ACTIONS(1695), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_LPAREN] = ACTIONS(1707), [sym_mutable_specifier] = ACTIONS(1695), [anon_sym_DOLLAR] = ACTIONS(1709), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1695), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [432] = { [sym_primitive_type] = STATE(413), [sym_delim_token_tree] = STATE(413), [sym__delim_tokens] = STATE(413), [sym__non_delim_token] = STATE(413), [sym__literal] = STATE(413), [sym_string_literal] = STATE(483), [sym_boolean_literal] = STATE(483), [aux_sym_delim_token_tree_repeat1] = STATE(413), [sym_identifier] = ACTIONS(1695), [anon_sym_u8] = ACTIONS(1697), [anon_sym_i8] = ACTIONS(1697), [anon_sym_u16] = ACTIONS(1697), [anon_sym_i16] = ACTIONS(1697), [anon_sym_u32] = ACTIONS(1697), [anon_sym_i32] = ACTIONS(1697), [anon_sym_u64] = ACTIONS(1697), [anon_sym_i64] = ACTIONS(1697), [anon_sym_u128] = ACTIONS(1697), [anon_sym_i128] = ACTIONS(1697), [anon_sym_u256] = ACTIONS(1697), [anon_sym_i256] = ACTIONS(1697), [anon_sym_b256] = ACTIONS(1697), [anon_sym_isize] = ACTIONS(1697), [anon_sym_usize] = ACTIONS(1697), [anon_sym_f32] = ACTIONS(1697), [anon_sym_f64] = ACTIONS(1697), [anon_sym_bool] = ACTIONS(1697), [anon_sym_char] = ACTIONS(1697), [anon_sym_str] = ACTIONS(1699), [anon_sym_LBRACK] = ACTIONS(1701), [aux_sym__non_special_token_token1] = ACTIONS(1695), [anon_sym_SQUOTE] = ACTIONS(1695), [anon_sym_abi] = ACTIONS(1695), [anon_sym_as] = ACTIONS(1695), [anon_sym_break] = ACTIONS(1695), [anon_sym_configurable] = ACTIONS(1695), [anon_sym_const] = ACTIONS(1695), [anon_sym_continue] = ACTIONS(1695), [anon_sym_default] = ACTIONS(1695), [anon_sym_mod] = ACTIONS(1695), [anon_sym_enum] = ACTIONS(1695), [anon_sym_fn] = ACTIONS(1695), [anon_sym_for] = ACTIONS(1695), [anon_sym_if] = ACTIONS(1695), [anon_sym_impl] = ACTIONS(1695), [anon_sym_let] = ACTIONS(1695), [anon_sym_match] = ACTIONS(1695), [anon_sym_pub] = ACTIONS(1695), [anon_sym_return] = ACTIONS(1695), [anon_sym_storage] = ACTIONS(1695), [anon_sym_struct] = ACTIONS(1695), [anon_sym_trait] = ACTIONS(1695), [anon_sym_type] = ACTIONS(1695), [anon_sym_use] = ACTIONS(1695), [anon_sym_where] = ACTIONS(1695), [anon_sym_while] = ACTIONS(1695), [anon_sym_LBRACE] = ACTIONS(1703), [anon_sym_RBRACE] = ACTIONS(1755), [anon_sym_LPAREN] = ACTIONS(1707), [sym_mutable_specifier] = ACTIONS(1695), [anon_sym_DOLLAR] = ACTIONS(1709), [sym_integer_literal] = ACTIONS(1711), [aux_sym_string_literal_token1] = ACTIONS(1713), [sym_char_literal] = ACTIONS(1711), [anon_sym_true] = ACTIONS(1715), [anon_sym_false] = ACTIONS(1715), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1695), [sym_raw_string_literal] = ACTIONS(1711), [sym_float_literal] = ACTIONS(1711), [sym_block_comment] = ACTIONS(3), }, [433] = { [sym_primitive_type] = STATE(1176), [sym_parameter] = STATE(1802), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1551), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(1757), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_PIPE] = ACTIONS(1759), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1761), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [434] = { [sym_primitive_type] = STATE(1176), [sym_asm_parameter] = STATE(1966), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1507), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [435] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1537), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_RBRACK] = ACTIONS(1763), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [436] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1537), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_RBRACK] = ACTIONS(1765), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [437] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1537), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_RPAREN] = ACTIONS(1767), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [438] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1537), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_RPAREN] = ACTIONS(1769), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [439] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1537), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_RPAREN] = ACTIONS(1771), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [440] = { [sym_primitive_type] = STATE(1176), [sym_parameter] = STATE(1894), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1757), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(1757), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1761), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [441] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1537), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_RPAREN] = ACTIONS(1773), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [442] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1591), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [443] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1536), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1775), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [444] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1243), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [445] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1750), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [446] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1839), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [447] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1950), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [448] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1723), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1777), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [449] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1457), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [450] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1220), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(1779), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1781), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [451] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1537), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [452] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1229), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [453] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1454), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(1783), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [454] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1232), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [455] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1218), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [456] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1460), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(1785), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [457] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1872), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [458] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1946), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [459] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1467), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [460] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1235), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(1787), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [461] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1220), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [462] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1217), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1789), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [463] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1217), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [464] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1975), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [465] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1974), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [466] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1983), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [467] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1985), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [468] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1805), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [469] = { [sym_primitive_type] = STATE(1176), [sym_bracketed_type] = STATE(2145), [sym_generic_type] = STATE(2146), [sym_generic_type_with_turbofish] = STATE(2148), [sym_scoped_identifier] = STATE(1171), [sym_scoped_type_identifier] = STATE(1719), [sym_const_block] = STATE(1236), [sym__pattern] = STATE(1563), [sym_tuple_pattern] = STATE(1236), [sym_slice_pattern] = STATE(1236), [sym_tuple_struct_pattern] = STATE(1236), [sym_struct_pattern] = STATE(1236), [sym_remaining_field_pattern] = STATE(1236), [sym_mut_pattern] = STATE(1236), [sym_range_pattern] = STATE(1236), [sym_ref_pattern] = STATE(1236), [sym_deref_pattern] = STATE(1236), [sym_captured_pattern] = STATE(1236), [sym_reference_pattern] = STATE(1236), [sym_or_pattern] = STATE(1236), [sym__literal_pattern] = STATE(1200), [sym_negative_literal] = STATE(1197), [sym_string_literal] = STATE(1197), [sym_boolean_literal] = STATE(1197), [sym_identifier] = ACTIONS(1423), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1425), [anon_sym_const] = ACTIONS(1427), [anon_sym_default] = ACTIONS(1429), [anon_sym_LPAREN] = ACTIONS(1433), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1435), [anon_sym__] = ACTIONS(793), [anon_sym_AMP] = ACTIONS(1437), [anon_sym_ref] = ACTIONS(797), [sym_mutable_specifier] = ACTIONS(799), [anon_sym_DOT_DOT] = ACTIONS(801), [anon_sym_DASH] = ACTIONS(721), [anon_sym_deref] = ACTIONS(723), [sym_integer_literal] = ACTIONS(725), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(725), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1439), [sym_metavariable] = ACTIONS(1441), [sym_raw_string_literal] = ACTIONS(725), [sym_float_literal] = ACTIONS(725), [sym_block_comment] = ACTIONS(3), }, [470] = { [sym_primitive_type] = STATE(1160), [sym_function_modifiers] = STATE(1989), [sym__type] = STATE(1579), [sym_bracketed_type] = STATE(2049), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1034), [sym_bounded_type] = STATE(1179), [sym_type_binding] = STATE(1891), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(2162), [sym_scoped_type_identifier] = STATE(1278), [sym_block] = STATE(1891), [sym__literal] = STATE(1891), [sym_string_literal] = STATE(1919), [sym_boolean_literal] = STATE(1919), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(1791), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1793), [anon_sym_const] = ACTIONS(1795), [anon_sym_default] = ACTIONS(1797), [anon_sym_fn] = ACTIONS(1799), [anon_sym_impl] = ACTIONS(1801), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LBRACE] = ACTIONS(1803), [anon_sym_LPAREN] = ACTIONS(1805), [anon_sym_LT] = ACTIONS(75), [anon_sym_GT] = ACTIONS(1807), [anon_sym_COLON_COLON] = ACTIONS(1809), [anon_sym_STAR] = ACTIONS(1811), [anon_sym_AMP] = ACTIONS(1813), [sym_integer_literal] = ACTIONS(1815), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(1815), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1817), [sym_metavariable] = ACTIONS(1819), [sym_raw_string_literal] = ACTIONS(1815), [sym_float_literal] = ACTIONS(1815), [sym_block_comment] = ACTIONS(3), }, [471] = { [sym_primitive_type] = STATE(1160), [sym_function_modifiers] = STATE(1989), [sym__type] = STATE(1579), [sym_bracketed_type] = STATE(2049), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1034), [sym_bounded_type] = STATE(1179), [sym_type_binding] = STATE(1891), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(2162), [sym_scoped_type_identifier] = STATE(1278), [sym_block] = STATE(1891), [sym__literal] = STATE(1891), [sym_string_literal] = STATE(1919), [sym_boolean_literal] = STATE(1919), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(1791), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1793), [anon_sym_const] = ACTIONS(1795), [anon_sym_default] = ACTIONS(1797), [anon_sym_fn] = ACTIONS(1799), [anon_sym_impl] = ACTIONS(1801), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LBRACE] = ACTIONS(1803), [anon_sym_LPAREN] = ACTIONS(1805), [anon_sym_LT] = ACTIONS(75), [anon_sym_GT] = ACTIONS(1821), [anon_sym_COLON_COLON] = ACTIONS(1809), [anon_sym_STAR] = ACTIONS(1811), [anon_sym_AMP] = ACTIONS(1813), [sym_integer_literal] = ACTIONS(1815), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(1815), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1817), [sym_metavariable] = ACTIONS(1819), [sym_raw_string_literal] = ACTIONS(1815), [sym_float_literal] = ACTIONS(1815), [sym_block_comment] = ACTIONS(3), }, [472] = { [sym_primitive_type] = STATE(1160), [sym_function_modifiers] = STATE(1989), [sym__type] = STATE(1579), [sym_bracketed_type] = STATE(2049), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1034), [sym_bounded_type] = STATE(1179), [sym_type_binding] = STATE(1891), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(2162), [sym_scoped_type_identifier] = STATE(1278), [sym_block] = STATE(1891), [sym__literal] = STATE(1891), [sym_string_literal] = STATE(1919), [sym_boolean_literal] = STATE(1919), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(1791), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1793), [anon_sym_const] = ACTIONS(1795), [anon_sym_default] = ACTIONS(1797), [anon_sym_fn] = ACTIONS(1799), [anon_sym_impl] = ACTIONS(1801), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LBRACE] = ACTIONS(1803), [anon_sym_LPAREN] = ACTIONS(1805), [anon_sym_LT] = ACTIONS(75), [anon_sym_GT] = ACTIONS(1823), [anon_sym_COLON_COLON] = ACTIONS(1809), [anon_sym_STAR] = ACTIONS(1811), [anon_sym_AMP] = ACTIONS(1813), [sym_integer_literal] = ACTIONS(1815), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(1815), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1817), [sym_metavariable] = ACTIONS(1819), [sym_raw_string_literal] = ACTIONS(1815), [sym_float_literal] = ACTIONS(1815), [sym_block_comment] = ACTIONS(3), }, [473] = { [sym_primitive_type] = STATE(1160), [sym_function_modifiers] = STATE(1989), [sym__type] = STATE(1579), [sym_bracketed_type] = STATE(2049), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1034), [sym_bounded_type] = STATE(1179), [sym_type_binding] = STATE(1891), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(2162), [sym_scoped_type_identifier] = STATE(1278), [sym_block] = STATE(1891), [sym__literal] = STATE(1891), [sym_string_literal] = STATE(1919), [sym_boolean_literal] = STATE(1919), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(1791), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1793), [anon_sym_const] = ACTIONS(1795), [anon_sym_default] = ACTIONS(1797), [anon_sym_fn] = ACTIONS(1799), [anon_sym_impl] = ACTIONS(1801), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LBRACE] = ACTIONS(1803), [anon_sym_LPAREN] = ACTIONS(1805), [anon_sym_LT] = ACTIONS(75), [anon_sym_GT] = ACTIONS(1825), [anon_sym_COLON_COLON] = ACTIONS(1809), [anon_sym_STAR] = ACTIONS(1811), [anon_sym_AMP] = ACTIONS(1813), [sym_integer_literal] = ACTIONS(1815), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(1815), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1817), [sym_metavariable] = ACTIONS(1819), [sym_raw_string_literal] = ACTIONS(1815), [sym_float_literal] = ACTIONS(1815), [sym_block_comment] = ACTIONS(3), }, [474] = { [sym_attribute_item] = STATE(474), [aux_sym_enum_variant_list_repeat1] = STATE(474), [sym_identifier] = ACTIONS(1827), [anon_sym_u8] = ACTIONS(1827), [anon_sym_i8] = ACTIONS(1827), [anon_sym_u16] = ACTIONS(1827), [anon_sym_i16] = ACTIONS(1827), [anon_sym_u32] = ACTIONS(1827), [anon_sym_i32] = ACTIONS(1827), [anon_sym_u64] = ACTIONS(1827), [anon_sym_i64] = ACTIONS(1827), [anon_sym_u128] = ACTIONS(1827), [anon_sym_i128] = ACTIONS(1827), [anon_sym_u256] = ACTIONS(1827), [anon_sym_i256] = ACTIONS(1827), [anon_sym_b256] = ACTIONS(1827), [anon_sym_isize] = ACTIONS(1827), [anon_sym_usize] = ACTIONS(1827), [anon_sym_f32] = ACTIONS(1827), [anon_sym_f64] = ACTIONS(1827), [anon_sym_bool] = ACTIONS(1827), [anon_sym_char] = ACTIONS(1827), [anon_sym_str] = ACTIONS(1827), [anon_sym_LBRACK] = ACTIONS(1829), [anon_sym_RBRACK] = ACTIONS(1829), [anon_sym_SQUOTE] = ACTIONS(1827), [anon_sym_abi] = ACTIONS(1827), [anon_sym_break] = ACTIONS(1827), [anon_sym_const] = ACTIONS(1827), [anon_sym_continue] = ACTIONS(1827), [anon_sym_default] = ACTIONS(1827), [anon_sym_for] = ACTIONS(1827), [anon_sym_if] = ACTIONS(1827), [anon_sym_match] = ACTIONS(1827), [anon_sym_return] = ACTIONS(1827), [anon_sym_storage] = ACTIONS(1827), [anon_sym_while] = ACTIONS(1827), [anon_sym_POUND] = ACTIONS(1831), [anon_sym_COMMA] = ACTIONS(1829), [anon_sym_BANG] = ACTIONS(1829), [anon_sym_LBRACE] = ACTIONS(1829), [anon_sym_LPAREN] = ACTIONS(1829), [anon_sym_asm] = ACTIONS(1827), [anon_sym_LT] = ACTIONS(1829), [anon_sym_COLON_COLON] = ACTIONS(1829), [anon_sym_STAR] = ACTIONS(1829), [anon_sym__] = ACTIONS(1827), [anon_sym_AMP] = ACTIONS(1829), [anon_sym_ref] = ACTIONS(1827), [sym_mutable_specifier] = ACTIONS(1827), [anon_sym_DOT_DOT] = ACTIONS(1829), [anon_sym_DASH] = ACTIONS(1829), [anon_sym_PIPE] = ACTIONS(1829), [anon_sym_yield] = ACTIONS(1827), [anon_sym_move] = ACTIONS(1827), [anon_sym_deref] = ACTIONS(1827), [sym_integer_literal] = ACTIONS(1829), [aux_sym_string_literal_token1] = ACTIONS(1829), [sym_char_literal] = ACTIONS(1829), [anon_sym_true] = ACTIONS(1827), [anon_sym_false] = ACTIONS(1827), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1827), [sym_metavariable] = ACTIONS(1829), [sym_raw_string_literal] = ACTIONS(1829), [sym_float_literal] = ACTIONS(1829), [sym_block_comment] = ACTIONS(3), }, [475] = { [sym_primitive_type] = STATE(1160), [sym_function_modifiers] = STATE(1989), [sym__type] = STATE(1579), [sym_bracketed_type] = STATE(2049), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1034), [sym_bounded_type] = STATE(1179), [sym_type_binding] = STATE(1891), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(2162), [sym_scoped_type_identifier] = STATE(1278), [sym_block] = STATE(1891), [sym__literal] = STATE(1891), [sym_string_literal] = STATE(1919), [sym_boolean_literal] = STATE(1919), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(1791), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1793), [anon_sym_const] = ACTIONS(1795), [anon_sym_default] = ACTIONS(1797), [anon_sym_fn] = ACTIONS(1799), [anon_sym_impl] = ACTIONS(1801), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LBRACE] = ACTIONS(1803), [anon_sym_LPAREN] = ACTIONS(1805), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1809), [anon_sym_STAR] = ACTIONS(1811), [anon_sym_AMP] = ACTIONS(1813), [sym_integer_literal] = ACTIONS(1815), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(1815), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1817), [sym_metavariable] = ACTIONS(1819), [sym_raw_string_literal] = ACTIONS(1815), [sym_float_literal] = ACTIONS(1815), [sym_block_comment] = ACTIONS(3), }, [476] = { [sym_primitive_type] = STATE(1160), [sym_function_modifiers] = STATE(1989), [sym__type] = STATE(1533), [sym_bracketed_type] = STATE(2049), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1034), [sym_bounded_type] = STATE(1179), [sym_type_binding] = STATE(1708), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(2162), [sym_scoped_type_identifier] = STATE(1278), [sym_block] = STATE(1708), [sym__literal] = STATE(1708), [sym_string_literal] = STATE(1919), [sym_boolean_literal] = STATE(1919), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(1791), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1793), [anon_sym_const] = ACTIONS(1795), [anon_sym_default] = ACTIONS(1797), [anon_sym_fn] = ACTIONS(1799), [anon_sym_impl] = ACTIONS(1801), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LBRACE] = ACTIONS(1803), [anon_sym_LPAREN] = ACTIONS(1805), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1809), [anon_sym_STAR] = ACTIONS(1811), [anon_sym_AMP] = ACTIONS(1813), [sym_integer_literal] = ACTIONS(1815), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(1815), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1817), [sym_metavariable] = ACTIONS(1819), [sym_raw_string_literal] = ACTIONS(1815), [sym_float_literal] = ACTIONS(1815), [sym_block_comment] = ACTIONS(3), }, [477] = { [sym_primitive_type] = STATE(1160), [sym_function_modifiers] = STATE(1989), [sym__type] = STATE(1520), [sym_bracketed_type] = STATE(2049), [sym_array_type] = STATE(1179), [sym_function_type] = STATE(1179), [sym_tuple_type] = STATE(1179), [sym_unit_type] = STATE(1179), [sym_generic_type] = STATE(1088), [sym_generic_type_with_turbofish] = STATE(1034), [sym_bounded_type] = STATE(1179), [sym_type_binding] = STATE(1774), [sym_reference_type] = STATE(1179), [sym_pointer_type] = STATE(1179), [sym_empty_type] = STATE(1179), [sym_abstract_type] = STATE(1179), [sym_scoped_identifier] = STATE(2162), [sym_scoped_type_identifier] = STATE(1278), [sym_block] = STATE(1774), [sym__literal] = STATE(1774), [sym_string_literal] = STATE(1919), [sym_boolean_literal] = STATE(1919), [aux_sym_function_modifiers_repeat1] = STATE(1521), [sym_identifier] = ACTIONS(1791), [anon_sym_u8] = ACTIONS(685), [anon_sym_i8] = ACTIONS(685), [anon_sym_u16] = ACTIONS(685), [anon_sym_i16] = ACTIONS(685), [anon_sym_u32] = ACTIONS(685), [anon_sym_i32] = ACTIONS(685), [anon_sym_u64] = ACTIONS(685), [anon_sym_i64] = ACTIONS(685), [anon_sym_u128] = ACTIONS(685), [anon_sym_i128] = ACTIONS(685), [anon_sym_u256] = ACTIONS(685), [anon_sym_i256] = ACTIONS(685), [anon_sym_b256] = ACTIONS(685), [anon_sym_isize] = ACTIONS(685), [anon_sym_usize] = ACTIONS(685), [anon_sym_f32] = ACTIONS(685), [anon_sym_f64] = ACTIONS(685), [anon_sym_bool] = ACTIONS(685), [anon_sym_char] = ACTIONS(685), [anon_sym_str] = ACTIONS(687), [anon_sym_LBRACK] = ACTIONS(1793), [anon_sym_const] = ACTIONS(1795), [anon_sym_default] = ACTIONS(1797), [anon_sym_fn] = ACTIONS(1799), [anon_sym_impl] = ACTIONS(1801), [anon_sym_BANG] = ACTIONS(699), [anon_sym_LBRACE] = ACTIONS(1803), [anon_sym_LPAREN] = ACTIONS(1805), [anon_sym_LT] = ACTIONS(75), [anon_sym_COLON_COLON] = ACTIONS(1809), [anon_sym_STAR] = ACTIONS(1811), [anon_sym_AMP] = ACTIONS(1813), [sym_integer_literal] = ACTIONS(1815), [aux_sym_string_literal_token1] = ACTIONS(727), [sym_char_literal] = ACTIONS(1815), [anon_sym_true] = ACTIONS(729), [anon_sym_false] = ACTIONS(729), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1817), [sym_metavariable] = ACTIONS(1819), [sym_raw_string_literal] = ACTIONS(1815), [sym_float_literal] = ACTIONS(1815), [sym_block_comment] = ACTIONS(3), }, [478] = { [sym_identifier] = ACTIONS(1834), [anon_sym_u8] = ACTIONS(1834), [anon_sym_i8] = ACTIONS(1834), [anon_sym_u16] = ACTIONS(1834), [anon_sym_i16] = ACTIONS(1834), [anon_sym_u32] = ACTIONS(1834), [anon_sym_i32] = ACTIONS(1834), [anon_sym_u64] = ACTIONS(1834), [anon_sym_i64] = ACTIONS(1834), [anon_sym_u128] = ACTIONS(1834), [anon_sym_i128] = ACTIONS(1834), [anon_sym_u256] = ACTIONS(1834), [anon_sym_i256] = ACTIONS(1834), [anon_sym_b256] = ACTIONS(1834), [anon_sym_isize] = ACTIONS(1834), [anon_sym_usize] = ACTIONS(1834), [anon_sym_f32] = ACTIONS(1834), [anon_sym_f64] = ACTIONS(1834), [anon_sym_bool] = ACTIONS(1834), [anon_sym_char] = ACTIONS(1834), [anon_sym_str] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_RBRACK] = ACTIONS(1836), [aux_sym__non_special_token_token1] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_abi] = ACTIONS(1834), [anon_sym_as] = ACTIONS(1834), [anon_sym_break] = ACTIONS(1834), [anon_sym_configurable] = ACTIONS(1834), [anon_sym_const] = ACTIONS(1834), [anon_sym_continue] = ACTIONS(1834), [anon_sym_default] = ACTIONS(1834), [anon_sym_mod] = ACTIONS(1834), [anon_sym_enum] = ACTIONS(1834), [anon_sym_fn] = ACTIONS(1834), [anon_sym_for] = ACTIONS(1834), [anon_sym_if] = ACTIONS(1834), [anon_sym_impl] = ACTIONS(1834), [anon_sym_let] = ACTIONS(1834), [anon_sym_match] = ACTIONS(1834), [anon_sym_pub] = ACTIONS(1834), [anon_sym_return] = ACTIONS(1834), [anon_sym_storage] = ACTIONS(1834), [anon_sym_struct] = ACTIONS(1834), [anon_sym_trait] = ACTIONS(1834), [anon_sym_type] = ACTIONS(1834), [anon_sym_use] = ACTIONS(1834), [anon_sym_where] = ACTIONS(1834), [anon_sym_while] = ACTIONS(1834), [anon_sym_LBRACE] = ACTIONS(1836), [anon_sym_RBRACE] = ACTIONS(1836), [anon_sym_LPAREN] = ACTIONS(1836), [anon_sym_RPAREN] = ACTIONS(1836), [sym_mutable_specifier] = ACTIONS(1834), [anon_sym_DOLLAR] = ACTIONS(1836), [sym_integer_literal] = ACTIONS(1836), [aux_sym_string_literal_token1] = ACTIONS(1836), [sym_char_literal] = ACTIONS(1836), [anon_sym_true] = ACTIONS(1834), [anon_sym_false] = ACTIONS(1834), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1834), [sym_raw_string_literal] = ACTIONS(1836), [sym_float_literal] = ACTIONS(1836), [sym_block_comment] = ACTIONS(3), }, [479] = { [sym_identifier] = ACTIONS(1838), [anon_sym_u8] = ACTIONS(1838), [anon_sym_i8] = ACTIONS(1838), [anon_sym_u16] = ACTIONS(1838), [anon_sym_i16] = ACTIONS(1838), [anon_sym_u32] = ACTIONS(1838), [anon_sym_i32] = ACTIONS(1838), [anon_sym_u64] = ACTIONS(1838), [anon_sym_i64] = ACTIONS(1838), [anon_sym_u128] = ACTIONS(1838), [anon_sym_i128] = ACTIONS(1838), [anon_sym_u256] = ACTIONS(1838), [anon_sym_i256] = ACTIONS(1838), [anon_sym_b256] = ACTIONS(1838), [anon_sym_isize] = ACTIONS(1838), [anon_sym_usize] = ACTIONS(1838), [anon_sym_f32] = ACTIONS(1838), [anon_sym_f64] = ACTIONS(1838), [anon_sym_bool] = ACTIONS(1838), [anon_sym_char] = ACTIONS(1838), [anon_sym_str] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1840), [anon_sym_RBRACK] = ACTIONS(1840), [aux_sym__non_special_token_token1] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_abi] = ACTIONS(1838), [anon_sym_as] = ACTIONS(1838), [anon_sym_break] = ACTIONS(1838), [anon_sym_configurable] = ACTIONS(1838), [anon_sym_const] = ACTIONS(1838), [anon_sym_continue] = ACTIONS(1838), [anon_sym_default] = ACTIONS(1838), [anon_sym_mod] = ACTIONS(1838), [anon_sym_enum] = ACTIONS(1838), [anon_sym_fn] = ACTIONS(1838), [anon_sym_for] = ACTIONS(1838), [anon_sym_if] = ACTIONS(1838), [anon_sym_impl] = ACTIONS(1838), [anon_sym_let] = ACTIONS(1838), [anon_sym_match] = ACTIONS(1838), [anon_sym_pub] = ACTIONS(1838), [anon_sym_return] = ACTIONS(1838), [anon_sym_storage] = ACTIONS(1838), [anon_sym_struct] = ACTIONS(1838), [anon_sym_trait] = ACTIONS(1838), [anon_sym_type] = ACTIONS(1838), [anon_sym_use] = ACTIONS(1838), [anon_sym_where] = ACTIONS(1838), [anon_sym_while] = ACTIONS(1838), [anon_sym_LBRACE] = ACTIONS(1840), [anon_sym_RBRACE] = ACTIONS(1840), [anon_sym_LPAREN] = ACTIONS(1840), [anon_sym_RPAREN] = ACTIONS(1840), [sym_mutable_specifier] = ACTIONS(1838), [anon_sym_DOLLAR] = ACTIONS(1840), [sym_integer_literal] = ACTIONS(1840), [aux_sym_string_literal_token1] = ACTIONS(1840), [sym_char_literal] = ACTIONS(1840), [anon_sym_true] = ACTIONS(1838), [anon_sym_false] = ACTIONS(1838), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1838), [sym_raw_string_literal] = ACTIONS(1840), [sym_float_literal] = ACTIONS(1840), [sym_block_comment] = ACTIONS(3), }, [480] = { [sym_identifier] = ACTIONS(1503), [anon_sym_u8] = ACTIONS(1503), [anon_sym_i8] = ACTIONS(1503), [anon_sym_u16] = ACTIONS(1503), [anon_sym_i16] = ACTIONS(1503), [anon_sym_u32] = ACTIONS(1503), [anon_sym_i32] = ACTIONS(1503), [anon_sym_u64] = ACTIONS(1503), [anon_sym_i64] = ACTIONS(1503), [anon_sym_u128] = ACTIONS(1503), [anon_sym_i128] = ACTIONS(1503), [anon_sym_u256] = ACTIONS(1503), [anon_sym_i256] = ACTIONS(1503), [anon_sym_b256] = ACTIONS(1503), [anon_sym_isize] = ACTIONS(1503), [anon_sym_usize] = ACTIONS(1503), [anon_sym_f32] = ACTIONS(1503), [anon_sym_f64] = ACTIONS(1503), [anon_sym_bool] = ACTIONS(1503), [anon_sym_char] = ACTIONS(1503), [anon_sym_str] = ACTIONS(1503), [anon_sym_LBRACK] = ACTIONS(1501), [anon_sym_RBRACK] = ACTIONS(1501), [anon_sym_SQUOTE] = ACTIONS(1503), [anon_sym_abi] = ACTIONS(1503), [anon_sym_break] = ACTIONS(1503), [anon_sym_const] = ACTIONS(1503), [anon_sym_continue] = ACTIONS(1503), [anon_sym_default] = ACTIONS(1503), [anon_sym_for] = ACTIONS(1503), [anon_sym_if] = ACTIONS(1503), [anon_sym_match] = ACTIONS(1503), [anon_sym_return] = ACTIONS(1503), [anon_sym_storage] = ACTIONS(1503), [anon_sym_while] = ACTIONS(1503), [anon_sym_POUND] = ACTIONS(1501), [anon_sym_COMMA] = ACTIONS(1501), [anon_sym_BANG] = ACTIONS(1501), [anon_sym_LBRACE] = ACTIONS(1501), [anon_sym_LPAREN] = ACTIONS(1501), [anon_sym_asm] = ACTIONS(1503), [anon_sym_LT] = ACTIONS(1501), [anon_sym_COLON_COLON] = ACTIONS(1501), [anon_sym_STAR] = ACTIONS(1501), [anon_sym__] = ACTIONS(1503), [anon_sym_AMP] = ACTIONS(1501), [anon_sym_ref] = ACTIONS(1503), [sym_mutable_specifier] = ACTIONS(1503), [anon_sym_DOT_DOT] = ACTIONS(1501), [anon_sym_DASH] = ACTIONS(1501), [anon_sym_PIPE] = ACTIONS(1501), [anon_sym_yield] = ACTIONS(1503), [anon_sym_move] = ACTIONS(1503), [anon_sym_deref] = ACTIONS(1503), [sym_integer_literal] = ACTIONS(1501), [aux_sym_string_literal_token1] = ACTIONS(1501), [sym_char_literal] = ACTIONS(1501), [anon_sym_true] = ACTIONS(1503), [anon_sym_false] = ACTIONS(1503), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1503), [sym_metavariable] = ACTIONS(1501), [sym_raw_string_literal] = ACTIONS(1501), [sym_float_literal] = ACTIONS(1501), [sym_block_comment] = ACTIONS(3), }, [481] = { [sym_identifier] = ACTIONS(1585), [anon_sym_u8] = ACTIONS(1585), [anon_sym_i8] = ACTIONS(1585), [anon_sym_u16] = ACTIONS(1585), [anon_sym_i16] = ACTIONS(1585), [anon_sym_u32] = ACTIONS(1585), [anon_sym_i32] = ACTIONS(1585), [anon_sym_u64] = ACTIONS(1585), [anon_sym_i64] = ACTIONS(1585), [anon_sym_u128] = ACTIONS(1585), [anon_sym_i128] = ACTIONS(1585), [anon_sym_u256] = ACTIONS(1585), [anon_sym_i256] = ACTIONS(1585), [anon_sym_b256] = ACTIONS(1585), [anon_sym_isize] = ACTIONS(1585), [anon_sym_usize] = ACTIONS(1585), [anon_sym_f32] = ACTIONS(1585), [anon_sym_f64] = ACTIONS(1585), [anon_sym_bool] = ACTIONS(1585), [anon_sym_char] = ACTIONS(1585), [anon_sym_str] = ACTIONS(1585), [anon_sym_LBRACK] = ACTIONS(1583), [anon_sym_RBRACK] = ACTIONS(1583), [anon_sym_SQUOTE] = ACTIONS(1585), [anon_sym_abi] = ACTIONS(1585), [anon_sym_break] = ACTIONS(1585), [anon_sym_const] = ACTIONS(1585), [anon_sym_continue] = ACTIONS(1585), [anon_sym_default] = ACTIONS(1585), [anon_sym_for] = ACTIONS(1585), [anon_sym_if] = ACTIONS(1585), [anon_sym_match] = ACTIONS(1585), [anon_sym_return] = ACTIONS(1585), [anon_sym_storage] = ACTIONS(1585), [anon_sym_while] = ACTIONS(1585), [anon_sym_POUND] = ACTIONS(1583), [anon_sym_COMMA] = ACTIONS(1583), [anon_sym_BANG] = ACTIONS(1583), [anon_sym_LBRACE] = ACTIONS(1583), [anon_sym_LPAREN] = ACTIONS(1583), [anon_sym_asm] = ACTIONS(1585), [anon_sym_LT] = ACTIONS(1583), [anon_sym_COLON_COLON] = ACTIONS(1583), [anon_sym_STAR] = ACTIONS(1583), [anon_sym__] = ACTIONS(1585), [anon_sym_AMP] = ACTIONS(1583), [anon_sym_ref] = ACTIONS(1585), [sym_mutable_specifier] = ACTIONS(1585), [anon_sym_DOT_DOT] = ACTIONS(1583), [anon_sym_DASH] = ACTIONS(1583), [anon_sym_PIPE] = ACTIONS(1583), [anon_sym_yield] = ACTIONS(1585), [anon_sym_move] = ACTIONS(1585), [anon_sym_deref] = ACTIONS(1585), [sym_integer_literal] = ACTIONS(1583), [aux_sym_string_literal_token1] = ACTIONS(1583), [sym_char_literal] = ACTIONS(1583), [anon_sym_true] = ACTIONS(1585), [anon_sym_false] = ACTIONS(1585), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1585), [sym_metavariable] = ACTIONS(1583), [sym_raw_string_literal] = ACTIONS(1583), [sym_float_literal] = ACTIONS(1583), [sym_block_comment] = ACTIONS(3), }, [482] = { [sym_identifier] = ACTIONS(1842), [anon_sym_u8] = ACTIONS(1842), [anon_sym_i8] = ACTIONS(1842), [anon_sym_u16] = ACTIONS(1842), [anon_sym_i16] = ACTIONS(1842), [anon_sym_u32] = ACTIONS(1842), [anon_sym_i32] = ACTIONS(1842), [anon_sym_u64] = ACTIONS(1842), [anon_sym_i64] = ACTIONS(1842), [anon_sym_u128] = ACTIONS(1842), [anon_sym_i128] = ACTIONS(1842), [anon_sym_u256] = ACTIONS(1842), [anon_sym_i256] = ACTIONS(1842), [anon_sym_b256] = ACTIONS(1842), [anon_sym_isize] = ACTIONS(1842), [anon_sym_usize] = ACTIONS(1842), [anon_sym_f32] = ACTIONS(1842), [anon_sym_f64] = ACTIONS(1842), [anon_sym_bool] = ACTIONS(1842), [anon_sym_char] = ACTIONS(1842), [anon_sym_str] = ACTIONS(1842), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_RBRACK] = ACTIONS(1844), [aux_sym__non_special_token_token1] = ACTIONS(1842), [anon_sym_SQUOTE] = ACTIONS(1842), [anon_sym_abi] = ACTIONS(1842), [anon_sym_as] = ACTIONS(1842), [anon_sym_break] = ACTIONS(1842), [anon_sym_configurable] = ACTIONS(1842), [anon_sym_const] = ACTIONS(1842), [anon_sym_continue] = ACTIONS(1842), [anon_sym_default] = ACTIONS(1842), [anon_sym_mod] = ACTIONS(1842), [anon_sym_enum] = ACTIONS(1842), [anon_sym_fn] = ACTIONS(1842), [anon_sym_for] = ACTIONS(1842), [anon_sym_if] = ACTIONS(1842), [anon_sym_impl] = ACTIONS(1842), [anon_sym_let] = ACTIONS(1842), [anon_sym_match] = ACTIONS(1842), [anon_sym_pub] = ACTIONS(1842), [anon_sym_return] = ACTIONS(1842), [anon_sym_storage] = ACTIONS(1842), [anon_sym_struct] = ACTIONS(1842), [anon_sym_trait] = ACTIONS(1842), [anon_sym_type] = ACTIONS(1842), [anon_sym_use] = ACTIONS(1842), [anon_sym_where] = ACTIONS(1842), [anon_sym_while] = ACTIONS(1842), [anon_sym_LBRACE] = ACTIONS(1844), [anon_sym_RBRACE] = ACTIONS(1844), [anon_sym_LPAREN] = ACTIONS(1844), [anon_sym_RPAREN] = ACTIONS(1844), [sym_mutable_specifier] = ACTIONS(1842), [anon_sym_DOLLAR] = ACTIONS(1844), [sym_integer_literal] = ACTIONS(1844), [aux_sym_string_literal_token1] = ACTIONS(1844), [sym_char_literal] = ACTIONS(1844), [anon_sym_true] = ACTIONS(1842), [anon_sym_false] = ACTIONS(1842), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1842), [sym_raw_string_literal] = ACTIONS(1844), [sym_float_literal] = ACTIONS(1844), [sym_block_comment] = ACTIONS(3), }, [483] = { [sym_identifier] = ACTIONS(1846), [anon_sym_u8] = ACTIONS(1846), [anon_sym_i8] = ACTIONS(1846), [anon_sym_u16] = ACTIONS(1846), [anon_sym_i16] = ACTIONS(1846), [anon_sym_u32] = ACTIONS(1846), [anon_sym_i32] = ACTIONS(1846), [anon_sym_u64] = ACTIONS(1846), [anon_sym_i64] = ACTIONS(1846), [anon_sym_u128] = ACTIONS(1846), [anon_sym_i128] = ACTIONS(1846), [anon_sym_u256] = ACTIONS(1846), [anon_sym_i256] = ACTIONS(1846), [anon_sym_b256] = ACTIONS(1846), [anon_sym_isize] = ACTIONS(1846), [anon_sym_usize] = ACTIONS(1846), [anon_sym_f32] = ACTIONS(1846), [anon_sym_f64] = ACTIONS(1846), [anon_sym_bool] = ACTIONS(1846), [anon_sym_char] = ACTIONS(1846), [anon_sym_str] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1848), [anon_sym_RBRACK] = ACTIONS(1848), [aux_sym__non_special_token_token1] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_abi] = ACTIONS(1846), [anon_sym_as] = ACTIONS(1846), [anon_sym_break] = ACTIONS(1846), [anon_sym_configurable] = ACTIONS(1846), [anon_sym_const] = ACTIONS(1846), [anon_sym_continue] = ACTIONS(1846), [anon_sym_default] = ACTIONS(1846), [anon_sym_mod] = ACTIONS(1846), [anon_sym_enum] = ACTIONS(1846), [anon_sym_fn] = ACTIONS(1846), [anon_sym_for] = ACTIONS(1846), [anon_sym_if] = ACTIONS(1846), [anon_sym_impl] = ACTIONS(1846), [anon_sym_let] = ACTIONS(1846), [anon_sym_match] = ACTIONS(1846), [anon_sym_pub] = ACTIONS(1846), [anon_sym_return] = ACTIONS(1846), [anon_sym_storage] = ACTIONS(1846), [anon_sym_struct] = ACTIONS(1846), [anon_sym_trait] = ACTIONS(1846), [anon_sym_type] = ACTIONS(1846), [anon_sym_use] = ACTIONS(1846), [anon_sym_where] = ACTIONS(1846), [anon_sym_while] = ACTIONS(1846), [anon_sym_LBRACE] = ACTIONS(1848), [anon_sym_RBRACE] = ACTIONS(1848), [anon_sym_LPAREN] = ACTIONS(1848), [anon_sym_RPAREN] = ACTIONS(1848), [sym_mutable_specifier] = ACTIONS(1846), [anon_sym_DOLLAR] = ACTIONS(1848), [sym_integer_literal] = ACTIONS(1848), [aux_sym_string_literal_token1] = ACTIONS(1848), [sym_char_literal] = ACTIONS(1848), [anon_sym_true] = ACTIONS(1846), [anon_sym_false] = ACTIONS(1846), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1846), [sym_raw_string_literal] = ACTIONS(1848), [sym_float_literal] = ACTIONS(1848), [sym_block_comment] = ACTIONS(3), }, [484] = { [sym_identifier] = ACTIONS(1850), [anon_sym_u8] = ACTIONS(1850), [anon_sym_i8] = ACTIONS(1850), [anon_sym_u16] = ACTIONS(1850), [anon_sym_i16] = ACTIONS(1850), [anon_sym_u32] = ACTIONS(1850), [anon_sym_i32] = ACTIONS(1850), [anon_sym_u64] = ACTIONS(1850), [anon_sym_i64] = ACTIONS(1850), [anon_sym_u128] = ACTIONS(1850), [anon_sym_i128] = ACTIONS(1850), [anon_sym_u256] = ACTIONS(1850), [anon_sym_i256] = ACTIONS(1850), [anon_sym_b256] = ACTIONS(1850), [anon_sym_isize] = ACTIONS(1850), [anon_sym_usize] = ACTIONS(1850), [anon_sym_f32] = ACTIONS(1850), [anon_sym_f64] = ACTIONS(1850), [anon_sym_bool] = ACTIONS(1850), [anon_sym_char] = ACTIONS(1850), [anon_sym_str] = ACTIONS(1850), [anon_sym_LBRACK] = ACTIONS(1852), [anon_sym_RBRACK] = ACTIONS(1852), [aux_sym__non_special_token_token1] = ACTIONS(1850), [anon_sym_SQUOTE] = ACTIONS(1850), [anon_sym_abi] = ACTIONS(1850), [anon_sym_as] = ACTIONS(1850), [anon_sym_break] = ACTIONS(1850), [anon_sym_configurable] = ACTIONS(1850), [anon_sym_const] = ACTIONS(1850), [anon_sym_continue] = ACTIONS(1850), [anon_sym_default] = ACTIONS(1850), [anon_sym_mod] = ACTIONS(1850), [anon_sym_enum] = ACTIONS(1850), [anon_sym_fn] = ACTIONS(1850), [anon_sym_for] = ACTIONS(1850), [anon_sym_if] = ACTIONS(1850), [anon_sym_impl] = ACTIONS(1850), [anon_sym_let] = ACTIONS(1850), [anon_sym_match] = ACTIONS(1850), [anon_sym_pub] = ACTIONS(1850), [anon_sym_return] = ACTIONS(1850), [anon_sym_storage] = ACTIONS(1850), [anon_sym_struct] = ACTIONS(1850), [anon_sym_trait] = ACTIONS(1850), [anon_sym_type] = ACTIONS(1850), [anon_sym_use] = ACTIONS(1850), [anon_sym_where] = ACTIONS(1850), [anon_sym_while] = ACTIONS(1850), [anon_sym_LBRACE] = ACTIONS(1852), [anon_sym_RBRACE] = ACTIONS(1852), [anon_sym_LPAREN] = ACTIONS(1852), [anon_sym_RPAREN] = ACTIONS(1852), [sym_mutable_specifier] = ACTIONS(1850), [anon_sym_DOLLAR] = ACTIONS(1852), [sym_integer_literal] = ACTIONS(1852), [aux_sym_string_literal_token1] = ACTIONS(1852), [sym_char_literal] = ACTIONS(1852), [anon_sym_true] = ACTIONS(1850), [anon_sym_false] = ACTIONS(1850), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1850), [sym_raw_string_literal] = ACTIONS(1852), [sym_float_literal] = ACTIONS(1852), [sym_block_comment] = ACTIONS(3), }, [485] = { [sym_identifier] = ACTIONS(1381), [anon_sym_u8] = ACTIONS(1381), [anon_sym_i8] = ACTIONS(1381), [anon_sym_u16] = ACTIONS(1381), [anon_sym_i16] = ACTIONS(1381), [anon_sym_u32] = ACTIONS(1381), [anon_sym_i32] = ACTIONS(1381), [anon_sym_u64] = ACTIONS(1381), [anon_sym_i64] = ACTIONS(1381), [anon_sym_u128] = ACTIONS(1381), [anon_sym_i128] = ACTIONS(1381), [anon_sym_u256] = ACTIONS(1381), [anon_sym_i256] = ACTIONS(1381), [anon_sym_b256] = ACTIONS(1381), [anon_sym_isize] = ACTIONS(1381), [anon_sym_usize] = ACTIONS(1381), [anon_sym_f32] = ACTIONS(1381), [anon_sym_f64] = ACTIONS(1381), [anon_sym_bool] = ACTIONS(1381), [anon_sym_char] = ACTIONS(1381), [anon_sym_str] = ACTIONS(1381), [anon_sym_LBRACK] = ACTIONS(1379), [anon_sym_RBRACK] = ACTIONS(1379), [anon_sym_SQUOTE] = ACTIONS(1381), [anon_sym_abi] = ACTIONS(1381), [anon_sym_break] = ACTIONS(1381), [anon_sym_const] = ACTIONS(1381), [anon_sym_continue] = ACTIONS(1381), [anon_sym_default] = ACTIONS(1381), [anon_sym_for] = ACTIONS(1381), [anon_sym_if] = ACTIONS(1381), [anon_sym_match] = ACTIONS(1381), [anon_sym_return] = ACTIONS(1381), [anon_sym_storage] = ACTIONS(1381), [anon_sym_while] = ACTIONS(1381), [anon_sym_POUND] = ACTIONS(1379), [anon_sym_COMMA] = ACTIONS(1379), [anon_sym_BANG] = ACTIONS(1379), [anon_sym_LBRACE] = ACTIONS(1379), [anon_sym_LPAREN] = ACTIONS(1379), [anon_sym_asm] = ACTIONS(1381), [anon_sym_LT] = ACTIONS(1379), [anon_sym_COLON_COLON] = ACTIONS(1379), [anon_sym_STAR] = ACTIONS(1379), [anon_sym__] = ACTIONS(1381), [anon_sym_AMP] = ACTIONS(1379), [anon_sym_ref] = ACTIONS(1381), [sym_mutable_specifier] = ACTIONS(1381), [anon_sym_DOT_DOT] = ACTIONS(1379), [anon_sym_DASH] = ACTIONS(1379), [anon_sym_PIPE] = ACTIONS(1379), [anon_sym_yield] = ACTIONS(1381), [anon_sym_move] = ACTIONS(1381), [anon_sym_deref] = ACTIONS(1381), [sym_integer_literal] = ACTIONS(1379), [aux_sym_string_literal_token1] = ACTIONS(1379), [sym_char_literal] = ACTIONS(1379), [anon_sym_true] = ACTIONS(1381), [anon_sym_false] = ACTIONS(1381), [sym_line_comment] = ACTIONS(3), [sym_self] = ACTIONS(1381), [sym_metavariable] = ACTIONS(1379), [sym_raw_string_literal] = ACTIONS(1379), [sym_float_literal] = ACTIONS(1379), [sym_block_comment] = ACTIONS(3), }, [486] = { [sym_identifier] = ACTIONS(1854), [anon_sym_u8] = ACTIONS(1854), [anon_sym_i8] = ACTIONS(1854), [anon_sym_u16] = ACTIONS(1854), [anon_sym_i16] = ACTIONS(1854), [anon_sym_u32] = ACTIONS(1854), [anon_sym_i32] = ACTIONS(1854), [anon_sym_u64] = ACTIONS(1854), [anon_sym_i64] = ACTIONS(1854), [anon_sym_u128] = ACTIONS(1854), [anon_sym_i128] = ACTIONS(1854), [anon_sym_u256] = ACTIONS(1854), [anon_sym_i256] = ACTIONS(1854), [anon_sym_b256] = ACTIONS(1854), [anon_sym_isize] = ACTIONS(1854), [anon_sym_usize] = ACTIONS(1854), [anon_sym_f32] = ACTIONS(1854), [anon_sym_f64] = ACTIONS(1854), [anon_sym_bool] = ACTIONS(1854), [anon_sym_char] = ACTIONS(1854), [anon_sym_str] = ACTIONS(1854), [anon_sym_LBRACK] = ACTIONS(1856), [anon_sym_RBRACK] = ACTIONS(1856), [aux_sym__non_special_token_token1] = ACTIONS(1854), [anon_sym_SQUOTE] = ACTIONS(1854), [anon_sym_abi] = ACTIONS(1854), [anon_sym_as] = ACTIONS(1854), [anon_sym_break] = ACTIONS(1854), [anon_sym_configurable] = ACTIONS(1854), [anon_sym_const] = ACTIONS(1854), [anon_sym_continue] = ACTIONS(1854), [anon_sym_default] = ACTIONS(1854), [anon_sym_mod] = ACTIONS(1854), [anon_sym_enum] = ACTIONS(1854), [anon_sym_fn] = ACTIONS(1854), [anon_sym_for] = ACTIONS(1854), [anon_sym_if] = ACTIONS(1854), [anon_sym_impl] = ACTIONS(1854), [anon_sym_let] = ACTIONS(1854), [anon_sym_match] = ACTIONS(1854), [anon_sym_pub] = ACTIONS(1854), [anon_sym_return] = ACTIONS(1854), [anon_sym_storage] = ACTIONS(1854), [anon_sym_struct] = ACTIONS(1854), [anon_sym_trait] = ACTIONS(1854), [anon_sym_type] = ACTIONS(1854), [anon_sym_use] = ACTIONS(1854), [anon_sym_where] = ACTIONS(1854), [anon_sym_while] = ACTIONS(1854), [anon_sym_LBRACE] = ACTIONS(1856), [anon_sym_RBRACE] = ACTIONS(1856), [anon_sym_LPAREN] = ACTIONS(1856), [anon_sym_RPAREN] = ACTIONS(1856), [sym_mutable_specifier] = ACTIONS(1854), [anon_sym_DOLLAR] = ACTIONS(1856), [sym_integer_literal] = ACTIONS(1856), [aux_sym_string_literal_token1] = ACTIONS(1856), [sym_char_literal] = ACTIONS(1856), [anon_sym_true] = ACTIONS(1854), [anon_sym_false] = ACTIONS(1854), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1854), [sym_raw_string_literal] = ACTIONS(1856), [sym_float_literal] = ACTIONS(1856), [sym_block_comment] = ACTIONS(3), }, [487] = { [sym_identifier] = ACTIONS(1858), [anon_sym_u8] = ACTIONS(1858), [anon_sym_i8] = ACTIONS(1858), [anon_sym_u16] = ACTIONS(1858), [anon_sym_i16] = ACTIONS(1858), [anon_sym_u32] = ACTIONS(1858), [anon_sym_i32] = ACTIONS(1858), [anon_sym_u64] = ACTIONS(1858), [anon_sym_i64] = ACTIONS(1858), [anon_sym_u128] = ACTIONS(1858), [anon_sym_i128] = ACTIONS(1858), [anon_sym_u256] = ACTIONS(1858), [anon_sym_i256] = ACTIONS(1858), [anon_sym_b256] = ACTIONS(1858), [anon_sym_isize] = ACTIONS(1858), [anon_sym_usize] = ACTIONS(1858), [anon_sym_f32] = ACTIONS(1858), [anon_sym_f64] = ACTIONS(1858), [anon_sym_bool] = ACTIONS(1858), [anon_sym_char] = ACTIONS(1858), [anon_sym_str] = ACTIONS(1858), [anon_sym_LBRACK] = ACTIONS(1860), [anon_sym_RBRACK] = ACTIONS(1860), [aux_sym__non_special_token_token1] = ACTIONS(1858), [anon_sym_SQUOTE] = ACTIONS(1858), [anon_sym_abi] = ACTIONS(1858), [anon_sym_as] = ACTIONS(1858), [anon_sym_break] = ACTIONS(1858), [anon_sym_configurable] = ACTIONS(1858), [anon_sym_const] = ACTIONS(1858), [anon_sym_continue] = ACTIONS(1858), [anon_sym_default] = ACTIONS(1858), [anon_sym_mod] = ACTIONS(1858), [anon_sym_enum] = ACTIONS(1858), [anon_sym_fn] = ACTIONS(1858), [anon_sym_for] = ACTIONS(1858), [anon_sym_if] = ACTIONS(1858), [anon_sym_impl] = ACTIONS(1858), [anon_sym_let] = ACTIONS(1858), [anon_sym_match] = ACTIONS(1858), [anon_sym_pub] = ACTIONS(1858), [anon_sym_return] = ACTIONS(1858), [anon_sym_storage] = ACTIONS(1858), [anon_sym_struct] = ACTIONS(1858), [anon_sym_trait] = ACTIONS(1858), [anon_sym_type] = ACTIONS(1858), [anon_sym_use] = ACTIONS(1858), [anon_sym_where] = ACTIONS(1858), [anon_sym_while] = ACTIONS(1858), [anon_sym_LBRACE] = ACTIONS(1860), [anon_sym_RBRACE] = ACTIONS(1860), [anon_sym_LPAREN] = ACTIONS(1860), [anon_sym_RPAREN] = ACTIONS(1860), [sym_mutable_specifier] = ACTIONS(1858), [anon_sym_DOLLAR] = ACTIONS(1860), [sym_integer_literal] = ACTIONS(1860), [aux_sym_string_literal_token1] = ACTIONS(1860), [sym_char_literal] = ACTIONS(1860), [anon_sym_true] = ACTIONS(1858), [anon_sym_false] = ACTIONS(1858), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1858), [sym_raw_string_literal] = ACTIONS(1860), [sym_float_literal] = ACTIONS(1860), [sym_block_comment] = ACTIONS(3), }, [488] = { [sym_identifier] = ACTIONS(1850), [anon_sym_u8] = ACTIONS(1850), [anon_sym_i8] = ACTIONS(1850), [anon_sym_u16] = ACTIONS(1850), [anon_sym_i16] = ACTIONS(1850), [anon_sym_u32] = ACTIONS(1850), [anon_sym_i32] = ACTIONS(1850), [anon_sym_u64] = ACTIONS(1850), [anon_sym_i64] = ACTIONS(1850), [anon_sym_u128] = ACTIONS(1850), [anon_sym_i128] = ACTIONS(1850), [anon_sym_u256] = ACTIONS(1850), [anon_sym_i256] = ACTIONS(1850), [anon_sym_b256] = ACTIONS(1850), [anon_sym_isize] = ACTIONS(1850), [anon_sym_usize] = ACTIONS(1850), [anon_sym_f32] = ACTIONS(1850), [anon_sym_f64] = ACTIONS(1850), [anon_sym_bool] = ACTIONS(1850), [anon_sym_char] = ACTIONS(1850), [anon_sym_str] = ACTIONS(1850), [anon_sym_LBRACK] = ACTIONS(1862), [anon_sym_RBRACK] = ACTIONS(1852), [aux_sym__non_special_token_token1] = ACTIONS(1850), [anon_sym_SQUOTE] = ACTIONS(1850), [anon_sym_abi] = ACTIONS(1850), [anon_sym_as] = ACTIONS(1850), [anon_sym_break] = ACTIONS(1850), [anon_sym_configurable] = ACTIONS(1850), [anon_sym_const] = ACTIONS(1850), [anon_sym_continue] = ACTIONS(1850), [anon_sym_default] = ACTIONS(1850), [anon_sym_mod] = ACTIONS(1850), [anon_sym_enum] = ACTIONS(1850), [anon_sym_fn] = ACTIONS(1850), [anon_sym_for] = ACTIONS(1850), [anon_sym_if] = ACTIONS(1850), [anon_sym_impl] = ACTIONS(1850), [anon_sym_let] = ACTIONS(1850), [anon_sym_match] = ACTIONS(1850), [anon_sym_pub] = ACTIONS(1850), [anon_sym_return] = ACTIONS(1850), [anon_sym_storage] = ACTIONS(1850), [anon_sym_struct] = ACTIONS(1850), [anon_sym_trait] = ACTIONS(1850), [anon_sym_type] = ACTIONS(1850), [anon_sym_use] = ACTIONS(1850), [anon_sym_where] = ACTIONS(1850), [anon_sym_while] = ACTIONS(1850), [anon_sym_LBRACE] = ACTIONS(1852), [anon_sym_RBRACE] = ACTIONS(1852), [anon_sym_LPAREN] = ACTIONS(1852), [anon_sym_RPAREN] = ACTIONS(1852), [sym_mutable_specifier] = ACTIONS(1850), [anon_sym_DOLLAR] = ACTIONS(1852), [sym_integer_literal] = ACTIONS(1852), [aux_sym_string_literal_token1] = ACTIONS(1852), [sym_char_literal] = ACTIONS(1852), [anon_sym_true] = ACTIONS(1850), [anon_sym_false] = ACTIONS(1850), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1850), [sym_raw_string_literal] = ACTIONS(1852), [sym_float_literal] = ACTIONS(1852), [sym_block_comment] = ACTIONS(3), }, [489] = { [sym_identifier] = ACTIONS(1864), [anon_sym_u8] = ACTIONS(1864), [anon_sym_i8] = ACTIONS(1864), [anon_sym_u16] = ACTIONS(1864), [anon_sym_i16] = ACTIONS(1864), [anon_sym_u32] = ACTIONS(1864), [anon_sym_i32] = ACTIONS(1864), [anon_sym_u64] = ACTIONS(1864), [anon_sym_i64] = ACTIONS(1864), [anon_sym_u128] = ACTIONS(1864), [anon_sym_i128] = ACTIONS(1864), [anon_sym_u256] = ACTIONS(1864), [anon_sym_i256] = ACTIONS(1864), [anon_sym_b256] = ACTIONS(1864), [anon_sym_isize] = ACTIONS(1864), [anon_sym_usize] = ACTIONS(1864), [anon_sym_f32] = ACTIONS(1864), [anon_sym_f64] = ACTIONS(1864), [anon_sym_bool] = ACTIONS(1864), [anon_sym_char] = ACTIONS(1864), [anon_sym_str] = ACTIONS(1864), [anon_sym_LBRACK] = ACTIONS(1866), [anon_sym_RBRACK] = ACTIONS(1866), [aux_sym__non_special_token_token1] = ACTIONS(1864), [anon_sym_SQUOTE] = ACTIONS(1864), [anon_sym_abi] = ACTIONS(1864), [anon_sym_as] = ACTIONS(1864), [anon_sym_break] = ACTIONS(1864), [anon_sym_configurable] = ACTIONS(1864), [anon_sym_const] = ACTIONS(1864), [anon_sym_continue] = ACTIONS(1864), [anon_sym_default] = ACTIONS(1864), [anon_sym_mod] = ACTIONS(1864), [anon_sym_enum] = ACTIONS(1864), [anon_sym_fn] = ACTIONS(1864), [anon_sym_for] = ACTIONS(1864), [anon_sym_if] = ACTIONS(1864), [anon_sym_impl] = ACTIONS(1864), [anon_sym_let] = ACTIONS(1864), [anon_sym_match] = ACTIONS(1864), [anon_sym_pub] = ACTIONS(1864), [anon_sym_return] = ACTIONS(1864), [anon_sym_storage] = ACTIONS(1864), [anon_sym_struct] = ACTIONS(1864), [anon_sym_trait] = ACTIONS(1864), [anon_sym_type] = ACTIONS(1864), [anon_sym_use] = ACTIONS(1864), [anon_sym_where] = ACTIONS(1864), [anon_sym_while] = ACTIONS(1864), [anon_sym_LBRACE] = ACTIONS(1866), [anon_sym_RBRACE] = ACTIONS(1866), [anon_sym_LPAREN] = ACTIONS(1866), [anon_sym_RPAREN] = ACTIONS(1866), [sym_mutable_specifier] = ACTIONS(1864), [anon_sym_DOLLAR] = ACTIONS(1866), [sym_integer_literal] = ACTIONS(1866), [aux_sym_string_literal_token1] = ACTIONS(1866), [sym_char_literal] = ACTIONS(1866), [anon_sym_true] = ACTIONS(1864), [anon_sym_false] = ACTIONS(1864), [sym_line_comment] = ACTIONS(1689), [sym_self] = ACTIONS(1864), [sym_raw_string_literal] = ACTIONS(1866), [sym_float_literal] = ACTIONS(1866), [sym_block_comment] = ACTIONS(3), }, }; static const uint16_t ts_small_parse_table[] = { [0] = 33, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1874), 1, anon_sym_COMMA, ACTIONS(1876), 1, anon_sym_RPAREN, ACTIONS(1878), 1, anon_sym_AMP, STATE(604), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1554), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(497), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [128] = 32, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1880), 1, anon_sym_RPAREN, STATE(611), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1604), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(498), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [253] = 32, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1882), 1, anon_sym_RPAREN, STATE(611), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1604), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(498), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [378] = 32, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1884), 1, anon_sym_RPAREN, STATE(611), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1604), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(498), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [503] = 32, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1886), 1, anon_sym_RPAREN, STATE(611), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1604), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(498), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [628] = 32, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1888), 1, anon_sym_RPAREN, STATE(611), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1604), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(498), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [753] = 32, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1890), 1, anon_sym_RPAREN, STATE(611), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1604), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(498), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [878] = 31, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1878), 1, anon_sym_AMP, STATE(536), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1492), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(903), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [1000] = 31, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1878), 1, anon_sym_AMP, STATE(569), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1780), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(903), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [1122] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1894), 17, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_DASH_GT, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_PIPE, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(1892), 40, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_SQUOTE, anon_sym_abi, anon_sym_break, anon_sym_const, anon_sym_continue, anon_sym_default, anon_sym_for, anon_sym_if, anon_sym_match, anon_sym_return, anon_sym_storage, anon_sym_while, anon_sym_asm, anon_sym_DASH, anon_sym_yield, anon_sym_move, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [1188] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1898), 17, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_DASH_GT, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_PIPE, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(1896), 40, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_SQUOTE, anon_sym_abi, anon_sym_break, anon_sym_const, anon_sym_continue, anon_sym_default, anon_sym_for, anon_sym_if, anon_sym_match, anon_sym_return, anon_sym_storage, anon_sym_while, anon_sym_asm, anon_sym_DASH, anon_sym_yield, anon_sym_move, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [1254] = 31, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1870), 1, anon_sym_pub, ACTIONS(1872), 1, anon_sym_POUND, ACTIONS(1878), 1, anon_sym_AMP, STATE(611), 1, sym_visibility_modifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1604), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(498), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [1376] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(608), 18, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(1900), 39, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_SQUOTE, anon_sym_abi, anon_sym_break, anon_sym_const, anon_sym_continue, anon_sym_default, anon_sym_for, anon_sym_if, anon_sym_match, anon_sym_return, anon_sym_storage, anon_sym_while, anon_sym_asm, anon_sym_yield, anon_sym_move, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [1442] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(829), 17, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_DASH_GT, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_PIPE, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(827), 40, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_SQUOTE, anon_sym_abi, anon_sym_break, anon_sym_const, anon_sym_continue, anon_sym_default, anon_sym_for, anon_sym_if, anon_sym_match, anon_sym_return, anon_sym_storage, anon_sym_while, anon_sym_asm, anon_sym_DASH, anon_sym_yield, anon_sym_move, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [1508] = 30, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1902), 1, sym_identifier, ACTIONS(1904), 1, anon_sym_const, ACTIONS(1906), 1, sym_metavariable, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1517), 1, sym_constrained_type_parameter, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1740), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(1990), 1, sym_qualified_type, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1716), 2, sym_const_parameter, sym_optional_type_parameter, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [1627] = 30, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1908), 1, anon_sym_for, ACTIONS(1910), 1, anon_sym_QMARK, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1336), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1334), 2, sym_higher_ranked_trait_bound, sym_removed_trait_bound, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [1746] = 30, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, ACTIONS(1914), 1, anon_sym_for, ACTIONS(1916), 1, anon_sym_QMARK, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1335), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1334), 2, sym_higher_ranked_trait_bound, sym_removed_trait_bound, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [1865] = 30, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1908), 1, anon_sym_for, ACTIONS(1910), 1, anon_sym_QMARK, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1335), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1334), 2, sym_higher_ranked_trait_bound, sym_removed_trait_bound, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [1984] = 30, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, ACTIONS(1914), 1, anon_sym_for, ACTIONS(1916), 1, anon_sym_QMARK, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1475), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1473), 2, sym_higher_ranked_trait_bound, sym_removed_trait_bound, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [2103] = 30, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, ACTIONS(1914), 1, anon_sym_for, ACTIONS(1916), 1, anon_sym_QMARK, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1336), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1334), 2, sym_higher_ranked_trait_bound, sym_removed_trait_bound, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [2222] = 30, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1908), 1, anon_sym_for, ACTIONS(1910), 1, anon_sym_QMARK, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1363), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1434), 2, sym_higher_ranked_trait_bound, sym_removed_trait_bound, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [2341] = 29, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(283), 1, anon_sym_LBRACE, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(675), 1, sym_block, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1188), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [2456] = 28, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, ACTIONS(1918), 1, sym_mutable_specifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1186), 1, sym__type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [2568] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1920), 1, sym_identifier, ACTIONS(1922), 1, anon_sym_LT, STATE(578), 1, sym_type_parameters, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1160), 1, sym_primitive_type, STATE(1289), 1, sym_scoped_type_identifier, STATE(1428), 1, sym__type, STATE(1430), 1, sym_generic_type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [2680] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1924), 1, anon_sym_RPAREN, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1585), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [2792] = 28, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1740), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(1990), 1, sym_qualified_type, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [2904] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1926), 1, anon_sym_RPAREN, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1489), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [3016] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1928), 1, sym_identifier, ACTIONS(1930), 1, anon_sym_LBRACK, ACTIONS(1932), 1, anon_sym_default, ACTIONS(1934), 1, anon_sym_fn, ACTIONS(1936), 1, anon_sym_impl, ACTIONS(1938), 1, anon_sym_BANG, ACTIONS(1940), 1, anon_sym_LPAREN, ACTIONS(1942), 1, anon_sym_COLON_COLON, ACTIONS(1944), 1, anon_sym_STAR, ACTIONS(1946), 1, anon_sym_AMP, ACTIONS(1948), 1, sym_mutable_specifier, ACTIONS(1950), 1, sym_self, ACTIONS(1952), 1, sym_metavariable, STATE(623), 1, sym_scoped_type_identifier, STATE(647), 1, sym_primitive_type, STATE(648), 1, sym_generic_type_with_turbofish, STATE(669), 1, sym_generic_type, STATE(732), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2057), 1, sym_function_modifiers, STATE(2060), 1, sym_scoped_identifier, STATE(2143), 1, sym_bracketed_type, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(684), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [3128] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1954), 1, sym_mutable_specifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1984), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [3240] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1956), 1, anon_sym_RPAREN, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1509), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [3352] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1958), 1, sym_mutable_specifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1186), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [3464] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1960), 1, anon_sym_RPAREN, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1585), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [3576] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1962), 1, anon_sym_RPAREN, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1585), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [3688] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1964), 1, anon_sym_RPAREN, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1585), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [3800] = 28, ACTIONS(13), 1, anon_sym_str, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1922), 1, anon_sym_LT, ACTIONS(1966), 1, sym_identifier, STATE(592), 1, sym_type_parameters, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1160), 1, sym_primitive_type, STATE(1298), 1, sym_scoped_type_identifier, STATE(1381), 1, sym__type, STATE(1435), 1, sym_generic_type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [3912] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1928), 1, sym_identifier, ACTIONS(1930), 1, anon_sym_LBRACK, ACTIONS(1932), 1, anon_sym_default, ACTIONS(1934), 1, anon_sym_fn, ACTIONS(1936), 1, anon_sym_impl, ACTIONS(1938), 1, anon_sym_BANG, ACTIONS(1940), 1, anon_sym_LPAREN, ACTIONS(1942), 1, anon_sym_COLON_COLON, ACTIONS(1944), 1, anon_sym_STAR, ACTIONS(1946), 1, anon_sym_AMP, ACTIONS(1950), 1, sym_self, ACTIONS(1952), 1, sym_metavariable, STATE(623), 1, sym_scoped_type_identifier, STATE(647), 1, sym_primitive_type, STATE(648), 1, sym_generic_type_with_turbofish, STATE(669), 1, sym_generic_type, STATE(719), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2057), 1, sym_function_modifiers, STATE(2060), 1, sym_scoped_identifier, STATE(2143), 1, sym_bracketed_type, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(684), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [4021] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1893), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [4130] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1673), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [4239] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1749), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [4348] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1761), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [4457] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1376), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [4566] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1570), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [4675] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1192), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [4784] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1632), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [4893] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1191), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5002] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1391), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5111] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1542), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5220] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1188), 1, sym__type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5329] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1189), 1, sym__type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5438] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1192), 1, sym__type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5547] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1560), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5656] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1360), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5765] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1177), 1, sym__type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5874] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1182), 1, sym__type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [5983] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1194), 1, sym__type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [6092] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1720), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [6201] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1333), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [6310] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1512), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [6419] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1625), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [6528] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1191), 1, sym__type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [6637] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1360), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [6746] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1188), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [6855] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1515), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [6964] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1365), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [7073] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1573), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [7182] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1489), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [7291] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1928), 1, sym_identifier, ACTIONS(1930), 1, anon_sym_LBRACK, ACTIONS(1932), 1, anon_sym_default, ACTIONS(1934), 1, anon_sym_fn, ACTIONS(1936), 1, anon_sym_impl, ACTIONS(1938), 1, anon_sym_BANG, ACTIONS(1940), 1, anon_sym_LPAREN, ACTIONS(1942), 1, anon_sym_COLON_COLON, ACTIONS(1944), 1, anon_sym_STAR, ACTIONS(1946), 1, anon_sym_AMP, ACTIONS(1950), 1, sym_self, ACTIONS(1952), 1, sym_metavariable, STATE(623), 1, sym_scoped_type_identifier, STATE(647), 1, sym_primitive_type, STATE(648), 1, sym_generic_type_with_turbofish, STATE(669), 1, sym_generic_type, STATE(671), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2057), 1, sym_function_modifiers, STATE(2060), 1, sym_scoped_identifier, STATE(2143), 1, sym_bracketed_type, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(684), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [7400] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1928), 1, sym_identifier, ACTIONS(1930), 1, anon_sym_LBRACK, ACTIONS(1932), 1, anon_sym_default, ACTIONS(1934), 1, anon_sym_fn, ACTIONS(1936), 1, anon_sym_impl, ACTIONS(1938), 1, anon_sym_BANG, ACTIONS(1940), 1, anon_sym_LPAREN, ACTIONS(1942), 1, anon_sym_COLON_COLON, ACTIONS(1944), 1, anon_sym_STAR, ACTIONS(1946), 1, anon_sym_AMP, ACTIONS(1950), 1, sym_self, ACTIONS(1952), 1, sym_metavariable, STATE(623), 1, sym_scoped_type_identifier, STATE(647), 1, sym_primitive_type, STATE(648), 1, sym_generic_type_with_turbofish, STATE(669), 1, sym_generic_type, STATE(672), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2057), 1, sym_function_modifiers, STATE(2060), 1, sym_scoped_identifier, STATE(2143), 1, sym_bracketed_type, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(684), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [7509] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1928), 1, sym_identifier, ACTIONS(1930), 1, anon_sym_LBRACK, ACTIONS(1932), 1, anon_sym_default, ACTIONS(1934), 1, anon_sym_fn, ACTIONS(1936), 1, anon_sym_impl, ACTIONS(1938), 1, anon_sym_BANG, ACTIONS(1940), 1, anon_sym_LPAREN, ACTIONS(1942), 1, anon_sym_COLON_COLON, ACTIONS(1944), 1, anon_sym_STAR, ACTIONS(1946), 1, anon_sym_AMP, ACTIONS(1950), 1, sym_self, ACTIONS(1952), 1, sym_metavariable, STATE(623), 1, sym_scoped_type_identifier, STATE(647), 1, sym_primitive_type, STATE(648), 1, sym_generic_type_with_turbofish, STATE(669), 1, sym_generic_type, STATE(708), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2057), 1, sym_function_modifiers, STATE(2060), 1, sym_scoped_identifier, STATE(2143), 1, sym_bracketed_type, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(684), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [7618] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1928), 1, sym_identifier, ACTIONS(1930), 1, anon_sym_LBRACK, ACTIONS(1932), 1, anon_sym_default, ACTIONS(1934), 1, anon_sym_fn, ACTIONS(1936), 1, anon_sym_impl, ACTIONS(1938), 1, anon_sym_BANG, ACTIONS(1940), 1, anon_sym_LPAREN, ACTIONS(1942), 1, anon_sym_COLON_COLON, ACTIONS(1944), 1, anon_sym_STAR, ACTIONS(1946), 1, anon_sym_AMP, ACTIONS(1950), 1, sym_self, ACTIONS(1952), 1, sym_metavariable, STATE(623), 1, sym_scoped_type_identifier, STATE(647), 1, sym_primitive_type, STATE(648), 1, sym_generic_type_with_turbofish, STATE(669), 1, sym_generic_type, STATE(711), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2057), 1, sym_function_modifiers, STATE(2060), 1, sym_scoped_identifier, STATE(2143), 1, sym_bracketed_type, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(684), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [7727] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1941), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [7836] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1968), 1, sym_self, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1499), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [7945] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1928), 1, sym_identifier, ACTIONS(1930), 1, anon_sym_LBRACK, ACTIONS(1932), 1, anon_sym_default, ACTIONS(1934), 1, anon_sym_fn, ACTIONS(1936), 1, anon_sym_impl, ACTIONS(1938), 1, anon_sym_BANG, ACTIONS(1940), 1, anon_sym_LPAREN, ACTIONS(1942), 1, anon_sym_COLON_COLON, ACTIONS(1944), 1, anon_sym_STAR, ACTIONS(1946), 1, anon_sym_AMP, ACTIONS(1950), 1, sym_self, ACTIONS(1952), 1, sym_metavariable, STATE(623), 1, sym_scoped_type_identifier, STATE(647), 1, sym_primitive_type, STATE(648), 1, sym_generic_type_with_turbofish, STATE(669), 1, sym_generic_type, STATE(694), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2057), 1, sym_function_modifiers, STATE(2060), 1, sym_scoped_identifier, STATE(2143), 1, sym_bracketed_type, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(684), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [8054] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1776), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [8163] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1415), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [8272] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1784), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [8381] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1438), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [8490] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1846), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [8599] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1836), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [8708] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1792), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [8817] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1808), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [8926] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1853), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [9035] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1854), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [9144] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1333), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [9253] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1189), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [9362] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1933), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [9471] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1382), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [9580] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1727), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [9689] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1970), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1160), 1, sym_primitive_type, STATE(1288), 1, sym_scoped_type_identifier, STATE(1362), 1, sym__type, STATE(1364), 1, sym_generic_type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [9798] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1177), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [9907] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1928), 1, sym_identifier, ACTIONS(1930), 1, anon_sym_LBRACK, ACTIONS(1932), 1, anon_sym_default, ACTIONS(1934), 1, anon_sym_fn, ACTIONS(1936), 1, anon_sym_impl, ACTIONS(1938), 1, anon_sym_BANG, ACTIONS(1940), 1, anon_sym_LPAREN, ACTIONS(1942), 1, anon_sym_COLON_COLON, ACTIONS(1944), 1, anon_sym_STAR, ACTIONS(1946), 1, anon_sym_AMP, ACTIONS(1950), 1, sym_self, ACTIONS(1952), 1, sym_metavariable, STATE(623), 1, sym_scoped_type_identifier, STATE(647), 1, sym_primitive_type, STATE(648), 1, sym_generic_type_with_turbofish, STATE(669), 1, sym_generic_type, STATE(730), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2057), 1, sym_function_modifiers, STATE(2060), 1, sym_scoped_identifier, STATE(2143), 1, sym_bracketed_type, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(684), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10016] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1606), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10125] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1745), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10234] = 27, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1801), 1, anon_sym_impl, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1811), 1, anon_sym_STAR, ACTIONS(1813), 1, anon_sym_AMP, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1912), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1278), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1737), 1, sym__type, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10343] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1182), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10452] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1374), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10561] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1585), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10670] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1765), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10779] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1484), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10888] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1377), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [10997] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1194), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [11106] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1668), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [11215] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1878), 1, anon_sym_AMP, ACTIONS(1972), 1, sym_identifier, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1160), 1, sym_primitive_type, STATE(1286), 1, sym_scoped_type_identifier, STATE(1385), 1, sym__type, STATE(1436), 1, sym_generic_type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [11324] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1752), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [11433] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1514), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [11542] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1394), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [11651] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1395), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [11760] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1495), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [11869] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1818), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [11978] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1398), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [12087] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1400), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [12196] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1439), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [12305] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1522), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [12414] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1851), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [12523] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1492), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [12632] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1609), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [12741] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1863), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [12850] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1406), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [12959] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1404), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [13068] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1408), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [13177] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1875), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [13286] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1780), 1, sym__type, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [13395] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1411), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [13504] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1412), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [13613] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1413), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [13722] = 27, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(355), 1, anon_sym_impl, ACTIONS(699), 1, anon_sym_BANG, ACTIONS(707), 1, anon_sym_STAR, ACTIONS(1793), 1, anon_sym_LBRACK, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1805), 1, anon_sym_LPAREN, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(1819), 1, sym_metavariable, ACTIONS(1868), 1, sym_identifier, ACTIONS(1878), 1, anon_sym_AMP, STATE(1034), 1, sym_generic_type_with_turbofish, STATE(1088), 1, sym_generic_type, STATE(1160), 1, sym_primitive_type, STATE(1170), 1, sym_scoped_type_identifier, STATE(1424), 1, sym__type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2059), 1, sym_function_modifiers, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1179), 9, sym_array_type, sym_function_type, sym_tuple_type, sym_unit_type, sym_bounded_type, sym_reference_type, sym_pointer_type, sym_empty_type, sym_abstract_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [13831] = 8, ACTIONS(1978), 1, anon_sym_LPAREN, ACTIONS(1980), 1, anon_sym_COLON_COLON, ACTIONS(1982), 1, anon_sym_LT2, STATE(655), 1, sym_type_arguments, STATE(661), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1976), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(1974), 27, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [13899] = 4, ACTIONS(1984), 1, anon_sym_LBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1850), 20, anon_sym_as, anon_sym_where, anon_sym_EQ, anon_sym_COLON, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_else, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, sym_identifier, ACTIONS(1852), 28, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [13959] = 8, ACTIONS(1978), 1, anon_sym_LPAREN, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(1990), 1, anon_sym_COLON_COLON, STATE(655), 1, sym_type_arguments, STATE(661), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1988), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(1986), 27, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14027] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1864), 20, anon_sym_as, anon_sym_where, anon_sym_EQ, anon_sym_COLON, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_else, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, sym_identifier, ACTIONS(1866), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14085] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1850), 20, anon_sym_as, anon_sym_where, anon_sym_EQ, anon_sym_COLON, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_else, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, sym_identifier, ACTIONS(1852), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14143] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1501), 15, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT_DOT, anon_sym_DASH, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(1503), 33, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym__, anon_sym_ref, sym_mutable_specifier, anon_sym_DOT_DOT, anon_sym_deref, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [14200] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1583), 15, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT_DOT, anon_sym_DASH, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(1585), 33, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym__, anon_sym_ref, sym_mutable_specifier, anon_sym_DOT_DOT, anon_sym_deref, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [14257] = 7, ACTIONS(1978), 1, anon_sym_LPAREN, ACTIONS(1982), 1, anon_sym_LT2, STATE(656), 1, sym_type_arguments, STATE(663), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(1992), 27, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14322] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1379), 15, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT_DOT, anon_sym_DASH, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(1381), 33, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym__, anon_sym_ref, sym_mutable_specifier, anon_sym_DOT_DOT, anon_sym_deref, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [14379] = 7, ACTIONS(1978), 1, anon_sym_LPAREN, ACTIONS(1982), 1, anon_sym_LT2, STATE(656), 1, sym_type_arguments, STATE(663), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1998), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(1996), 27, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14444] = 5, ACTIONS(2002), 1, anon_sym_SQUOTE, STATE(695), 1, sym_loop_label, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2004), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2000), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14504] = 6, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(2008), 1, anon_sym_COLON_COLON, STATE(717), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14566] = 4, ACTIONS(2014), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2012), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2010), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_LT2, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14624] = 6, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(2016), 1, anon_sym_COLON_COLON, STATE(1852), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14686] = 4, ACTIONS(2022), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2020), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2018), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_LT2, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14744] = 4, ACTIONS(2028), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2026), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2024), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_LT2, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14802] = 4, ACTIONS(2034), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2032), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2030), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_LT2, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14860] = 7, ACTIONS(2042), 1, anon_sym_COLON_COLON, ACTIONS(2044), 1, anon_sym_LT2, STATE(982), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, ACTIONS(2040), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2036), 23, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [14923] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2048), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2046), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [14978] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2052), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2050), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15033] = 12, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2059), 1, anon_sym_PLUS, ACTIONS(2062), 1, anon_sym_COLON_COLON, STATE(717), 1, sym_field_initializer_list, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2054), 2, anon_sym_SEMI, anon_sym_RBRACK, ACTIONS(513), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(515), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [15106] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2066), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2064), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15161] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2070), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2068), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15216] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2074), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2072), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15271] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2078), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2076), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15326] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2082), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2080), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15381] = 4, ACTIONS(2086), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2084), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2034), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15438] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2092), 2, anon_sym_LBRACE, anon_sym_COLON_COLON, ACTIONS(2090), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2088), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15495] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2084), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2034), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15550] = 4, ACTIONS(2096), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2094), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2028), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15607] = 4, ACTIONS(2098), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1992), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15664] = 4, ACTIONS(2100), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1992), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15721] = 4, ACTIONS(2102), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1992), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15778] = 4, ACTIONS(2108), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2106), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2104), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15835] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2112), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2110), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15890] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2116), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2114), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [15945] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2118), 2, anon_sym_LBRACE, anon_sym_COLON_COLON, ACTIONS(2090), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2088), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16002] = 5, ACTIONS(2124), 1, anon_sym_LPAREN, STATE(731), 1, sym_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2122), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2120), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16061] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2128), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2126), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16116] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2132), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2130), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16171] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2136), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2134), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16226] = 5, ACTIONS(2138), 1, anon_sym_else, STATE(734), 1, sym_else_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(421), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(419), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16285] = 4, ACTIONS(2144), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2142), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2140), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16342] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(679), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(681), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16397] = 4, ACTIONS(2146), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1998), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1996), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16454] = 4, ACTIONS(2152), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2150), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2148), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16511] = 4, ACTIONS(2156), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2154), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2022), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16568] = 4, ACTIONS(2162), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2160), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2158), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16625] = 4, ACTIONS(2166), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2164), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2014), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16682] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2170), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2168), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16737] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2172), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2092), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16792] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2032), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2030), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_LT2, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16847] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2174), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2118), 31, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16902] = 4, ACTIONS(2146), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1992), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [16959] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2178), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2176), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17013] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2182), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2180), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17067] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2186), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2184), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17121] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1834), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1836), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17175] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2190), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2188), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17229] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(449), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(447), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17283] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2192), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(425), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17337] = 12, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2059), 1, anon_sym_PLUS, ACTIONS(2194), 1, anon_sym_COLON_COLON, STATE(717), 1, sym_field_initializer_list, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2054), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(513), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(515), 19, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [17409] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2198), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2196), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17463] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2202), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2200), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17517] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2206), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2204), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17571] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2210), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2208), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17625] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(459), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(457), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17679] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(463), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(461), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17733] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1992), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17787] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(507), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(505), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17841] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2214), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2212), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17895] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(429), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(427), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [17949] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1846), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1848), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18003] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2218), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2216), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18057] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(519), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(517), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18111] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2222), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2220), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18165] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2226), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2224), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18219] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2230), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2228), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18273] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2234), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2232), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18327] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2238), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2236), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18381] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2242), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2240), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18435] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2090), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2088), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18489] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2246), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2244), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18543] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2250), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2248), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18597] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2254), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2252), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18651] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2258), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2256), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18705] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2262), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2260), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18759] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2266), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2264), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18813] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2270), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2268), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18867] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(469), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(467), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18921] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(291), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(289), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [18975] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2274), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2272), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19029] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2278), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2276), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19083] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2282), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2280), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19137] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(477), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(475), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19191] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2286), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2284), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19245] = 4, ACTIONS(2288), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2040), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2036), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19301] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1998), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1996), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19355] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2292), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2290), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19409] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1858), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1860), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19463] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2296), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2294), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19517] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2300), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2298), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19571] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2304), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2302), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19625] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2308), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2306), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19679] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2312), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2310), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19733] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2316), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2314), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19787] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(523), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(521), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19841] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(527), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(525), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19895] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(531), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(529), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [19949] = 4, ACTIONS(2318), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20005] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(445), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(443), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20059] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(537), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(535), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20113] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2122), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2120), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20167] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2322), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2320), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20221] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2326), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2324), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20275] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2330), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2328), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20329] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2334), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2332), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20383] = 12, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2059), 1, anon_sym_PLUS, ACTIONS(2336), 1, anon_sym_COLON_COLON, STATE(717), 1, sym_field_initializer_list, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1986), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(513), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(515), 19, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [20455] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(541), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(539), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20509] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2340), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2338), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20563] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2344), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2342), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20617] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2348), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2346), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20671] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2352), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2350), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20725] = 4, ACTIONS(2358), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2356), 14, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_POUND, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(2354), 30, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym__, anon_sym_ref, sym_mutable_specifier, anon_sym_deref, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [20781] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2362), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2360), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20835] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2366), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2364), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20889] = 4, ACTIONS(2372), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2370), 14, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_POUND, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(2368), 30, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym__, anon_sym_ref, sym_mutable_specifier, anon_sym_deref, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [20945] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(455), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(453), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [20999] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2376), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2374), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21053] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(437), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(435), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21107] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(473), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(471), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21161] = 4, ACTIONS(2378), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21217] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2382), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2380), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21271] = 4, ACTIONS(2288), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2040), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2036), 29, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21327] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2386), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2384), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21381] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(498), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(500), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21435] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1854), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(1856), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21489] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2388), 1, anon_sym_COLON_COLON, STATE(982), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, ACTIONS(2040), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2036), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [21551] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2392), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2390), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21605] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2396), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2394), 30, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21659] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2404), 1, anon_sym_EQ, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2398), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21742] = 7, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2434), 13, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2432), 26, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21803] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2356), 14, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_POUND, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(2354), 30, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym__, anon_sym_ref, sym_mutable_specifier, anon_sym_deref, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [21856] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2438), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2436), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [21939] = 9, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 10, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2440), 25, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22004] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2444), 8, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_else, anon_sym_EQ_GT, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [22091] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2370), 14, sym_raw_string_literal, sym_float_literal, anon_sym_LBRACK, anon_sym_POUND, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, sym_integer_literal, aux_sym_string_literal_token1, sym_char_literal, sym_metavariable, ACTIONS(2368), 30, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym__, anon_sym_ref, sym_mutable_specifier, anon_sym_deref, anon_sym_true, anon_sym_false, sym_identifier, sym_self, [22144] = 14, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, ACTIONS(2440), 25, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22219] = 8, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2442), 13, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2440), 25, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22282] = 11, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_CARET, ACTIONS(2440), 25, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22351] = 16, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2442), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2440), 21, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22430] = 17, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2442), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2440), 20, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_PIPE_PIPE, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22511] = 13, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 4, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_PIPE, ACTIONS(2440), 25, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22584] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2454), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2452), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22667] = 12, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 5, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_PIPE, anon_sym_CARET, ACTIONS(2440), 25, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22738] = 18, ACTIONS(265), 1, anon_sym_EQ, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(261), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22821] = 7, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2458), 13, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2456), 26, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22882] = 7, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2462), 13, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2460), 26, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [22943] = 10, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 8, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2440), 25, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [23010] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2466), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2464), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [23093] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2470), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2468), 19, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_else, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_EQ_GT, [23176] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2416), 1, anon_sym_DOT_DOT, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2414), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2472), 8, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_else, anon_sym_EQ_GT, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [23263] = 7, ACTIONS(2030), 1, anon_sym_LT2, ACTIONS(2086), 1, anon_sym_LBRACE, ACTIONS(2477), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2474), 3, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_LPAREN, ACTIONS(2084), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2034), 21, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [23323] = 7, ACTIONS(2024), 1, anon_sym_LT2, ACTIONS(2096), 1, anon_sym_LBRACE, ACTIONS(2483), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2480), 3, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_LPAREN, ACTIONS(2094), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2028), 21, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [23383] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2486), 1, anon_sym_COLON_COLON, STATE(982), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, ACTIONS(2040), 17, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2036), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [23443] = 22, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(2488), 1, sym_identifier, ACTIONS(2492), 1, anon_sym_default, ACTIONS(2494), 1, anon_sym_for, ACTIONS(2496), 1, anon_sym_LPAREN, ACTIONS(2498), 1, anon_sym_STAR, ACTIONS(2500), 1, anon_sym_AMP, ACTIONS(2502), 1, sym_metavariable, STATE(1488), 1, sym_scoped_type_identifier, STATE(1590), 1, sym_primitive_type, STATE(1612), 1, sym_generic_type, STATE(1638), 1, sym_where_predicate, STATE(2049), 1, sym_bracketed_type, STATE(2050), 1, sym_generic_type_with_turbofish, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2490), 2, anon_sym_SEMI, anon_sym_LBRACE, STATE(1979), 4, sym_higher_ranked_trait_bound, sym_tuple_type, sym_reference_type, sym_pointer_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [23533] = 22, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(2488), 1, sym_identifier, ACTIONS(2492), 1, anon_sym_default, ACTIONS(2494), 1, anon_sym_for, ACTIONS(2496), 1, anon_sym_LPAREN, ACTIONS(2498), 1, anon_sym_STAR, ACTIONS(2500), 1, anon_sym_AMP, ACTIONS(2502), 1, sym_metavariable, STATE(1488), 1, sym_scoped_type_identifier, STATE(1590), 1, sym_primitive_type, STATE(1612), 1, sym_generic_type, STATE(1638), 1, sym_where_predicate, STATE(2049), 1, sym_bracketed_type, STATE(2050), 1, sym_generic_type_with_turbofish, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2504), 2, anon_sym_SEMI, anon_sym_LBRACE, STATE(1979), 4, sym_higher_ranked_trait_bound, sym_tuple_type, sym_reference_type, sym_pointer_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [23623] = 7, ACTIONS(2010), 1, anon_sym_LT2, ACTIONS(2166), 1, anon_sym_LBRACE, ACTIONS(2509), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2506), 3, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_LPAREN, ACTIONS(2164), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2014), 21, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [23683] = 7, ACTIONS(2018), 1, anon_sym_LT2, ACTIONS(2156), 1, anon_sym_LBRACE, ACTIONS(2515), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2512), 3, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_LPAREN, ACTIONS(2154), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2022), 21, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [23743] = 5, ACTIONS(2288), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, ACTIONS(2040), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2036), 24, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_as, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [23799] = 7, ACTIONS(2018), 1, anon_sym_LT2, ACTIONS(2156), 1, anon_sym_LBRACE, ACTIONS(2515), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2512), 3, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, ACTIONS(2154), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2022), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [23858] = 7, ACTIONS(2030), 1, anon_sym_LT2, ACTIONS(2086), 1, anon_sym_LBRACE, ACTIONS(2477), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2474), 3, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, ACTIONS(2084), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2034), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [23917] = 7, ACTIONS(2024), 1, anon_sym_LT2, ACTIONS(2096), 1, anon_sym_LBRACE, ACTIONS(2483), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2480), 3, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, ACTIONS(2094), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2028), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [23976] = 7, ACTIONS(2010), 1, anon_sym_LT2, ACTIONS(2166), 1, anon_sym_LBRACE, ACTIONS(2509), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2506), 3, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, ACTIONS(2164), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2014), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [24035] = 6, ACTIONS(2030), 1, anon_sym_LT2, ACTIONS(2477), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2474), 3, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_LPAREN, ACTIONS(2084), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2034), 21, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [24092] = 7, ACTIONS(2086), 1, anon_sym_LBRACE, ACTIONS(2474), 1, anon_sym_LPAREN, ACTIONS(2477), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2030), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LT2, ACTIONS(2084), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2034), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [24151] = 7, ACTIONS(2166), 1, anon_sym_LBRACE, ACTIONS(2506), 1, anon_sym_LPAREN, ACTIONS(2509), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2010), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LT2, ACTIONS(2164), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2014), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [24210] = 19, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(721), 1, anon_sym_DASH, ACTIONS(727), 1, aux_sym_string_literal_token1, ACTIONS(2518), 1, sym_identifier, ACTIONS(2520), 1, anon_sym_default, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2524), 1, sym_self, ACTIONS(2526), 1, sym_metavariable, STATE(1210), 1, sym_scoped_identifier, STATE(1213), 1, sym_primitive_type, STATE(1238), 1, sym__literal_pattern, STATE(2041), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(729), 2, anon_sym_true, anon_sym_false, STATE(1197), 3, sym_negative_literal, sym_string_literal, sym_boolean_literal, ACTIONS(725), 4, sym_raw_string_literal, sym_float_literal, sym_integer_literal, sym_char_literal, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [24293] = 19, ACTIONS(75), 1, anon_sym_LT, ACTIONS(687), 1, anon_sym_str, ACTIONS(721), 1, anon_sym_DASH, ACTIONS(727), 1, aux_sym_string_literal_token1, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2528), 1, sym_identifier, ACTIONS(2530), 1, anon_sym_default, ACTIONS(2532), 1, sym_self, ACTIONS(2534), 1, sym_metavariable, STATE(1203), 1, sym_primitive_type, STATE(1204), 1, sym_scoped_identifier, STATE(1230), 1, sym__literal_pattern, STATE(2041), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(729), 2, anon_sym_true, anon_sym_false, STATE(1197), 3, sym_negative_literal, sym_string_literal, sym_boolean_literal, ACTIONS(725), 4, sym_raw_string_literal, sym_float_literal, sym_integer_literal, sym_char_literal, ACTIONS(685), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [24376] = 7, ACTIONS(2096), 1, anon_sym_LBRACE, ACTIONS(2480), 1, anon_sym_LPAREN, ACTIONS(2483), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2024), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LT2, ACTIONS(2094), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2028), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [24435] = 7, ACTIONS(2156), 1, anon_sym_LBRACE, ACTIONS(2512), 1, anon_sym_LPAREN, ACTIONS(2515), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2018), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LT2, ACTIONS(2154), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2022), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [24494] = 6, ACTIONS(2474), 1, anon_sym_LPAREN, ACTIONS(2477), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2030), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LT2, ACTIONS(2084), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2034), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [24550] = 6, ACTIONS(2030), 1, anon_sym_LT2, ACTIONS(2477), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2474), 3, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, ACTIONS(2084), 16, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_LT_LT_EQ, anon_sym_DOT, ACTIONS(2034), 20, anon_sym_LBRACK, anon_sym_as, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_GT_GT_EQ, [24606] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2092), 4, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_COLON_COLON, ACTIONS(2090), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2088), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [24658] = 21, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(2488), 1, sym_identifier, ACTIONS(2492), 1, anon_sym_default, ACTIONS(2494), 1, anon_sym_for, ACTIONS(2496), 1, anon_sym_LPAREN, ACTIONS(2498), 1, anon_sym_STAR, ACTIONS(2500), 1, anon_sym_AMP, ACTIONS(2502), 1, sym_metavariable, STATE(1488), 1, sym_scoped_type_identifier, STATE(1534), 1, sym_where_predicate, STATE(1590), 1, sym_primitive_type, STATE(1612), 1, sym_generic_type, STATE(2049), 1, sym_bracketed_type, STATE(2050), 1, sym_generic_type_with_turbofish, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1979), 4, sym_higher_ranked_trait_bound, sym_tuple_type, sym_reference_type, sym_pointer_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [24744] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2118), 4, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_COLON_COLON, ACTIONS(2090), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2088), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [24796] = 6, ACTIONS(2042), 1, anon_sym_COLON_COLON, ACTIONS(2539), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2536), 2, anon_sym_SEMI, anon_sym_RBRACK, ACTIONS(2040), 14, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2036), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [24852] = 4, ACTIONS(2542), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 25, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [24904] = 6, ACTIONS(2547), 1, anon_sym_PLUS, ACTIONS(2550), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2544), 2, anon_sym_SEMI, anon_sym_RBRACK, ACTIONS(513), 14, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [24960] = 21, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(2488), 1, sym_identifier, ACTIONS(2492), 1, anon_sym_default, ACTIONS(2494), 1, anon_sym_for, ACTIONS(2496), 1, anon_sym_LPAREN, ACTIONS(2498), 1, anon_sym_STAR, ACTIONS(2500), 1, anon_sym_AMP, ACTIONS(2502), 1, sym_metavariable, STATE(1488), 1, sym_scoped_type_identifier, STATE(1590), 1, sym_primitive_type, STATE(1612), 1, sym_generic_type, STATE(1638), 1, sym_where_predicate, STATE(2049), 1, sym_bracketed_type, STATE(2050), 1, sym_generic_type_with_turbofish, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1979), 4, sym_higher_ranked_trait_bound, sym_tuple_type, sym_reference_type, sym_pointer_type, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [25046] = 4, ACTIONS(2550), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 25, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25098] = 5, ACTIONS(2555), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2552), 2, anon_sym_SEMI, anon_sym_RBRACK, ACTIONS(2386), 14, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2384), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25151] = 5, ACTIONS(2016), 1, anon_sym_COLON_COLON, STATE(1852), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25204] = 6, ACTIONS(2388), 1, anon_sym_COLON_COLON, ACTIONS(2539), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2536), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(2040), 14, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2036), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25259] = 6, ACTIONS(2547), 1, anon_sym_PLUS, ACTIONS(2558), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(513), 14, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25314] = 5, ACTIONS(2560), 1, anon_sym_COLON_COLON, STATE(717), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25367] = 23, ACTIONS(439), 1, anon_sym_RBRACK, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2562), 1, anon_sym_SEMI, ACTIONS(2564), 1, anon_sym_COMMA, ACTIONS(2568), 1, anon_sym_DOT_DOT, STATE(1698), 1, aux_sym_array_expression_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25456] = 6, ACTIONS(2547), 1, anon_sym_PLUS, ACTIONS(2570), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2544), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(513), 14, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25511] = 6, ACTIONS(2486), 1, anon_sym_COLON_COLON, ACTIONS(2539), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(2040), 14, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2036), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25566] = 4, ACTIONS(2572), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 24, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25617] = 23, ACTIONS(651), 1, anon_sym_RBRACK, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2574), 1, anon_sym_SEMI, ACTIONS(2576), 1, anon_sym_COMMA, STATE(1748), 1, aux_sym_array_expression_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25706] = 4, ACTIONS(2570), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 24, anon_sym_LBRACK, anon_sym_as, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25757] = 5, ACTIONS(2558), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2578), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25810] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2578), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25860] = 5, ACTIONS(2555), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2294), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(2386), 14, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2384), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25912] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2084), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2034), 24, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [25960] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2164), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2014), 24, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26008] = 5, ACTIONS(2555), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2552), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(2386), 14, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2384), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26060] = 4, ACTIONS(2580), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26110] = 4, ACTIONS(2092), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2090), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2088), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26160] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2094), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2028), 24, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26208] = 4, ACTIONS(2582), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2040), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2036), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26258] = 4, ACTIONS(2584), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26308] = 22, ACTIONS(451), 1, anon_sym_RPAREN, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2586), 1, anon_sym_COMMA, STATE(1598), 1, aux_sym_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26394] = 22, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2588), 1, anon_sym_COMMA, ACTIONS(2590), 1, anon_sym_RPAREN, STATE(1696), 1, aux_sym_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26480] = 4, ACTIONS(2582), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2040), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2036), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26530] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2154), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2022), 24, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26578] = 18, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2592), 1, sym_identifier, ACTIONS(2594), 1, anon_sym_default, ACTIONS(2596), 1, anon_sym_COMMA, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(2600), 1, anon_sym_RBRACE, ACTIONS(2602), 1, anon_sym_COLON_COLON, ACTIONS(2604), 1, anon_sym_STAR, ACTIONS(2606), 1, sym_self, ACTIONS(2608), 1, sym_metavariable, STATE(1451), 1, sym_primitive_type, STATE(1458), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1572), 5, sym__use_clause, sym_scoped_use_list, sym_use_list, sym_use_as_clause, sym_use_wildcard, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [26656] = 4, ACTIONS(2118), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2090), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(2088), 23, anon_sym_LBRACK, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26706] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2612), 11, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_BANG, anon_sym_EQ, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2610), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_where, sym_identifier, sym_self, [26753] = 21, ACTIONS(549), 1, anon_sym_RPAREN, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2614), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26836] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2616), 1, anon_sym_SEMI, ACTIONS(2618), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [26919] = 21, ACTIONS(283), 1, anon_sym_LBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, STATE(710), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27002] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2648), 1, anon_sym_LBRACE, STATE(723), 1, sym_match_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27085] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2650), 1, anon_sym_SEMI, ACTIONS(2652), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27168] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2654), 1, anon_sym_SEMI, ACTIONS(2656), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27251] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2658), 1, anon_sym_LBRACE, STATE(222), 1, sym_match_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27334] = 21, ACTIONS(99), 1, anon_sym_RBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27417] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2664), 11, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_BANG, anon_sym_EQ, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2662), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_where, sym_identifier, sym_self, [27464] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2668), 11, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_BANG, anon_sym_EQ, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2666), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_where, sym_identifier, sym_self, [27511] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(2670), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27594] = 21, ACTIONS(677), 1, anon_sym_LBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, STATE(224), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27677] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2466), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2464), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27754] = 17, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2592), 1, sym_identifier, ACTIONS(2594), 1, anon_sym_default, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(2602), 1, anon_sym_COLON_COLON, ACTIONS(2604), 1, anon_sym_STAR, ACTIONS(2606), 1, sym_self, ACTIONS(2608), 1, sym_metavariable, ACTIONS(2676), 1, anon_sym_RBRACE, STATE(1451), 1, sym_primitive_type, STATE(1458), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1944), 5, sym__use_clause, sym_scoped_use_list, sym_use_list, sym_use_as_clause, sym_use_wildcard, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [27829] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2678), 1, anon_sym_COMMA, ACTIONS(2680), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27912] = 21, ACTIONS(677), 1, anon_sym_LBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, STATE(218), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [27995] = 21, ACTIONS(255), 1, anon_sym_RBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28078] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2684), 11, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_BANG, anon_sym_EQ, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2682), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_where, sym_identifier, sym_self, [28125] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(2686), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28208] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2690), 11, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_BANG, anon_sym_EQ, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2688), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_where, sym_identifier, sym_self, [28255] = 21, ACTIONS(259), 1, anon_sym_RBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28338] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2692), 1, anon_sym_LBRACE, STATE(68), 1, sym_match_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28421] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(2694), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28504] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(2696), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28587] = 7, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2462), 13, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2460), 20, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28642] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2700), 11, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_BANG, anon_sym_EQ, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2698), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_where, sym_identifier, sym_self, [28689] = 8, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2442), 13, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2440), 19, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28746] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2702), 2, anon_sym_COMMA, anon_sym_RBRACE, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28827] = 21, ACTIONS(283), 1, anon_sym_LBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, STATE(685), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28910] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2704), 2, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [28991] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2706), 1, anon_sym_SEMI, ACTIONS(2708), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29074] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2710), 2, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29155] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2712), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29236] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2714), 2, anon_sym_COMMA, anon_sym_RPAREN, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29317] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2716), 1, anon_sym_SEMI, ACTIONS(2718), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29400] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2438), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2436), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29477] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2720), 1, anon_sym_SEMI, ACTIONS(2722), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29560] = 21, ACTIONS(69), 1, anon_sym_LBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, STATE(58), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29643] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2724), 2, anon_sym_COMMA, anon_sym_RBRACE, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29724] = 18, ACTIONS(265), 1, anon_sym_EQ, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(261), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29801] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2726), 1, anon_sym_SEMI, ACTIONS(2728), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29884] = 9, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 10, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2440), 19, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [29943] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2730), 1, anon_sym_COMMA, ACTIONS(2732), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30026] = 14, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2442), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2440), 19, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30095] = 21, ACTIONS(69), 1, anon_sym_LBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, STATE(64), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30178] = 11, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 6, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_CARET, ACTIONS(2440), 19, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30241] = 16, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2442), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2440), 15, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30314] = 17, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2442), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2440), 14, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_PIPE_PIPE, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30389] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2734), 2, anon_sym_COMMA, anon_sym_RBRACE, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30470] = 13, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 4, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_PIPE, ACTIONS(2440), 19, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30537] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2736), 2, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30618] = 12, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 5, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_PIPE, anon_sym_CARET, ACTIONS(2440), 19, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30683] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(2738), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30766] = 10, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2442), 8, anon_sym_EQ, anon_sym_LT, anon_sym_GT, anon_sym_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2440), 19, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30827] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2444), 2, anon_sym_LBRACE, anon_sym_LPAREN, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30908] = 21, ACTIONS(249), 1, anon_sym_RBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [30991] = 21, ACTIONS(101), 1, anon_sym_RBRACE, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31074] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2454), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2452), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31151] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2740), 1, anon_sym_SEMI, ACTIONS(2742), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31234] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2744), 2, anon_sym_COMMA, anon_sym_RBRACE, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31315] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2746), 1, anon_sym_COMMA, ACTIONS(2748), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31398] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2470), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2468), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31475] = 4, ACTIONS(2750), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31524] = 21, ACTIONS(545), 1, anon_sym_RPAREN, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2614), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31607] = 7, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2458), 13, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2456), 20, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31662] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2472), 2, anon_sym_LBRACE, anon_sym_LPAREN, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31743] = 4, ACTIONS(2558), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(513), 15, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DOT_DOT, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_DOT, ACTIONS(515), 22, anon_sym_LBRACK, anon_sym_as, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31792] = 5, ACTIONS(2752), 1, anon_sym_POUND, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(903), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, ACTIONS(1829), 8, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(1827), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_pub, sym_identifier, sym_self, [31843] = 21, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2614), 1, anon_sym_COMMA, ACTIONS(2755), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [31926] = 17, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2592), 1, sym_identifier, ACTIONS(2594), 1, anon_sym_default, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(2602), 1, anon_sym_COLON_COLON, ACTIONS(2604), 1, anon_sym_STAR, ACTIONS(2606), 1, sym_self, ACTIONS(2608), 1, sym_metavariable, ACTIONS(2757), 1, anon_sym_RBRACE, STATE(1451), 1, sym_primitive_type, STATE(1458), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1944), 5, sym__use_clause, sym_scoped_use_list, sym_use_list, sym_use_as_clause, sym_use_wildcard, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [32001] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2759), 2, anon_sym_COMMA, anon_sym_RBRACE, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [32082] = 18, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2404), 1, anon_sym_EQ, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2634), 1, anon_sym_AMP_AMP, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2398), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [32159] = 7, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2674), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2672), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2434), 13, anon_sym_EQ, anon_sym_PLUS, anon_sym_LT, anon_sym_GT, anon_sym_STAR, anon_sym_AMP, anon_sym_DASH, anon_sym_PIPE, anon_sym_CARET, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2432), 20, anon_sym_as, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_QMARK, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [32214] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2761), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [32294] = 19, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2763), 2, anon_sym_AMP_AMP, anon_sym_EQ_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [32372] = 16, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2592), 1, sym_identifier, ACTIONS(2594), 1, anon_sym_default, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(2602), 1, anon_sym_COLON_COLON, ACTIONS(2604), 1, anon_sym_STAR, ACTIONS(2606), 1, sym_self, ACTIONS(2608), 1, sym_metavariable, STATE(1451), 1, sym_primitive_type, STATE(1458), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(2063), 5, sym__use_clause, sym_scoped_use_list, sym_use_list, sym_use_as_clause, sym_use_wildcard, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [32444] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2765), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [32524] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2767), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [32604] = 20, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1799), 1, anon_sym_fn, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(2502), 1, sym_metavariable, ACTIONS(2769), 1, sym_identifier, STATE(1000), 1, sym_generic_type, STATE(1180), 1, sym_function_type, STATE(1275), 1, sym_scoped_type_identifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(1989), 1, sym_function_modifiers, STATE(2049), 1, sym_bracketed_type, STATE(2050), 1, sym_generic_type_with_turbofish, STATE(2084), 1, sym_primitive_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [32684] = 20, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(353), 1, anon_sym_fn, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1797), 1, anon_sym_default, ACTIONS(1809), 1, anon_sym_COLON_COLON, ACTIONS(1817), 1, sym_self, ACTIONS(2502), 1, sym_metavariable, ACTIONS(2771), 1, sym_identifier, STATE(1000), 1, sym_generic_type, STATE(1001), 1, sym_scoped_type_identifier, STATE(1180), 1, sym_function_type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2049), 1, sym_bracketed_type, STATE(2050), 1, sym_generic_type_with_turbofish, STATE(2059), 1, sym_function_modifiers, STATE(2084), 1, sym_primitive_type, STATE(2162), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [32764] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2773), 1, anon_sym_AMP_AMP, ACTIONS(2775), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [32844] = 16, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2592), 1, sym_identifier, ACTIONS(2594), 1, anon_sym_default, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(2602), 1, anon_sym_COLON_COLON, ACTIONS(2604), 1, anon_sym_STAR, ACTIONS(2606), 1, sym_self, ACTIONS(2608), 1, sym_metavariable, STATE(1451), 1, sym_primitive_type, STATE(1458), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(2149), 5, sym__use_clause, sym_scoped_use_list, sym_use_list, sym_use_as_clause, sym_use_wildcard, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [32916] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2777), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [32996] = 19, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2779), 2, anon_sym_AMP_AMP, anon_sym_EQ_GT, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [33074] = 16, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2592), 1, sym_identifier, ACTIONS(2594), 1, anon_sym_default, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(2602), 1, anon_sym_COLON_COLON, ACTIONS(2604), 1, anon_sym_STAR, ACTIONS(2606), 1, sym_self, ACTIONS(2608), 1, sym_metavariable, STATE(1451), 1, sym_primitive_type, STATE(1458), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(2071), 5, sym__use_clause, sym_scoped_use_list, sym_use_list, sym_use_as_clause, sym_use_wildcard, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [33146] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2781), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [33226] = 20, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(1795), 1, anon_sym_const, ACTIONS(1932), 1, anon_sym_default, ACTIONS(1934), 1, anon_sym_fn, ACTIONS(1942), 1, anon_sym_COLON_COLON, ACTIONS(1950), 1, sym_self, ACTIONS(2783), 1, sym_identifier, ACTIONS(2785), 1, sym_metavariable, STATE(625), 1, sym_scoped_type_identifier, STATE(660), 1, sym_generic_type, STATE(713), 1, sym_function_type, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2057), 1, sym_function_modifiers, STATE(2078), 1, sym_primitive_type, STATE(2143), 1, sym_bracketed_type, STATE(2144), 1, sym_generic_type_with_turbofish, STATE(2147), 1, sym_scoped_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [33306] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2787), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [33386] = 19, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2763), 2, anon_sym_LBRACE, anon_sym_AMP_AMP, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [33464] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2789), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [33544] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2791), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [33624] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(2775), 1, anon_sym_LBRACE, ACTIONS(2793), 1, anon_sym_AMP_AMP, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [33704] = 19, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2620), 1, anon_sym_EQ, ACTIONS(2628), 1, anon_sym_AMP, ACTIONS(2632), 1, anon_sym_DOT_DOT, ACTIONS(2636), 1, anon_sym_PIPE_PIPE, ACTIONS(2638), 1, anon_sym_PIPE, ACTIONS(2640), 1, anon_sym_CARET, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2622), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2624), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2630), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2644), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2779), 2, anon_sym_LBRACE, anon_sym_AMP_AMP, ACTIONS(2626), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2642), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2646), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [33782] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2795), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [33862] = 16, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2592), 1, sym_identifier, ACTIONS(2594), 1, anon_sym_default, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(2602), 1, anon_sym_COLON_COLON, ACTIONS(2604), 1, anon_sym_STAR, ACTIONS(2606), 1, sym_self, ACTIONS(2608), 1, sym_metavariable, STATE(1451), 1, sym_primitive_type, STATE(1458), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(2175), 5, sym__use_clause, sym_scoped_use_list, sym_use_list, sym_use_as_clause, sym_use_wildcard, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [33934] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2797), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34014] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2799), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34094] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2801), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34174] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2803), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34254] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2660), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34334] = 16, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2592), 1, sym_identifier, ACTIONS(2594), 1, anon_sym_default, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(2602), 1, anon_sym_COLON_COLON, ACTIONS(2604), 1, anon_sym_STAR, ACTIONS(2606), 1, sym_self, ACTIONS(2608), 1, sym_metavariable, STATE(1451), 1, sym_primitive_type, STATE(1458), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1944), 5, sym__use_clause, sym_scoped_use_list, sym_use_list, sym_use_as_clause, sym_use_wildcard, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [34406] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2805), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34486] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2807), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34566] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2614), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34646] = 20, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(2809), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34726] = 19, ACTIONS(2400), 1, anon_sym_LBRACK, ACTIONS(2402), 1, anon_sym_as, ACTIONS(2412), 1, anon_sym_AMP, ACTIONS(2418), 1, anon_sym_AMP_AMP, ACTIONS(2420), 1, anon_sym_PIPE_PIPE, ACTIONS(2422), 1, anon_sym_PIPE, ACTIONS(2424), 1, anon_sym_CARET, ACTIONS(2430), 1, anon_sym_DOT, ACTIONS(2446), 1, anon_sym_EQ, ACTIONS(2448), 1, anon_sym_QMARK, ACTIONS(2568), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2406), 2, anon_sym_PLUS, anon_sym_DASH, ACTIONS(2408), 2, anon_sym_LT, anon_sym_GT, ACTIONS(2428), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(2566), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2410), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(2426), 4, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(2450), 10, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_CARET_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, [34803] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1501), 9, anon_sym_LBRACK, anon_sym_POUND, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(1503), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_pub, sym_identifier, sym_self, [34848] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1379), 9, anon_sym_LBRACK, anon_sym_POUND, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(1381), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_pub, sym_identifier, sym_self, [34893] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1583), 9, anon_sym_LBRACK, anon_sym_POUND, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(1585), 27, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, anon_sym_pub, sym_identifier, sym_self, [34938] = 21, ACTIONS(2811), 1, anon_sym_SEMI, ACTIONS(2813), 1, anon_sym_const, ACTIONS(2815), 1, anon_sym_default, ACTIONS(2817), 1, anon_sym_mod, ACTIONS(2819), 1, anon_sym_enum, ACTIONS(2821), 1, anon_sym_fn, ACTIONS(2823), 1, anon_sym_impl, ACTIONS(2825), 1, anon_sym_let, ACTIONS(2827), 1, anon_sym_pub, ACTIONS(2829), 1, anon_sym_struct, ACTIONS(2831), 1, anon_sym_trait, ACTIONS(2833), 1, anon_sym_type, ACTIONS(2835), 1, anon_sym_use, ACTIONS(2837), 1, anon_sym_POUND, ACTIONS(2839), 1, anon_sym_RBRACE, ACTIONS(2841), 1, anon_sym_asm, STATE(1257), 1, sym_visibility_modifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2193), 1, sym_function_modifiers, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(947), 16, sym_empty_statement, sym_attribute_item, sym_inner_attribute_item, sym_mod_item, sym_struct_item, sym_enum_item, sym_const_item, sym_asm_item, sym_type_item, sym_function_item, sym_function_signature_item, sym_impl_item, sym_trait_item, sym_let_declaration, sym_use_declaration, aux_sym_declaration_list_repeat1, [35018] = 21, ACTIONS(2843), 1, anon_sym_SEMI, ACTIONS(2846), 1, anon_sym_const, ACTIONS(2849), 1, anon_sym_default, ACTIONS(2852), 1, anon_sym_mod, ACTIONS(2855), 1, anon_sym_enum, ACTIONS(2858), 1, anon_sym_fn, ACTIONS(2861), 1, anon_sym_impl, ACTIONS(2864), 1, anon_sym_let, ACTIONS(2867), 1, anon_sym_pub, ACTIONS(2870), 1, anon_sym_struct, ACTIONS(2873), 1, anon_sym_trait, ACTIONS(2876), 1, anon_sym_type, ACTIONS(2879), 1, anon_sym_use, ACTIONS(2882), 1, anon_sym_POUND, ACTIONS(2885), 1, anon_sym_RBRACE, ACTIONS(2887), 1, anon_sym_asm, STATE(1257), 1, sym_visibility_modifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2193), 1, sym_function_modifiers, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(946), 16, sym_empty_statement, sym_attribute_item, sym_inner_attribute_item, sym_mod_item, sym_struct_item, sym_enum_item, sym_const_item, sym_asm_item, sym_type_item, sym_function_item, sym_function_signature_item, sym_impl_item, sym_trait_item, sym_let_declaration, sym_use_declaration, aux_sym_declaration_list_repeat1, [35098] = 21, ACTIONS(2811), 1, anon_sym_SEMI, ACTIONS(2813), 1, anon_sym_const, ACTIONS(2815), 1, anon_sym_default, ACTIONS(2817), 1, anon_sym_mod, ACTIONS(2819), 1, anon_sym_enum, ACTIONS(2821), 1, anon_sym_fn, ACTIONS(2823), 1, anon_sym_impl, ACTIONS(2825), 1, anon_sym_let, ACTIONS(2827), 1, anon_sym_pub, ACTIONS(2829), 1, anon_sym_struct, ACTIONS(2831), 1, anon_sym_trait, ACTIONS(2833), 1, anon_sym_type, ACTIONS(2835), 1, anon_sym_use, ACTIONS(2837), 1, anon_sym_POUND, ACTIONS(2841), 1, anon_sym_asm, ACTIONS(2890), 1, anon_sym_RBRACE, STATE(1257), 1, sym_visibility_modifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2193), 1, sym_function_modifiers, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(946), 16, sym_empty_statement, sym_attribute_item, sym_inner_attribute_item, sym_mod_item, sym_struct_item, sym_enum_item, sym_const_item, sym_asm_item, sym_type_item, sym_function_item, sym_function_signature_item, sym_impl_item, sym_trait_item, sym_let_declaration, sym_use_declaration, aux_sym_declaration_list_repeat1, [35178] = 21, ACTIONS(2811), 1, anon_sym_SEMI, ACTIONS(2813), 1, anon_sym_const, ACTIONS(2815), 1, anon_sym_default, ACTIONS(2817), 1, anon_sym_mod, ACTIONS(2819), 1, anon_sym_enum, ACTIONS(2821), 1, anon_sym_fn, ACTIONS(2823), 1, anon_sym_impl, ACTIONS(2825), 1, anon_sym_let, ACTIONS(2827), 1, anon_sym_pub, ACTIONS(2829), 1, anon_sym_struct, ACTIONS(2831), 1, anon_sym_trait, ACTIONS(2833), 1, anon_sym_type, ACTIONS(2835), 1, anon_sym_use, ACTIONS(2837), 1, anon_sym_POUND, ACTIONS(2841), 1, anon_sym_asm, ACTIONS(2892), 1, anon_sym_RBRACE, STATE(1257), 1, sym_visibility_modifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2193), 1, sym_function_modifiers, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(946), 16, sym_empty_statement, sym_attribute_item, sym_inner_attribute_item, sym_mod_item, sym_struct_item, sym_enum_item, sym_const_item, sym_asm_item, sym_type_item, sym_function_item, sym_function_signature_item, sym_impl_item, sym_trait_item, sym_let_declaration, sym_use_declaration, aux_sym_declaration_list_repeat1, [35258] = 21, ACTIONS(2811), 1, anon_sym_SEMI, ACTIONS(2813), 1, anon_sym_const, ACTIONS(2815), 1, anon_sym_default, ACTIONS(2817), 1, anon_sym_mod, ACTIONS(2819), 1, anon_sym_enum, ACTIONS(2821), 1, anon_sym_fn, ACTIONS(2823), 1, anon_sym_impl, ACTIONS(2825), 1, anon_sym_let, ACTIONS(2827), 1, anon_sym_pub, ACTIONS(2829), 1, anon_sym_struct, ACTIONS(2831), 1, anon_sym_trait, ACTIONS(2833), 1, anon_sym_type, ACTIONS(2835), 1, anon_sym_use, ACTIONS(2837), 1, anon_sym_POUND, ACTIONS(2841), 1, anon_sym_asm, ACTIONS(2894), 1, anon_sym_RBRACE, STATE(1257), 1, sym_visibility_modifier, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2193), 1, sym_function_modifiers, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(948), 16, sym_empty_statement, sym_attribute_item, sym_inner_attribute_item, sym_mod_item, sym_struct_item, sym_enum_item, sym_const_item, sym_asm_item, sym_type_item, sym_function_item, sym_function_signature_item, sym_impl_item, sym_trait_item, sym_let_declaration, sym_use_declaration, aux_sym_declaration_list_repeat1, [35338] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2898), 8, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2896), 26, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, sym_identifier, sym_self, [35381] = 4, ACTIONS(2904), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2902), 7, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2900), 26, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, sym_identifier, sym_self, [35426] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2908), 8, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2906), 26, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, sym_identifier, sym_self, [35469] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2912), 8, anon_sym_LBRACK, anon_sym_BANG, anon_sym_LPAREN, anon_sym_LT, anon_sym_COLON_COLON, anon_sym_STAR, anon_sym_AMP, sym_metavariable, ACTIONS(2910), 26, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, anon_sym_str, anon_sym_const, anon_sym_default, anon_sym_fn, anon_sym_impl, sym_identifier, sym_self, [35512] = 15, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2914), 1, sym_identifier, ACTIONS(2916), 1, anon_sym_RBRACK, ACTIONS(2918), 1, anon_sym_default, ACTIONS(2920), 1, sym_self, ACTIONS(2922), 1, sym_metavariable, STATE(1316), 1, sym_primitive_type, STATE(1320), 1, sym_scoped_identifier, STATE(1659), 1, sym_attribute, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [35577] = 15, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2914), 1, sym_identifier, ACTIONS(2918), 1, anon_sym_default, ACTIONS(2920), 1, sym_self, ACTIONS(2922), 1, sym_metavariable, ACTIONS(2924), 1, anon_sym_RBRACK, STATE(1316), 1, sym_primitive_type, STATE(1320), 1, sym_scoped_identifier, STATE(1654), 1, sym_attribute, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [35642] = 15, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2914), 1, sym_identifier, ACTIONS(2918), 1, anon_sym_default, ACTIONS(2920), 1, sym_self, ACTIONS(2922), 1, sym_metavariable, ACTIONS(2926), 1, anon_sym_RBRACK, STATE(1316), 1, sym_primitive_type, STATE(1320), 1, sym_scoped_identifier, STATE(1722), 1, sym_attribute, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [35707] = 15, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2914), 1, sym_identifier, ACTIONS(2918), 1, anon_sym_default, ACTIONS(2920), 1, sym_self, ACTIONS(2922), 1, sym_metavariable, ACTIONS(2928), 1, anon_sym_RBRACK, STATE(1316), 1, sym_primitive_type, STATE(1320), 1, sym_scoped_identifier, STATE(1679), 1, sym_attribute, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [35772] = 15, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2914), 1, sym_identifier, ACTIONS(2918), 1, anon_sym_default, ACTIONS(2920), 1, sym_self, ACTIONS(2922), 1, sym_metavariable, ACTIONS(2930), 1, anon_sym_RBRACK, STATE(1316), 1, sym_primitive_type, STATE(1320), 1, sym_scoped_identifier, STATE(1688), 1, sym_attribute, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [35837] = 14, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2914), 1, sym_identifier, ACTIONS(2918), 1, anon_sym_default, ACTIONS(2920), 1, sym_self, ACTIONS(2922), 1, sym_metavariable, STATE(1316), 1, sym_primitive_type, STATE(1320), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2062), 1, sym_attribute, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [35899] = 14, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2914), 1, sym_identifier, ACTIONS(2918), 1, anon_sym_default, ACTIONS(2920), 1, sym_self, ACTIONS(2922), 1, sym_metavariable, STATE(1316), 1, sym_primitive_type, STATE(1320), 1, sym_scoped_identifier, STATE(1955), 1, sym_attribute, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [35961] = 14, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2914), 1, sym_identifier, ACTIONS(2918), 1, anon_sym_default, ACTIONS(2920), 1, sym_self, ACTIONS(2922), 1, sym_metavariable, STATE(1316), 1, sym_primitive_type, STATE(1320), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2054), 1, sym_attribute, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [36023] = 13, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2932), 1, sym_identifier, ACTIONS(2934), 1, anon_sym_default, ACTIONS(2936), 1, sym_self, ACTIONS(2938), 1, sym_metavariable, STATE(1813), 1, sym_primitive_type, STATE(1820), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [36082] = 13, ACTIONS(13), 1, anon_sym_str, ACTIONS(75), 1, anon_sym_LT, ACTIONS(2522), 1, anon_sym_COLON_COLON, ACTIONS(2940), 1, sym_identifier, ACTIONS(2942), 1, anon_sym_default, ACTIONS(2944), 1, sym_self, ACTIONS(2946), 1, sym_metavariable, STATE(1809), 1, sym_primitive_type, STATE(1812), 1, sym_scoped_identifier, STATE(2000), 1, sym_bracketed_type, STATE(2179), 1, sym_generic_type_with_turbofish, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(11), 19, anon_sym_u8, anon_sym_i8, anon_sym_u16, anon_sym_i16, anon_sym_u32, anon_sym_i32, anon_sym_u64, anon_sym_i64, anon_sym_u128, anon_sym_i128, anon_sym_u256, anon_sym_i256, anon_sym_b256, anon_sym_isize, anon_sym_usize, anon_sym_f32, anon_sym_f64, anon_sym_bool, anon_sym_char, [36141] = 3, ACTIONS(445), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(443), 26, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_if, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_asm, anon_sym_GT, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [36177] = 3, ACTIONS(429), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(427), 26, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_if, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_asm, anon_sym_GT, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [36213] = 3, ACTIONS(437), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(435), 26, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_if, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_asm, anon_sym_GT, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [36249] = 10, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2952), 1, anon_sym_LBRACE, ACTIONS(2954), 1, anon_sym_LPAREN, ACTIONS(2956), 1, anon_sym_COLON_COLON, ACTIONS(2960), 1, anon_sym_AT, STATE(980), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2950), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2948), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [36292] = 4, ACTIONS(2034), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2032), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2030), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_LT2, anon_sym_PIPE, [36322] = 4, ACTIONS(2028), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2026), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2024), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_LT2, anon_sym_PIPE, [36352] = 4, ACTIONS(2022), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2020), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2018), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_LT2, anon_sym_PIPE, [36382] = 4, ACTIONS(2962), 1, anon_sym_LBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1850), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(1852), 16, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_as, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [36412] = 4, ACTIONS(2014), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2012), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2010), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_LT2, anon_sym_PIPE, [36442] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1864), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(1866), 16, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_as, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [36469] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2018), 2, anon_sym_LBRACE, anon_sym_LT2, ACTIONS(2154), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2022), 14, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [36498] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1850), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(1852), 16, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_as, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [36525] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2032), 5, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2030), 13, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_LT2, anon_sym_PIPE, [36552] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2010), 2, anon_sym_LBRACE, anon_sym_LT2, ACTIONS(2164), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2014), 14, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [36581] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2030), 2, anon_sym_LBRACE, anon_sym_LT2, ACTIONS(2084), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2034), 14, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [36610] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2024), 2, anon_sym_LBRACE, anon_sym_LT2, ACTIONS(2094), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2028), 14, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_else, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [36639] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2132), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2130), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_COLON_COLON, anon_sym_PIPE, [36665] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2078), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2076), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_COLON_COLON, anon_sym_PIPE, [36691] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2128), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2126), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_COLON_COLON, anon_sym_PIPE, [36717] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2136), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2134), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_COLON_COLON, anon_sym_PIPE, [36743] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2052), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2050), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_COLON_COLON, anon_sym_PIPE, [36769] = 8, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1976), 4, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(1974), 8, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, [36805] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2970), 1, anon_sym_COLON_COLON, STATE(982), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2968), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2972), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2966), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [36839] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1501), 3, anon_sym_SEMI, anon_sym_POUND, anon_sym_RBRACE, ACTIONS(1503), 14, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_asm, sym_identifier, [36865] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1379), 3, anon_sym_SEMI, anon_sym_POUND, anon_sym_RBRACE, ACTIONS(1381), 14, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_asm, sym_identifier, [36891] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1583), 3, anon_sym_SEMI, anon_sym_POUND, anon_sym_RBRACE, ACTIONS(1585), 14, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_asm, sym_identifier, [36917] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2070), 6, anon_sym_as, anon_sym_for, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2068), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_COLON_COLON, anon_sym_PIPE, [36943] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2164), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2014), 15, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_if, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_else, anon_sym_COLON_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [36969] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2154), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2022), 15, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_if, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_else, anon_sym_COLON_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [36995] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2094), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2028), 15, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_as, anon_sym_if, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_else, anon_sym_COLON_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [37021] = 8, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1988), 4, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(1986), 8, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, [37057] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1039), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37080] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1459), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37103] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1471), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37126] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1475), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37149] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1479), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37172] = 4, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1998), 5, anon_sym_as, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(1996), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [37199] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(983), 1, sym_type_arguments, STATE(1208), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1998), 3, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(1996), 9, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, [37232] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(915), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37255] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(939), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37278] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(943), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37301] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(947), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37324] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1115), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37347] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1119), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37370] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2170), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2168), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [37395] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1327), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37418] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1331), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37441] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1335), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37464] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1339), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37487] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1343), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37510] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1347), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37533] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1351), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37556] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1355), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37579] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1359), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37602] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1363), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37625] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1367), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37648] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1371), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37671] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1375), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37694] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1383), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37717] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1391), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37740] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1395), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37763] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1399), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37786] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1403), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37809] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1407), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37832] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1411), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37855] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1443), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37878] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1451), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37901] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1455), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37924] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1463), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37947] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1467), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [37970] = 4, ACTIONS(2976), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 5, anon_sym_as, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(1992), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [37997] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1485), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38020] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1489), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38043] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1493), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38066] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1497), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38089] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1505), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38112] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1511), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38135] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1515), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38158] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1519), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38181] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1523), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38204] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1527), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38227] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1531), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38250] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1535), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38273] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1543), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38296] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1551), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38319] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1555), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38342] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1559), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38365] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1563), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38388] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1567), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38411] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1571), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38434] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1575), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38457] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1579), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38480] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(867), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38503] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(875), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38526] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(879), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38549] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(883), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38572] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(887), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38595] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(891), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38618] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(895), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38641] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(899), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38664] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(903), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38687] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(907), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38710] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1587), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38733] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(911), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38756] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(935), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38779] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(951), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38802] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(955), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38825] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(959), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38848] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(963), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38871] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(967), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38894] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(971), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38917] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(975), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38940] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(979), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38963] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(983), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [38986] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(987), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39009] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(991), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39032] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(995), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39055] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(999), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39078] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1003), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39101] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1011), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39124] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1023), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39147] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1027), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39170] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1031), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39193] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1035), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39216] = 4, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 5, anon_sym_as, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(1992), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [39243] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1043), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39266] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1047), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39289] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2082), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2080), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [39314] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1055), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39337] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1059), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39360] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1067), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39383] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1071), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39406] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1075), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39429] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1079), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39452] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1083), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39475] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1087), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39498] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(863), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39521] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1095), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39544] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1099), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39567] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1103), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39590] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1107), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39613] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1111), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39636] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1123), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39659] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1127), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39682] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1131), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39705] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1135), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39728] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1139), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39751] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1143), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39774] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1147), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39797] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1151), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39820] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1155), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39843] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1159), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39866] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1163), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39889] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1167), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39912] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1171), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39935] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1175), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39958] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1179), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [39981] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1183), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40004] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1187), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40027] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1191), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40050] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1195), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40073] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1199), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40096] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1203), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40119] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1207), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40142] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1211), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40165] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1219), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40188] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2172), 5, anon_sym_as, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2092), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_COLON_COLON, anon_sym_PIPE, [40213] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1223), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40236] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1227), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40259] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1231), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40282] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1235), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40305] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1239), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40328] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1247), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40351] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1251), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40374] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1255), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40397] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1259), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40420] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1263), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40443] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1267), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40466] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1271), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40489] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1275), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40512] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1279), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40535] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1283), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40558] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1287), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40581] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1291), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40604] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1295), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40627] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1299), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40650] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1303), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40673] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1307), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40696] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1311), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40719] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1315), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40742] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1319), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40765] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1323), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40788] = 4, ACTIONS(2978), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 5, anon_sym_as, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(1992), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [40815] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2174), 5, anon_sym_as, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(2118), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_COLON_COLON, anon_sym_PIPE, [40840] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2048), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2046), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [40865] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(535), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40888] = 4, ACTIONS(2980), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 5, anon_sym_as, anon_sym_where, anon_sym_COLON, anon_sym_else, sym_identifier, ACTIONS(1992), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [40915] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(471), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40938] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1019), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40961] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(457), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [40984] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2066), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2064), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41009] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1215), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [41032] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1243), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [41055] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1091), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [41078] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1387), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [41101] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1415), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [41124] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(983), 1, sym_type_arguments, STATE(1208), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 3, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(1992), 9, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, [41157] = 6, ACTIONS(2954), 1, anon_sym_LPAREN, ACTIONS(2982), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2950), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2948), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [41188] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2074), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2072), 12, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41213] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1419), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [41236] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1051), 16, anon_sym_SEMI, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_impl, anon_sym_let, anon_sym_pub, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, anon_sym_POUND, anon_sym_RBRACE, anon_sym_asm, [41259] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2230), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2228), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41283] = 5, ACTIONS(2970), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2968), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2972), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2966), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [41311] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2278), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2276), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41335] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2192), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(425), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41359] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1994), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(1992), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41383] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1998), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(1996), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41407] = 3, ACTIONS(1834), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1836), 14, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_GT, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [41431] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2286), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2284), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41455] = 3, ACTIONS(1858), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1860), 14, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_GT, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [41479] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2340), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2338), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41503] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2348), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2346), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41527] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2334), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2332), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41551] = 3, ACTIONS(1854), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1856), 14, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_GT, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [41575] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2182), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2180), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41599] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2186), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2184), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41623] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2226), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2224), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41647] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2234), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2232), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41671] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2362), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2360), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41695] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2296), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2294), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41719] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2308), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2306), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41743] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2282), 4, anon_sym_as, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2280), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [41767] = 13, ACTIONS(1986), 1, anon_sym_PLUS, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2948), 1, anon_sym_PIPE, ACTIONS(2950), 1, anon_sym_COLON, ACTIONS(2952), 1, anon_sym_LBRACE, ACTIONS(2960), 1, anon_sym_AT, ACTIONS(2987), 1, anon_sym_LPAREN, ACTIONS(2989), 1, anon_sym_COLON_COLON, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2984), 2, anon_sym_COMMA, anon_sym_RPAREN, [41810] = 3, ACTIONS(2993), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2991), 13, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [41833] = 12, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2948), 1, anon_sym_PIPE, ACTIONS(2950), 1, anon_sym_COLON, ACTIONS(2952), 1, anon_sym_LBRACE, ACTIONS(2960), 1, anon_sym_AT, ACTIONS(2995), 1, anon_sym_LPAREN, ACTIONS(2997), 1, anon_sym_COLON_COLON, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(1986), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [41874] = 3, ACTIONS(3001), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2999), 13, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_DOT_DOT_DOT, anon_sym_in, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, anon_sym_EQ_GT, [41897] = 4, ACTIONS(2950), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2948), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [41922] = 12, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2952), 1, anon_sym_LBRACE, ACTIONS(2960), 1, anon_sym_AT, ACTIONS(2984), 1, anon_sym_RBRACK, ACTIONS(3003), 1, anon_sym_LPAREN, ACTIONS(3005), 1, anon_sym_COLON_COLON, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1986), 2, anon_sym_SEMI, anon_sym_PLUS, ACTIONS(2948), 2, anon_sym_COMMA, anon_sym_PIPE, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, [41963] = 4, ACTIONS(3011), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3009), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(3007), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [41987] = 4, ACTIONS(3017), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3015), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(3013), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42011] = 4, ACTIONS(3019), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3009), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(3007), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42035] = 4, ACTIONS(3021), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3009), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(3007), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42059] = 4, ACTIONS(3011), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3025), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(3023), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42083] = 4, ACTIONS(3021), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3025), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(3023), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42107] = 4, ACTIONS(3027), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2160), 3, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2158), 9, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, [42131] = 4, ACTIONS(3029), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2142), 3, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2140), 9, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, [42155] = 4, ACTIONS(3019), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3025), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(3023), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42179] = 4, ACTIONS(3031), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2106), 3, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2104), 9, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, [42203] = 4, ACTIONS(3033), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2150), 3, anon_sym_where, anon_sym_else, sym_identifier, ACTIONS(2148), 9, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_PLUS, [42227] = 4, ACTIONS(3017), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3037), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(3035), 10, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42251] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2084), 2, anon_sym_EQ, anon_sym_COLON, ACTIONS(2034), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_else, anon_sym_COLON_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42273] = 13, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, ACTIONS(3039), 1, anon_sym_COMMA, ACTIONS(3041), 1, anon_sym_EQ, ACTIONS(3043), 1, anon_sym_COLON, ACTIONS(3045), 1, anon_sym_GT, STATE(980), 1, sym_type_arguments, STATE(1342), 1, sym_parameters, STATE(1790), 1, sym_trait_bounds, STATE(1796), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1986), 2, anon_sym_as, anon_sym_PLUS, [42315] = 3, ACTIONS(3049), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3047), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42336] = 3, ACTIONS(3053), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3051), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42357] = 3, ACTIONS(3057), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3055), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42378] = 3, ACTIONS(3061), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3059), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42399] = 3, ACTIONS(3065), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3063), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42420] = 3, ACTIONS(3069), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3067), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42441] = 3, ACTIONS(3073), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3071), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42462] = 3, ACTIONS(3077), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3075), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42483] = 3, ACTIONS(3081), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3079), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42504] = 3, ACTIONS(3085), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3083), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42525] = 3, ACTIONS(449), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(447), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42546] = 3, ACTIONS(3089), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3087), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42567] = 3, ACTIONS(3093), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3091), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42588] = 3, ACTIONS(3097), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3095), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42609] = 3, ACTIONS(3009), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3007), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42630] = 3, ACTIONS(3101), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3099), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42651] = 3, ACTIONS(3105), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3103), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42672] = 3, ACTIONS(3109), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3107), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42693] = 3, ACTIONS(3113), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3111), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42714] = 3, ACTIONS(3117), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3115), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42735] = 3, ACTIONS(2950), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2948), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42756] = 3, ACTIONS(3121), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3119), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42777] = 3, ACTIONS(3025), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3023), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42798] = 3, ACTIONS(3125), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3123), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42819] = 3, ACTIONS(3129), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3127), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42840] = 3, ACTIONS(3133), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3131), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42861] = 3, ACTIONS(3137), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3135), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42882] = 3, ACTIONS(3141), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3139), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42903] = 3, ACTIONS(3145), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3143), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42924] = 3, ACTIONS(3149), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3147), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42945] = 3, ACTIONS(3153), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3151), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42966] = 3, ACTIONS(3157), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3155), 11, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_if, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_COLON, anon_sym_RPAREN, anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_EQ_GT, [42987] = 8, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2968), 1, anon_sym_COLON, ACTIONS(3159), 1, anon_sym_COLON_COLON, STATE(982), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2972), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, ACTIONS(2966), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [43018] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, STATE(980), 1, sym_type_arguments, STATE(1342), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1986), 6, anon_sym_as, anon_sym_COMMA, anon_sym_EQ, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [43046] = 5, ACTIONS(2094), 1, anon_sym_COLON, ACTIONS(2480), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2028), 4, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, ACTIONS(2024), 5, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_LT2, [43070] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2506), 2, anon_sym_RBRACK, anon_sym_LPAREN, ACTIONS(2010), 4, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_LT2, ACTIONS(2014), 5, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, [43092] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2512), 2, anon_sym_RBRACK, anon_sym_LPAREN, ACTIONS(2018), 4, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_LT2, ACTIONS(2022), 5, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, [43114] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2474), 2, anon_sym_RBRACK, anon_sym_LPAREN, ACTIONS(2030), 4, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_LT2, ACTIONS(2034), 5, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, [43136] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2480), 2, anon_sym_RBRACK, anon_sym_LPAREN, ACTIONS(2024), 4, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_LT2, ACTIONS(2028), 5, anon_sym_COMMA, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, [43158] = 5, ACTIONS(2164), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2010), 3, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_LT2, ACTIONS(2506), 3, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, ACTIONS(2014), 4, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, [43182] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, STATE(980), 1, sym_type_arguments, STATE(1342), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1974), 6, anon_sym_as, anon_sym_COMMA, anon_sym_EQ, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [43210] = 12, ACTIONS(2815), 1, anon_sym_default, ACTIONS(3161), 1, anon_sym_const, ACTIONS(3163), 1, anon_sym_mod, ACTIONS(3165), 1, anon_sym_enum, ACTIONS(3167), 1, anon_sym_fn, ACTIONS(3169), 1, anon_sym_struct, ACTIONS(3171), 1, anon_sym_trait, ACTIONS(3173), 1, anon_sym_type, ACTIONS(3175), 1, anon_sym_use, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2196), 1, sym_function_modifiers, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [43248] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(3177), 1, anon_sym_COLON_COLON, STATE(982), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2972), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, ACTIONS(2966), 3, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_PIPE, [43276] = 5, ACTIONS(2164), 1, anon_sym_COLON, ACTIONS(2506), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2014), 4, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, ACTIONS(2010), 5, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_LT2, [43300] = 5, ACTIONS(2154), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2018), 3, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_LT2, ACTIONS(2512), 3, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, ACTIONS(2022), 4, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, [43324] = 5, ACTIONS(2084), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2030), 3, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_LT2, ACTIONS(2474), 3, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, ACTIONS(2034), 4, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, [43348] = 5, ACTIONS(2094), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2024), 3, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_LT2, ACTIONS(2480), 3, anon_sym_COMMA, anon_sym_LPAREN, anon_sym_RPAREN, ACTIONS(2028), 4, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, [43372] = 3, ACTIONS(3179), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2900), 10, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, sym_identifier, [43392] = 5, ACTIONS(2154), 1, anon_sym_COLON, ACTIONS(2512), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2022), 4, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, ACTIONS(2018), 5, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_LT2, [43416] = 12, ACTIONS(2815), 1, anon_sym_default, ACTIONS(3181), 1, anon_sym_const, ACTIONS(3183), 1, anon_sym_mod, ACTIONS(3185), 1, anon_sym_enum, ACTIONS(3187), 1, anon_sym_fn, ACTIONS(3189), 1, anon_sym_struct, ACTIONS(3191), 1, anon_sym_trait, ACTIONS(3193), 1, anon_sym_type, ACTIONS(3195), 1, anon_sym_use, STATE(1521), 1, aux_sym_function_modifiers_repeat1, STATE(2116), 1, sym_function_modifiers, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [43454] = 5, ACTIONS(2084), 1, anon_sym_COLON, ACTIONS(2474), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2034), 4, anon_sym_COLON_COLON, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, anon_sym_PIPE, ACTIONS(2030), 5, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_LT2, [43478] = 10, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3201), 1, anon_sym_COMMA, ACTIONS(3203), 1, anon_sym_RBRACE, STATE(1764), 1, sym_storage_content, STATE(2170), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1357), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [43511] = 8, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, ACTIONS(3205), 1, anon_sym_for, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1986), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [43540] = 8, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, ACTIONS(3207), 1, anon_sym_for, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1986), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [43569] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2896), 10, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, sym_identifier, [43586] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2906), 10, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, sym_identifier, [43603] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2910), 10, anon_sym_const, anon_sym_default, anon_sym_mod, anon_sym_enum, anon_sym_fn, anon_sym_struct, anon_sym_trait, anon_sym_type, anon_sym_use, sym_identifier, [43620] = 8, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3209), 1, sym_identifier, ACTIONS(3211), 1, anon_sym_COMMA, ACTIONS(3213), 1, anon_sym_RBRACE, ACTIONS(3215), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1555), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1798), 3, sym_shorthand_field_initializer, sym_field_initializer, sym_base_field_initializer, [43649] = 8, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, ACTIONS(3217), 1, anon_sym_for, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1986), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [43678] = 6, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(983), 1, sym_type_arguments, STATE(1343), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1996), 6, anon_sym_as, anon_sym_COMMA, anon_sym_EQ, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [43703] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3219), 1, anon_sym_LBRACE, STATE(983), 1, sym_type_arguments, STATE(1208), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 5, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [43730] = 8, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2966), 1, anon_sym_PIPE, ACTIONS(2968), 1, anon_sym_COLON, ACTIONS(3221), 1, anon_sym_COLON_COLON, STATE(982), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2972), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [43759] = 6, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(983), 1, sym_type_arguments, STATE(1343), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 6, anon_sym_as, anon_sym_COMMA, anon_sym_EQ, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [43784] = 8, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, ACTIONS(3223), 1, anon_sym_for, STATE(980), 1, sym_type_arguments, STATE(1212), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1986), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [43813] = 10, ACTIONS(3225), 1, anon_sym_SEMI, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3229), 1, anon_sym_LBRACE, ACTIONS(3231), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, STATE(361), 1, sym_field_declaration_list, STATE(1330), 1, sym_type_parameters, STATE(1800), 1, sym_ordered_field_declaration_list, STATE(1925), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [43845] = 10, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3231), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(3235), 1, anon_sym_SEMI, ACTIONS(3237), 1, anon_sym_LBRACE, STATE(1026), 1, sym_field_declaration_list, STATE(1349), 1, sym_type_parameters, STATE(1568), 1, sym_ordered_field_declaration_list, STATE(1824), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [43877] = 8, ACTIONS(801), 1, anon_sym_DOT_DOT, ACTIONS(3239), 1, sym_identifier, ACTIONS(3241), 1, anon_sym_COMMA, ACTIONS(3243), 1, anon_sym_RBRACE, ACTIONS(3247), 1, sym_mutable_specifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3245), 2, anon_sym_ref, anon_sym_deref, STATE(1755), 2, sym_field_pattern, sym_remaining_field_pattern, [43905] = 10, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3231), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(3237), 1, anon_sym_LBRACE, ACTIONS(3249), 1, anon_sym_SEMI, STATE(997), 1, sym_field_declaration_list, STATE(1344), 1, sym_type_parameters, STATE(1714), 1, sym_ordered_field_declaration_list, STATE(1961), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [43937] = 10, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3229), 1, anon_sym_LBRACE, ACTIONS(3231), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(3251), 1, anon_sym_SEMI, STATE(377), 1, sym_field_declaration_list, STATE(1345), 1, sym_type_parameters, STATE(1733), 1, sym_ordered_field_declaration_list, STATE(1924), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [43969] = 9, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3253), 1, anon_sym_RBRACE, STATE(1973), 1, sym_storage_content, STATE(2170), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1357), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [43999] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3255), 1, anon_sym_for, STATE(983), 1, sym_type_arguments, STATE(1208), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [44025] = 8, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(2964), 1, anon_sym_COLON_COLON, ACTIONS(3257), 1, anon_sym_EQ, STATE(1342), 1, sym_parameters, STATE(1440), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1986), 3, anon_sym_COMMA, anon_sym_PLUS, anon_sym_GT, [44053] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3259), 1, anon_sym_for, STATE(983), 1, sym_type_arguments, STATE(1208), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [44079] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3261), 1, anon_sym_for, STATE(983), 1, sym_type_arguments, STATE(1208), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [44105] = 7, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3209), 1, sym_identifier, ACTIONS(3215), 1, anon_sym_DOT_DOT, ACTIONS(3263), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1555), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1806), 3, sym_shorthand_field_initializer, sym_field_initializer, sym_base_field_initializer, [44131] = 8, ACTIONS(801), 1, anon_sym_DOT_DOT, ACTIONS(3239), 1, sym_identifier, ACTIONS(3247), 1, sym_mutable_specifier, ACTIONS(3265), 1, anon_sym_COMMA, ACTIONS(3267), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3245), 2, anon_sym_ref, anon_sym_deref, STATE(1701), 2, sym_field_pattern, sym_remaining_field_pattern, [44159] = 9, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3269), 1, anon_sym_COMMA, ACTIONS(3271), 1, anon_sym_RBRACE, STATE(1605), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1353), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44189] = 9, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, ACTIONS(3275), 1, anon_sym_COMMA, ACTIONS(3277), 1, anon_sym_RBRACE, STATE(1652), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1341), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44219] = 9, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3279), 1, anon_sym_RBRACE, STATE(1973), 1, sym_storage_content, STATE(2170), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1357), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44249] = 9, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, ACTIONS(3281), 1, anon_sym_COMMA, ACTIONS(3283), 1, anon_sym_RBRACE, STATE(1753), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1355), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44279] = 7, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3209), 1, sym_identifier, ACTIONS(3215), 1, anon_sym_DOT_DOT, ACTIONS(3285), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1555), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1806), 3, sym_shorthand_field_initializer, sym_field_initializer, sym_base_field_initializer, [44305] = 9, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3287), 1, anon_sym_COMMA, ACTIONS(3289), 1, anon_sym_RBRACE, STATE(1803), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1356), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44335] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3291), 1, anon_sym_for, STATE(983), 1, sym_type_arguments, STATE(1208), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [44361] = 7, ACTIONS(801), 1, anon_sym_DOT_DOT, ACTIONS(3239), 1, sym_identifier, ACTIONS(3247), 1, sym_mutable_specifier, ACTIONS(3293), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3245), 2, anon_sym_ref, anon_sym_deref, STATE(1898), 2, sym_field_pattern, sym_remaining_field_pattern, [44386] = 9, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3297), 1, anon_sym_COLON, ACTIONS(3299), 1, anon_sym_LT, STATE(1027), 1, sym_declaration_list, STATE(1397), 1, sym_type_parameters, STATE(1552), 1, sym_trait_bounds, STATE(1826), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [44415] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3301), 1, anon_sym_RBRACE, STATE(1940), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1350), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44442] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3303), 1, anon_sym_RBRACE, STATE(1940), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1350), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44469] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, STATE(1973), 1, sym_storage_content, STATE(2170), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1357), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44496] = 9, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3297), 1, anon_sym_COLON, ACTIONS(3299), 1, anon_sym_LT, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(378), 1, sym_declaration_list, STATE(1393), 1, sym_type_parameters, STATE(1482), 1, sym_trait_bounds, STATE(1936), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [44525] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, ACTIONS(3307), 1, anon_sym_RBRACE, STATE(1868), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1337), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44552] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, ACTIONS(3309), 1, anon_sym_RBRACE, STATE(1868), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1337), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44579] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, ACTIONS(3311), 1, anon_sym_RBRACE, STATE(1868), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1337), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44606] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3313), 1, anon_sym_RBRACE, STATE(1940), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1350), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44633] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, ACTIONS(3315), 1, anon_sym_RBRACE, STATE(1868), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1337), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44660] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, ACTIONS(3317), 1, anon_sym_RBRACE, STATE(1868), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1337), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44687] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3319), 1, anon_sym_RBRACE, STATE(1940), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1350), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44714] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3321), 1, anon_sym_RBRACE, STATE(1940), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1350), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44741] = 6, ACTIONS(3177), 1, anon_sym_COLON_COLON, ACTIONS(3323), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 2, anon_sym_SEMI, anon_sym_PLUS, ACTIONS(2966), 2, anon_sym_COMMA, anon_sym_PIPE, ACTIONS(2972), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, [44764] = 7, ACTIONS(801), 1, anon_sym_DOT_DOT, ACTIONS(3239), 1, sym_identifier, ACTIONS(3247), 1, sym_mutable_specifier, ACTIONS(3326), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3245), 2, anon_sym_ref, anon_sym_deref, STATE(1898), 2, sym_field_pattern, sym_remaining_field_pattern, [44789] = 7, ACTIONS(801), 1, anon_sym_DOT_DOT, ACTIONS(3239), 1, sym_identifier, ACTIONS(3247), 1, sym_mutable_specifier, ACTIONS(3328), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3245), 2, anon_sym_ref, anon_sym_deref, STATE(1898), 2, sym_field_pattern, sym_remaining_field_pattern, [44814] = 8, ACTIONS(3017), 1, anon_sym_COLON_COLON, ACTIONS(3330), 1, anon_sym_LBRACK, ACTIONS(3334), 1, anon_sym_EQ, ACTIONS(3336), 1, anon_sym_LBRACE, ACTIONS(3338), 1, anon_sym_LPAREN, STATE(1870), 1, sym_delim_token_tree, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3332), 2, anon_sym_RBRACK, anon_sym_COMMA, [44841] = 8, ACTIONS(3330), 1, anon_sym_LBRACK, ACTIONS(3336), 1, anon_sym_LBRACE, ACTIONS(3338), 1, anon_sym_LPAREN, ACTIONS(3342), 1, anon_sym_EQ, ACTIONS(3344), 1, anon_sym_COLON_COLON, STATE(1873), 1, sym_delim_token_tree, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3340), 2, anon_sym_RBRACK, anon_sym_COMMA, [44868] = 8, ACTIONS(3330), 1, anon_sym_LBRACK, ACTIONS(3336), 1, anon_sym_LBRACE, ACTIONS(3338), 1, anon_sym_LPAREN, ACTIONS(3342), 1, anon_sym_EQ, ACTIONS(3346), 1, anon_sym_COLON_COLON, STATE(1873), 1, sym_delim_token_tree, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3340), 2, anon_sym_RBRACK, anon_sym_COMMA, [44895] = 7, ACTIONS(801), 1, anon_sym_DOT_DOT, ACTIONS(3239), 1, sym_identifier, ACTIONS(3247), 1, sym_mutable_specifier, ACTIONS(3348), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3245), 2, anon_sym_ref, anon_sym_deref, STATE(1898), 2, sym_field_pattern, sym_remaining_field_pattern, [44920] = 8, ACTIONS(3330), 1, anon_sym_LBRACK, ACTIONS(3336), 1, anon_sym_LBRACE, ACTIONS(3338), 1, anon_sym_LPAREN, ACTIONS(3342), 1, anon_sym_EQ, ACTIONS(3350), 1, anon_sym_COLON_COLON, STATE(1873), 1, sym_delim_token_tree, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3340), 2, anon_sym_RBRACK, anon_sym_COMMA, [44947] = 7, ACTIONS(1992), 1, anon_sym_PLUS, ACTIONS(2966), 1, anon_sym_PIPE, ACTIONS(2968), 1, anon_sym_COLON, ACTIONS(3159), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2972), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3323), 2, anon_sym_COMMA, anon_sym_RPAREN, [44972] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3352), 1, anon_sym_RBRACE, STATE(1940), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1350), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [44999] = 9, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3297), 1, anon_sym_COLON, ACTIONS(3299), 1, anon_sym_LT, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(362), 1, sym_declaration_list, STATE(1361), 1, sym_type_parameters, STATE(1531), 1, sym_trait_bounds, STATE(1932), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45028] = 6, ACTIONS(2950), 1, anon_sym_COLON, ACTIONS(2954), 1, anon_sym_LPAREN, ACTIONS(3354), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2948), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [45051] = 6, ACTIONS(2966), 1, anon_sym_PIPE, ACTIONS(2968), 1, anon_sym_COLON, ACTIONS(3221), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2972), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(1992), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [45074] = 6, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3209), 1, sym_identifier, ACTIONS(3215), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1555), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, STATE(1806), 3, sym_shorthand_field_initializer, sym_field_initializer, sym_base_field_initializer, [45097] = 9, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3297), 1, anon_sym_COLON, ACTIONS(3299), 1, anon_sym_LT, STATE(998), 1, sym_declaration_list, STATE(1387), 1, sym_type_parameters, STATE(1527), 1, sym_trait_bounds, STATE(1963), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45126] = 8, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, ACTIONS(3356), 1, anon_sym_RBRACE, STATE(1868), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1337), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45153] = 6, ACTIONS(801), 1, anon_sym_DOT_DOT, ACTIONS(3239), 1, sym_identifier, ACTIONS(3247), 1, sym_mutable_specifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3245), 2, anon_sym_ref, anon_sym_deref, STATE(1898), 2, sym_field_pattern, sym_remaining_field_pattern, [45175] = 8, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3229), 1, anon_sym_LBRACE, ACTIONS(3231), 1, anon_sym_LPAREN, ACTIONS(3358), 1, anon_sym_SEMI, STATE(236), 1, sym_field_declaration_list, STATE(1601), 1, sym_ordered_field_declaration_list, STATE(1832), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45201] = 7, ACTIONS(3360), 1, sym_identifier, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3364), 1, anon_sym_GT, ACTIONS(3366), 1, sym_metavariable, STATE(1603), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1879), 2, sym_const_parameter, sym_optional_type_parameter, [45225] = 7, ACTIONS(3360), 1, sym_identifier, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3366), 1, sym_metavariable, ACTIONS(3368), 1, anon_sym_GT, STATE(1603), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1879), 2, sym_const_parameter, sym_optional_type_parameter, [45249] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3370), 7, anon_sym_SEMI, anon_sym_where, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_GT, [45263] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3372), 7, anon_sym_SEMI, anon_sym_where, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_GT, [45277] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3372), 7, anon_sym_SEMI, anon_sym_where, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_GT, [45291] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3372), 7, anon_sym_SEMI, anon_sym_where, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_GT, [45305] = 7, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, STATE(1821), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1469), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45329] = 7, ACTIONS(3360), 1, sym_identifier, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3366), 1, sym_metavariable, ACTIONS(3374), 1, anon_sym_GT, STATE(1603), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1879), 2, sym_const_parameter, sym_optional_type_parameter, [45353] = 7, ACTIONS(3360), 1, sym_identifier, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3366), 1, sym_metavariable, ACTIONS(3376), 1, anon_sym_GT, STATE(1603), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1879), 2, sym_const_parameter, sym_optional_type_parameter, [45377] = 3, ACTIONS(3378), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2140), 6, anon_sym_as, anon_sym_COMMA, anon_sym_EQ, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [45393] = 7, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, STATE(1683), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1469), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45417] = 3, ACTIONS(3380), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2148), 6, anon_sym_as, anon_sym_COMMA, anon_sym_EQ, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [45433] = 3, ACTIONS(3382), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2158), 6, anon_sym_as, anon_sym_COMMA, anon_sym_EQ, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [45449] = 8, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3231), 1, anon_sym_LPAREN, ACTIONS(3237), 1, anon_sym_LBRACE, ACTIONS(3384), 1, anon_sym_SEMI, STATE(1018), 1, sym_field_declaration_list, STATE(1691), 1, sym_ordered_field_declaration_list, STATE(1814), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45475] = 8, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3229), 1, anon_sym_LBRACE, ACTIONS(3231), 1, anon_sym_LPAREN, ACTIONS(3386), 1, anon_sym_SEMI, STATE(351), 1, sym_field_declaration_list, STATE(1651), 1, sym_ordered_field_declaration_list, STATE(1840), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45501] = 7, ACTIONS(3360), 1, sym_identifier, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3366), 1, sym_metavariable, ACTIONS(3388), 1, anon_sym_GT, STATE(1603), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1879), 2, sym_const_parameter, sym_optional_type_parameter, [45525] = 7, ACTIONS(3360), 1, sym_identifier, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3366), 1, sym_metavariable, ACTIONS(3390), 1, anon_sym_GT, STATE(1603), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1879), 2, sym_const_parameter, sym_optional_type_parameter, [45549] = 3, ACTIONS(3392), 1, anon_sym_DASH_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2104), 6, anon_sym_as, anon_sym_COMMA, anon_sym_EQ, anon_sym_PLUS, anon_sym_GT, anon_sym_PIPE, [45565] = 8, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3231), 1, anon_sym_LPAREN, ACTIONS(3237), 1, anon_sym_LBRACE, ACTIONS(3394), 1, anon_sym_SEMI, STATE(1064), 1, sym_field_declaration_list, STATE(1610), 1, sym_ordered_field_declaration_list, STATE(1859), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45591] = 7, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, STATE(1857), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1469), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45615] = 7, ACTIONS(3360), 1, sym_identifier, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3366), 1, sym_metavariable, ACTIONS(3396), 1, anon_sym_GT, STATE(1603), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1879), 2, sym_const_parameter, sym_optional_type_parameter, [45639] = 7, ACTIONS(3360), 1, sym_identifier, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3366), 1, sym_metavariable, ACTIONS(3398), 1, anon_sym_GT, STATE(1603), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1879), 2, sym_const_parameter, sym_optional_type_parameter, [45663] = 7, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, STATE(1649), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1469), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45687] = 7, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, STATE(1868), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1337), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45711] = 7, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3273), 1, sym_identifier, STATE(1575), 1, sym_enum_variant, STATE(2002), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1469), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45735] = 7, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, STATE(1600), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1469), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45759] = 7, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, STATE(2155), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1469), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45783] = 7, ACTIONS(49), 1, anon_sym_pub, ACTIONS(3197), 1, sym_identifier, ACTIONS(3199), 1, anon_sym_POUND, STATE(1940), 1, sym_field_declaration, STATE(2177), 1, sym_visibility_modifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1350), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [45807] = 5, ACTIONS(2954), 1, anon_sym_LPAREN, ACTIONS(3400), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(2948), 3, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_PIPE, [45827] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3402), 7, anon_sym_SEMI, anon_sym_where, anon_sym_COMMA, anon_sym_EQ, anon_sym_LBRACE, anon_sym_PLUS, anon_sym_GT, [45841] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3297), 1, anon_sym_COLON, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(238), 1, sym_declaration_list, STATE(1483), 1, sym_trait_bounds, STATE(1835), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45864] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(3404), 1, anon_sym_SEMI, ACTIONS(3406), 1, anon_sym_PLUS, STATE(343), 1, sym_declaration_list, STATE(1709), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45887] = 4, ACTIONS(3410), 1, anon_sym_PLUS, STATE(1437), 1, aux_sym_trait_bounds_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3408), 4, anon_sym_SEMI, anon_sym_where, anon_sym_COMMA, anon_sym_LBRACE, [45904] = 4, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3259), 1, anon_sym_for, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [45921] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3412), 1, anon_sym_SEMI, ACTIONS(3414), 1, anon_sym_LBRACE, STATE(331), 1, sym_block, STATE(1594), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45944] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3416), 1, anon_sym_SEMI, ACTIONS(3418), 1, anon_sym_DASH_GT, STATE(286), 1, sym_block, STATE(1712), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [45967] = 5, ACTIONS(3422), 1, anon_sym_COLON, ACTIONS(3424), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3420), 2, anon_sym_COMMA, anon_sym_RPAREN, [45986] = 4, ACTIONS(3426), 1, anon_sym_PLUS, STATE(1368), 1, aux_sym_trait_bounds_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3372), 4, anon_sym_SEMI, anon_sym_where, anon_sym_COMMA, anon_sym_LBRACE, [46003] = 4, ACTIONS(3424), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(1992), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [46020] = 6, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3429), 1, sym_identifier, ACTIONS(3431), 1, sym_metavariable, STATE(1517), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1716), 2, sym_const_parameter, sym_optional_type_parameter, [46041] = 5, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(3433), 1, anon_sym_COLON_COLON, STATE(729), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [46060] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2168), 2, anon_sym_DASH_GT, anon_sym_PLUS, ACTIONS(3091), 2, anon_sym_COLON, anon_sym_PIPE, ACTIONS(3435), 2, anon_sym_COMMA, anon_sym_RPAREN, [46077] = 4, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2046), 2, anon_sym_DASH_GT, anon_sym_PLUS, ACTIONS(3119), 2, anon_sym_COLON, anon_sym_PIPE, ACTIONS(3438), 2, anon_sym_COMMA, anon_sym_RPAREN, [46094] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3441), 1, anon_sym_SEMI, STATE(255), 1, sym_declaration_list, STATE(1728), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46117] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3091), 2, anon_sym_COLON, anon_sym_PIPE, ACTIONS(2168), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_PLUS, [46132] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3443), 1, anon_sym_SEMI, STATE(292), 1, sym_block, STATE(1741), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46155] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3445), 1, anon_sym_SEMI, STATE(257), 1, sym_declaration_list, STATE(1743), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46178] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(3447), 1, anon_sym_LBRACE, STATE(1166), 1, sym_enum_variant_list, STATE(1480), 1, sym_type_parameters, STATE(1942), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46201] = 5, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(2100), 1, anon_sym_COLON_COLON, STATE(654), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [46220] = 4, ACTIONS(3435), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3091), 2, anon_sym_COMMA, anon_sym_PIPE, ACTIONS(2168), 3, anon_sym_SEMI, anon_sym_DASH_GT, anon_sym_PLUS, [46237] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3449), 1, anon_sym_SEMI, STATE(1169), 1, sym_declaration_list, STATE(1705), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46260] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3451), 1, anon_sym_SEMI, STATE(388), 1, sym_declaration_list, STATE(1566), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46283] = 6, ACTIONS(3360), 1, sym_identifier, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3366), 1, sym_metavariable, STATE(1603), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1879), 2, sym_const_parameter, sym_optional_type_parameter, [46304] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3453), 1, anon_sym_SEMI, ACTIONS(3455), 1, anon_sym_DASH_GT, STATE(1007), 1, sym_block, STATE(1771), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46327] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3457), 1, anon_sym_SEMI, STATE(1010), 1, sym_declaration_list, STATE(1795), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46350] = 5, ACTIONS(69), 1, anon_sym_LBRACE, ACTIONS(3459), 1, sym_identifier, STATE(50), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3461), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [46369] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3297), 1, anon_sym_COLON, STATE(1021), 1, sym_declaration_list, STATE(1497), 1, sym_trait_bounds, STATE(1816), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46392] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(3447), 1, anon_sym_LBRACE, STATE(1024), 1, sym_enum_variant_list, STATE(1541), 1, sym_type_parameters, STATE(1822), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46415] = 7, ACTIONS(3039), 1, anon_sym_COMMA, ACTIONS(3041), 1, anon_sym_EQ, ACTIONS(3045), 1, anon_sym_GT, ACTIONS(3463), 1, anon_sym_COLON, STATE(1790), 1, sym_trait_bounds, STATE(1796), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46438] = 7, ACTIONS(3041), 1, anon_sym_EQ, ACTIONS(3463), 1, anon_sym_COLON, ACTIONS(3465), 1, anon_sym_COMMA, ACTIONS(3467), 1, anon_sym_GT, STATE(1787), 1, aux_sym_type_parameters_repeat1, STATE(1790), 1, sym_trait_bounds, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46461] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3469), 1, anon_sym_SEMI, STATE(392), 1, sym_declaration_list, STATE(1561), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46484] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3471), 1, anon_sym_SEMI, ACTIONS(3473), 1, anon_sym_DASH_GT, STATE(1036), 1, sym_block, STATE(1584), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46507] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3297), 1, anon_sym_COLON, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(354), 1, sym_declaration_list, STATE(1494), 1, sym_trait_bounds, STATE(1845), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46530] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3475), 1, anon_sym_SEMI, STATE(1040), 1, sym_declaration_list, STATE(1592), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46553] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3477), 1, anon_sym_SEMI, STATE(1044), 1, sym_declaration_list, STATE(1595), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46576] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3479), 1, anon_sym_SEMI, ACTIONS(3481), 1, anon_sym_DASH_GT, STATE(1058), 1, sym_block, STATE(1607), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46599] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3297), 1, anon_sym_COLON, STATE(1067), 1, sym_declaration_list, STATE(1535), 1, sym_trait_bounds, STATE(1861), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46622] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3483), 1, anon_sym_SEMI, STATE(1072), 1, sym_block, STATE(1621), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46645] = 5, ACTIONS(3487), 1, anon_sym_COLON, ACTIONS(3489), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3485), 2, anon_sym_COMMA, anon_sym_RPAREN, [46664] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3491), 1, anon_sym_SEMI, STATE(1076), 1, sym_declaration_list, STATE(1559), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46687] = 5, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2980), 1, anon_sym_COLON_COLON, STATE(982), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [46706] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(3493), 1, sym_identifier, ACTIONS(3495), 1, anon_sym_STAR, STATE(1130), 1, sym_type_arguments, STATE(1695), 1, sym_use_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46729] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3497), 1, anon_sym_SEMI, ACTIONS(3499), 1, anon_sym_DASH_GT, STATE(1089), 1, sym_block, STATE(1630), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46752] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3501), 1, anon_sym_SEMI, STATE(336), 1, sym_block, STATE(1567), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46775] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3503), 1, anon_sym_SEMI, ACTIONS(3505), 1, anon_sym_DASH_GT, STATE(1103), 1, sym_block, STATE(1633), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46798] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3507), 1, anon_sym_SEMI, STATE(1107), 1, sym_block, STATE(1637), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46821] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(3509), 1, anon_sym_LBRACE, STATE(321), 1, sym_enum_variant_list, STATE(1553), 1, sym_type_parameters, STATE(1913), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46844] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3511), 1, anon_sym_SEMI, STATE(1121), 1, sym_block, STATE(1641), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46867] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3513), 1, anon_sym_SEMI, ACTIONS(3515), 1, anon_sym_DASH_GT, STATE(1126), 1, sym_block, STATE(1643), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46890] = 7, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(3493), 1, sym_identifier, ACTIONS(3495), 1, anon_sym_STAR, STATE(1157), 1, sym_type_arguments, STATE(1695), 1, sym_use_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46913] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3517), 1, anon_sym_SEMI, STATE(1138), 1, sym_block, STATE(1645), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46936] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3519), 1, anon_sym_SEMI, STATE(1145), 1, sym_block, STATE(1647), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46959] = 7, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3521), 1, anon_sym_SEMI, STATE(1150), 1, sym_block, STATE(1648), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [46982] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3523), 1, anon_sym_SEMI, ACTIONS(3525), 1, anon_sym_DASH_GT, STATE(271), 1, sym_block, STATE(1680), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47005] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3527), 1, anon_sym_SEMI, STATE(306), 1, sym_block, STATE(1699), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47028] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3529), 1, anon_sym_SEMI, ACTIONS(3531), 1, anon_sym_DASH_GT, STATE(290), 1, sym_block, STATE(1655), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47051] = 6, ACTIONS(2978), 1, anon_sym_COLON_COLON, ACTIONS(3533), 1, anon_sym_COMMA, ACTIONS(3535), 1, anon_sym_GT, STATE(1571), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 2, anon_sym_as, anon_sym_PLUS, [47072] = 6, ACTIONS(2948), 1, anon_sym_PIPE, ACTIONS(2950), 1, anon_sym_COLON, ACTIONS(2954), 1, anon_sym_LPAREN, ACTIONS(3537), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, [47093] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3539), 1, anon_sym_SEMI, ACTIONS(3541), 1, anon_sym_DASH_GT, STATE(311), 1, sym_block, STATE(1801), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47116] = 6, ACTIONS(3362), 1, anon_sym_const, ACTIONS(3543), 1, sym_identifier, ACTIONS(3545), 1, sym_metavariable, STATE(1510), 1, sym_constrained_type_parameter, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1674), 2, sym_const_parameter, sym_optional_type_parameter, [47137] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3119), 2, anon_sym_COLON, anon_sym_PIPE, ACTIONS(2046), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH_GT, anon_sym_PLUS, [47152] = 5, ACTIONS(3422), 1, anon_sym_COLON, ACTIONS(3547), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3420), 2, anon_sym_COMMA, anon_sym_RPAREN, [47171] = 4, ACTIONS(3549), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(1992), 3, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_PLUS, [47188] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3551), 1, anon_sym_SEMI, STATE(251), 1, sym_block, STATE(1799), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47211] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(3509), 1, anon_sym_LBRACE, STATE(359), 1, sym_enum_variant_list, STATE(1547), 1, sym_type_parameters, STATE(1910), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47234] = 4, ACTIONS(3438), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3119), 2, anon_sym_COMMA, anon_sym_PIPE, ACTIONS(2046), 3, anon_sym_SEMI, anon_sym_DASH_GT, anon_sym_PLUS, [47251] = 5, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(3553), 1, anon_sym_COLON_COLON, STATE(729), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 3, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_PLUS, [47270] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3555), 1, anon_sym_SEMI, STATE(364), 1, sym_declaration_list, STATE(1713), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47293] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3557), 1, anon_sym_SEMI, ACTIONS(3559), 1, anon_sym_DASH_GT, STATE(230), 1, sym_block, STATE(1734), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47316] = 4, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3261), 1, anon_sym_for, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [47333] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3561), 1, anon_sym_SEMI, ACTIONS(3563), 1, anon_sym_DASH_GT, STATE(382), 1, sym_block, STATE(1718), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47356] = 4, ACTIONS(3547), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(1992), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [47373] = 5, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(3565), 1, anon_sym_COLON_COLON, STATE(729), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [47392] = 4, ACTIONS(3567), 1, anon_sym_PLUS, STATE(1437), 1, aux_sym_trait_bounds_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3408), 4, anon_sym_SEMI, anon_sym_where, anon_sym_COMMA, anon_sym_LBRACE, [47409] = 4, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3291), 1, anon_sym_for, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [47426] = 4, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3255), 1, anon_sym_for, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 4, anon_sym_SEMI, anon_sym_where, anon_sym_LBRACE, anon_sym_PLUS, [47443] = 4, ACTIONS(3567), 1, anon_sym_PLUS, STATE(1368), 1, aux_sym_trait_bounds_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3569), 4, anon_sym_SEMI, anon_sym_where, anon_sym_COMMA, anon_sym_LBRACE, [47460] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3571), 1, anon_sym_SEMI, STATE(324), 1, sym_block, STATE(1746), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47483] = 7, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3573), 1, anon_sym_SEMI, STATE(1078), 1, sym_declaration_list, STATE(1624), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47506] = 3, ACTIONS(3575), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2130), 4, anon_sym_COMMA, anon_sym_PLUS, anon_sym_GT, anon_sym_COLON_COLON, [47520] = 6, ACTIONS(3577), 1, anon_sym_COMMA, ACTIONS(3579), 1, anon_sym_COLON, ACTIONS(3581), 1, anon_sym_RPAREN, ACTIONS(3583), 1, anon_sym_PIPE, STATE(1788), 1, aux_sym_tuple_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47540] = 4, ACTIONS(3587), 1, anon_sym_as, ACTIONS(3589), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3585), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [47556] = 6, ACTIONS(3591), 1, sym_identifier, ACTIONS(3593), 1, anon_sym_RBRACE, STATE(1479), 1, aux_sym_asm_block_repeat1, STATE(1744), 1, aux_sym_asm_content_repeat1, STATE(1885), 1, sym_asm_content, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47576] = 5, ACTIONS(3041), 1, anon_sym_EQ, ACTIONS(3463), 1, anon_sym_COLON, STATE(1790), 1, sym_trait_bounds, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3595), 2, anon_sym_COMMA, anon_sym_GT, [47594] = 4, ACTIONS(3424), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3485), 2, anon_sym_COMMA, anon_sym_RPAREN, [47610] = 4, ACTIONS(3489), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3485), 2, anon_sym_COMMA, anon_sym_RPAREN, [47626] = 5, ACTIONS(777), 1, anon_sym_RPAREN, ACTIONS(3597), 1, anon_sym_COMMA, STATE(1619), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2948), 2, anon_sym_COLON, anon_sym_PIPE, [47644] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3067), 2, anon_sym_COLON, anon_sym_PIPE, ACTIONS(2294), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [47658] = 6, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2964), 1, anon_sym_COLON_COLON, ACTIONS(3599), 1, anon_sym_COLON, STATE(980), 1, sym_type_arguments, STATE(1661), 1, sym_trait_bounds, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47678] = 4, ACTIONS(3601), 1, anon_sym_PLUS, STATE(1453), 1, aux_sym_trait_bounds_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3569), 3, anon_sym_COMMA, anon_sym_EQ, anon_sym_GT, [47694] = 4, ACTIONS(3605), 1, anon_sym_as, ACTIONS(3607), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3603), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [47710] = 5, ACTIONS(3609), 1, anon_sym_COMMA, ACTIONS(3612), 1, anon_sym_RPAREN, STATE(1738), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2948), 2, anon_sym_COLON, anon_sym_PIPE, [47728] = 4, ACTIONS(3615), 1, anon_sym_PLUS, STATE(1453), 1, aux_sym_trait_bounds_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3372), 3, anon_sym_COMMA, anon_sym_EQ, anon_sym_GT, [47744] = 6, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3618), 1, anon_sym_SEMI, ACTIONS(3620), 1, anon_sym_EQ, ACTIONS(3622), 1, anon_sym_COLON, ACTIONS(3624), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47764] = 4, ACTIONS(3489), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3626), 2, anon_sym_COMMA, anon_sym_RPAREN, [47780] = 4, ACTIONS(3424), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3626), 2, anon_sym_COMMA, anon_sym_RPAREN, [47796] = 6, ACTIONS(3051), 1, anon_sym_PIPE, ACTIONS(3628), 1, anon_sym_SEMI, ACTIONS(3630), 1, anon_sym_EQ, ACTIONS(3632), 1, anon_sym_COLON, ACTIONS(3634), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47816] = 4, ACTIONS(3587), 1, anon_sym_as, ACTIONS(3636), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3585), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [47832] = 5, ACTIONS(769), 1, anon_sym_RPAREN, ACTIONS(3638), 1, anon_sym_COMMA, STATE(1769), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2948), 2, anon_sym_COLON, anon_sym_PIPE, [47850] = 6, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3640), 1, anon_sym_SEMI, ACTIONS(3642), 1, anon_sym_EQ, ACTIONS(3644), 1, anon_sym_COLON, ACTIONS(3646), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47870] = 6, ACTIONS(3591), 1, sym_identifier, ACTIONS(3648), 1, anon_sym_RBRACE, STATE(1462), 1, aux_sym_asm_block_repeat1, STATE(1744), 1, aux_sym_asm_content_repeat1, STATE(1885), 1, sym_asm_content, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47890] = 6, ACTIONS(3591), 1, sym_identifier, ACTIONS(3650), 1, anon_sym_RBRACE, STATE(1479), 1, aux_sym_asm_block_repeat1, STATE(1744), 1, aux_sym_asm_content_repeat1, STATE(1885), 1, sym_asm_content, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47910] = 4, ACTIONS(2294), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3067), 2, anon_sym_COLON, anon_sym_PIPE, ACTIONS(3652), 2, anon_sym_COMMA, anon_sym_RPAREN, [47926] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, STATE(1226), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [47942] = 6, ACTIONS(3591), 1, sym_identifier, ACTIONS(3655), 1, anon_sym_RBRACE, STATE(1468), 1, aux_sym_asm_block_repeat1, STATE(1744), 1, aux_sym_asm_content_repeat1, STATE(1885), 1, sym_asm_content, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [47962] = 5, ACTIONS(3657), 1, anon_sym_COMMA, ACTIONS(3659), 1, anon_sym_RPAREN, STATE(1738), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2948), 2, anon_sym_COLON, anon_sym_PIPE, [47980] = 6, ACTIONS(3051), 1, anon_sym_PIPE, ACTIONS(3661), 1, anon_sym_SEMI, ACTIONS(3663), 1, anon_sym_EQ, ACTIONS(3665), 1, anon_sym_COLON, ACTIONS(3667), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48000] = 6, ACTIONS(3591), 1, sym_identifier, ACTIONS(3669), 1, anon_sym_RBRACE, STATE(1479), 1, aux_sym_asm_block_repeat1, STATE(1744), 1, aux_sym_asm_content_repeat1, STATE(1885), 1, sym_asm_content, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48020] = 4, ACTIONS(3671), 1, anon_sym_POUND, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1827), 2, anon_sym_pub, sym_identifier, STATE(1469), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [48036] = 4, ACTIONS(3547), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3485), 2, anon_sym_COMMA, anon_sym_RPAREN, [48052] = 6, ACTIONS(3591), 1, sym_identifier, ACTIONS(3674), 1, anon_sym_RBRACE, STATE(1443), 1, aux_sym_asm_block_repeat1, STATE(1744), 1, aux_sym_asm_content_repeat1, STATE(1885), 1, sym_asm_content, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48072] = 4, ACTIONS(3547), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, ACTIONS(3626), 2, anon_sym_COMMA, anon_sym_RPAREN, [48088] = 4, ACTIONS(3601), 1, anon_sym_PLUS, STATE(1450), 1, aux_sym_trait_bounds_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3408), 3, anon_sym_COMMA, anon_sym_EQ, anon_sym_GT, [48104] = 4, ACTIONS(3652), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2294), 2, anon_sym_SEMI, anon_sym_PLUS, ACTIONS(3067), 2, anon_sym_COMMA, anon_sym_PIPE, [48120] = 4, ACTIONS(3676), 1, anon_sym_PLUS, STATE(1450), 1, aux_sym_trait_bounds_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3408), 3, anon_sym_COMMA, anon_sym_EQ, anon_sym_GT, [48136] = 4, ACTIONS(283), 1, anon_sym_LBRACE, STATE(675), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2038), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [48152] = 4, ACTIONS(3587), 1, anon_sym_as, ACTIONS(3678), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3585), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [48168] = 5, ACTIONS(3680), 1, anon_sym_COMMA, ACTIONS(3682), 1, anon_sym_RPAREN, STATE(1578), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2948), 2, anon_sym_COLON, anon_sym_PIPE, [48186] = 6, ACTIONS(3684), 1, sym_identifier, ACTIONS(3687), 1, anon_sym_RBRACE, STATE(1479), 1, aux_sym_asm_block_repeat1, STATE(1744), 1, aux_sym_asm_content_repeat1, STATE(1885), 1, sym_asm_content, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48206] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3447), 1, anon_sym_LBRACE, STATE(1005), 1, sym_enum_variant_list, STATE(1971), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48223] = 5, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, STATE(1429), 1, sym_parameters, STATE(1906), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48240] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(353), 1, sym_declaration_list, STATE(1843), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48257] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(226), 1, sym_declaration_list, STATE(1807), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48274] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3689), 3, anon_sym_COMMA, anon_sym_EQ, anon_sym_RBRACE, [48287] = 5, ACTIONS(777), 1, anon_sym_RPAREN, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3597), 1, anon_sym_COMMA, STATE(1619), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48304] = 4, ACTIONS(3694), 1, anon_sym_fn, STATE(1486), 1, aux_sym_function_modifiers_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3691), 2, anon_sym_const, anon_sym_default, [48319] = 5, ACTIONS(769), 1, anon_sym_RPAREN, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3638), 1, anon_sym_COMMA, STATE(1769), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48336] = 5, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(3297), 1, anon_sym_COLON, STATE(983), 1, sym_type_arguments, STATE(1756), 1, sym_trait_bounds, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48353] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3696), 1, anon_sym_COMMA, ACTIONS(3698), 1, anon_sym_RPAREN, STATE(1729), 1, aux_sym_tuple_type_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48370] = 4, ACTIONS(3489), 1, anon_sym_COLON_COLON, ACTIONS(3700), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, [48385] = 4, ACTIONS(3702), 1, anon_sym_DQUOTE, STATE(1493), 1, aux_sym_string_literal_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3704), 2, sym__string_content, sym_escape_sequence, [48400] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3706), 1, anon_sym_COMMA, ACTIONS(3708), 1, anon_sym_RPAREN, STATE(1602), 1, aux_sym_ordered_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48417] = 4, ACTIONS(3710), 1, anon_sym_DQUOTE, STATE(1540), 1, aux_sym_string_literal_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3712), 2, sym__string_content, sym_escape_sequence, [48432] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(404), 1, sym_declaration_list, STATE(1938), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48449] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3714), 1, anon_sym_SEMI, ACTIONS(3716), 1, anon_sym_EQ, ACTIONS(3718), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48466] = 4, ACTIONS(677), 1, anon_sym_LBRACE, ACTIONS(3720), 1, anon_sym_if, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(225), 2, sym_if_expression, sym_block, [48481] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1054), 1, sym_declaration_list, STATE(1850), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48498] = 4, ACTIONS(2978), 1, anon_sym_COLON_COLON, ACTIONS(3724), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3722), 2, anon_sym_RBRACE, sym_identifier, [48513] = 4, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3724), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3722), 2, anon_sym_RBRACE, sym_identifier, [48528] = 5, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(3726), 1, sym_identifier, ACTIONS(3728), 1, anon_sym_STAR, STATE(1675), 1, sym_use_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48545] = 3, ACTIONS(3730), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3461), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [48558] = 4, ACTIONS(3732), 1, anon_sym_DQUOTE, STATE(1540), 1, aux_sym_string_literal_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3712), 2, sym__string_content, sym_escape_sequence, [48573] = 5, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3734), 1, anon_sym_COMMA, ACTIONS(3736), 1, anon_sym_RPAREN, STATE(1626), 1, aux_sym_tuple_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48590] = 4, ACTIONS(3738), 1, anon_sym_DQUOTE, STATE(1523), 1, aux_sym_string_literal_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3740), 2, sym__string_content, sym_escape_sequence, [48605] = 5, ACTIONS(3297), 1, anon_sym_COLON, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(262), 1, sym_declaration_list, STATE(1883), 1, sym_trait_bounds, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48622] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3657), 1, anon_sym_COMMA, ACTIONS(3659), 1, anon_sym_RPAREN, STATE(1738), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48639] = 4, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3744), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3742), 2, anon_sym_COMMA, anon_sym_RPAREN, [48654] = 5, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, STATE(1384), 1, sym_parameters, STATE(1935), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48671] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3746), 1, anon_sym_COMMA, ACTIONS(3748), 1, anon_sym_RPAREN, STATE(1782), 1, aux_sym_tuple_type_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48688] = 5, ACTIONS(3750), 1, anon_sym_COMMA, ACTIONS(3752), 1, anon_sym_EQ, ACTIONS(3754), 1, anon_sym_GT, STATE(1789), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48705] = 3, ACTIONS(3756), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [48718] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3758), 1, anon_sym_SEMI, ACTIONS(3760), 1, anon_sym_EQ, ACTIONS(3762), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48735] = 3, ACTIONS(3764), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3461), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [48748] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3766), 1, anon_sym_SEMI, ACTIONS(3768), 1, anon_sym_EQ, ACTIONS(3770), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48765] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3772), 3, anon_sym_COMMA, anon_sym_EQ, anon_sym_RBRACE, [48778] = 4, ACTIONS(3489), 1, anon_sym_COLON_COLON, ACTIONS(3774), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, [48793] = 5, ACTIONS(3533), 1, anon_sym_COMMA, ACTIONS(3535), 1, anon_sym_GT, ACTIONS(3752), 1, anon_sym_EQ, STATE(1571), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48810] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2948), 2, anon_sym_COLON, anon_sym_PIPE, ACTIONS(3776), 2, anon_sym_COMMA, anon_sym_RPAREN, [48823] = 5, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, STATE(1396), 1, sym_parameters, STATE(1951), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48840] = 5, ACTIONS(3778), 1, anon_sym_COMMA, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3782), 1, anon_sym_GT, STATE(1587), 1, aux_sym_type_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48857] = 4, ACTIONS(3786), 1, anon_sym_fn, STATE(1486), 1, aux_sym_function_modifiers_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3784), 2, anon_sym_const, anon_sym_default, [48872] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3788), 1, anon_sym_SEMI, ACTIONS(3790), 1, anon_sym_EQ, ACTIONS(3792), 1, anon_sym_else, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48889] = 4, ACTIONS(3794), 1, anon_sym_DQUOTE, STATE(1540), 1, aux_sym_string_literal_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3712), 2, sym__string_content, sym_escape_sequence, [48904] = 5, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, STATE(1416), 1, sym_parameters, STATE(1929), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48921] = 4, ACTIONS(3798), 1, anon_sym_SEMI, ACTIONS(3800), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3796), 2, anon_sym_RBRACE, sym_identifier, [48936] = 4, ACTIONS(283), 1, anon_sym_LBRACE, ACTIONS(3802), 1, anon_sym_if, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(690), 2, sym_if_expression, sym_block, [48951] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1020), 1, sym_declaration_list, STATE(1815), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [48968] = 4, ACTIONS(3804), 1, anon_sym_COMMA, STATE(1558), 1, aux_sym_where_clause_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2504), 2, anon_sym_SEMI, anon_sym_LBRACE, [48983] = 5, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3806), 1, anon_sym_RBRACK, ACTIONS(3808), 1, anon_sym_COMMA, STATE(1770), 1, aux_sym_tuple_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49000] = 5, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, STATE(1405), 1, sym_parameters, STATE(1960), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49017] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(407), 1, sym_declaration_list, STATE(1834), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49034] = 4, ACTIONS(3810), 1, anon_sym_DQUOTE, STATE(1502), 1, aux_sym_string_literal_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3812), 2, sym__string_content, sym_escape_sequence, [49049] = 5, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3814), 1, anon_sym_COMMA, ACTIONS(3816), 1, anon_sym_GT, STATE(1794), 1, aux_sym_type_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49066] = 4, ACTIONS(3820), 1, anon_sym_COMMA, STATE(1528), 1, aux_sym_where_clause_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3818), 2, anon_sym_SEMI, anon_sym_LBRACE, [49081] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1100), 1, sym_declaration_list, STATE(1874), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49098] = 3, ACTIONS(3822), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3051), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE, [49111] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3824), 3, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, [49124] = 5, ACTIONS(2057), 1, anon_sym_LPAREN, ACTIONS(3233), 1, anon_sym_LT, STATE(1366), 1, sym_parameters, STATE(1837), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49141] = 4, ACTIONS(69), 1, anon_sym_LBRACE, ACTIONS(3826), 1, anon_sym_if, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(66), 2, sym_if_expression, sym_block, [49156] = 4, ACTIONS(3828), 1, anon_sym_DQUOTE, STATE(1540), 1, aux_sym_string_literal_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3830), 2, sym__string_content, sym_escape_sequence, [49171] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3447), 1, anon_sym_LBRACE, STATE(1060), 1, sym_enum_variant_list, STATE(1858), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49188] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3833), 1, anon_sym_COMMA, ACTIONS(3835), 1, anon_sym_RPAREN, STATE(1785), 1, aux_sym_ordered_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49205] = 3, ACTIONS(3837), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 3, anon_sym_SEMI, anon_sym_RBRACK, anon_sym_PLUS, [49218] = 4, ACTIONS(3839), 1, anon_sym_COMMA, STATE(1544), 1, aux_sym_tuple_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3824), 2, anon_sym_RBRACK, anon_sym_RPAREN, [49233] = 5, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(3493), 1, sym_identifier, ACTIONS(3495), 1, anon_sym_STAR, STATE(1695), 1, sym_use_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49250] = 3, ACTIONS(3842), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3461), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [49263] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3509), 1, anon_sym_LBRACE, STATE(232), 1, sym_enum_variant_list, STATE(1823), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49280] = 3, ACTIONS(3844), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3461), 3, anon_sym_const, anon_sym_default, anon_sym_fn, [49293] = 3, ACTIONS(3846), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1992), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PLUS, [49306] = 5, ACTIONS(3577), 1, anon_sym_COMMA, ACTIONS(3581), 1, anon_sym_RPAREN, ACTIONS(3583), 1, anon_sym_PIPE, STATE(1788), 1, aux_sym_tuple_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49323] = 5, ACTIONS(3848), 1, anon_sym_COMMA, ACTIONS(3850), 1, anon_sym_COLON, ACTIONS(3852), 1, anon_sym_PIPE, STATE(1759), 1, aux_sym_closure_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49340] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1066), 1, sym_declaration_list, STATE(1860), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49357] = 5, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3509), 1, anon_sym_LBRACE, STATE(247), 1, sym_enum_variant_list, STATE(1825), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49374] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3854), 1, anon_sym_COMMA, ACTIONS(3856), 1, anon_sym_RPAREN, STATE(1682), 1, aux_sym_ordered_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49391] = 4, ACTIONS(3199), 1, anon_sym_POUND, ACTIONS(3858), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, STATE(1469), 2, sym_attribute_item, aux_sym_enum_variant_list_repeat1, [49406] = 3, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2948), 2, anon_sym_COLON, anon_sym_PIPE, ACTIONS(3860), 2, anon_sym_COMMA, anon_sym_RPAREN, [49419] = 5, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3680), 1, anon_sym_COMMA, ACTIONS(3682), 1, anon_sym_RPAREN, STATE(1578), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49436] = 4, ACTIONS(3864), 1, anon_sym_COMMA, STATE(1558), 1, aux_sym_where_clause_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3862), 2, anon_sym_SEMI, anon_sym_LBRACE, [49451] = 4, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3867), 1, anon_sym_SEMI, STATE(1111), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49465] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3869), 2, anon_sym_COMMA, anon_sym_RPAREN, [49477] = 4, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(3871), 1, anon_sym_SEMI, STATE(259), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49491] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3873), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [49501] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3875), 2, anon_sym_COMMA, anon_sym_RBRACE, [49513] = 4, ACTIONS(3877), 1, anon_sym_RBRACK, ACTIONS(3879), 1, anon_sym_COMMA, STATE(1569), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49527] = 4, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(3881), 1, anon_sym_EQ, STATE(2088), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49541] = 4, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(3883), 1, anon_sym_SEMI, STATE(253), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49555] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3885), 1, anon_sym_SEMI, STATE(341), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49569] = 4, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3887), 1, anon_sym_SEMI, STATE(2115), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49583] = 4, ACTIONS(3889), 1, anon_sym_RBRACK, ACTIONS(3891), 1, anon_sym_COMMA, STATE(1569), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49597] = 3, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3894), 2, anon_sym_COMMA, anon_sym_GT, [49609] = 4, ACTIONS(3376), 1, anon_sym_GT, ACTIONS(3896), 1, anon_sym_COMMA, STATE(1639), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49623] = 4, ACTIONS(3898), 1, anon_sym_COMMA, ACTIONS(3900), 1, anon_sym_RBRACE, STATE(1684), 1, aux_sym_use_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49637] = 4, ACTIONS(283), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, STATE(748), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49651] = 4, ACTIONS(3307), 1, anon_sym_RBRACE, ACTIONS(3902), 1, anon_sym_COMMA, STATE(1717), 1, aux_sym_enum_variant_list_repeat2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49665] = 4, ACTIONS(3307), 1, anon_sym_RBRACE, ACTIONS(3902), 1, anon_sym_COMMA, STATE(1615), 1, aux_sym_enum_variant_list_repeat2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49679] = 4, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3904), 1, anon_sym_if, ACTIONS(3906), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49693] = 4, ACTIONS(2712), 1, anon_sym_RPAREN, ACTIONS(3908), 1, anon_sym_COMMA, STATE(1577), 1, aux_sym_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49707] = 4, ACTIONS(777), 1, anon_sym_RPAREN, ACTIONS(3597), 1, anon_sym_COMMA, STATE(1754), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49721] = 3, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3911), 2, anon_sym_COMMA, anon_sym_GT, [49733] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3913), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [49743] = 4, ACTIONS(2124), 1, anon_sym_LPAREN, ACTIONS(3915), 1, sym_identifier, STATE(691), 1, sym_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49757] = 4, ACTIONS(777), 1, anon_sym_RPAREN, ACTIONS(3597), 1, anon_sym_COMMA, STATE(1619), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49771] = 4, ACTIONS(3911), 1, anon_sym_GT, ACTIONS(3917), 1, anon_sym_COMMA, STATE(1583), 1, aux_sym_type_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49785] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3920), 1, anon_sym_SEMI, STATE(1070), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49799] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3922), 2, anon_sym_COMMA, anon_sym_RPAREN, [49811] = 4, ACTIONS(3657), 1, anon_sym_COMMA, ACTIONS(3659), 1, anon_sym_RPAREN, STATE(1738), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49825] = 4, ACTIONS(1807), 1, anon_sym_GT, ACTIONS(3924), 1, anon_sym_COMMA, STATE(1583), 1, aux_sym_type_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49839] = 3, ACTIONS(3928), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3926), 2, anon_sym_COMMA, anon_sym_RBRACE, [49851] = 4, ACTIONS(3930), 1, anon_sym_COMMA, ACTIONS(3933), 1, anon_sym_RBRACE, STATE(1589), 1, aux_sym_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49865] = 4, ACTIONS(2980), 1, anon_sym_COLON_COLON, ACTIONS(3599), 1, anon_sym_COLON, STATE(1756), 1, sym_trait_bounds, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49879] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3935), 2, anon_sym_COMMA, anon_sym_RBRACE, [49891] = 4, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3937), 1, anon_sym_SEMI, STATE(1074), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49905] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(3939), 1, sym_identifier, STATE(1157), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49919] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(3941), 1, anon_sym_SEMI, STATE(338), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49933] = 4, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(3943), 1, anon_sym_SEMI, STATE(1080), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49947] = 4, ACTIONS(3301), 1, anon_sym_RBRACE, ACTIONS(3945), 1, anon_sym_COMMA, STATE(1589), 1, aux_sym_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49961] = 4, ACTIONS(3947), 1, anon_sym_SEMI, ACTIONS(3949), 1, anon_sym_EQ, ACTIONS(3951), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49975] = 4, ACTIONS(489), 1, anon_sym_RPAREN, ACTIONS(3953), 1, anon_sym_COMMA, STATE(1577), 1, aux_sym_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [49989] = 4, ACTIONS(3303), 1, anon_sym_RBRACE, ACTIONS(3955), 1, anon_sym_COMMA, STATE(1589), 1, aux_sym_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50003] = 4, ACTIONS(3303), 1, anon_sym_RBRACE, ACTIONS(3955), 1, anon_sym_COMMA, STATE(1627), 1, aux_sym_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50017] = 4, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3957), 1, anon_sym_SEMI, STATE(2172), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50031] = 4, ACTIONS(3959), 1, anon_sym_COMMA, ACTIONS(3961), 1, anon_sym_RPAREN, STATE(1613), 1, aux_sym_ordered_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50045] = 3, ACTIONS(3752), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3963), 2, anon_sym_COMMA, anon_sym_GT, [50057] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3965), 2, anon_sym_COMMA, anon_sym_RPAREN, [50069] = 4, ACTIONS(3967), 1, anon_sym_COMMA, ACTIONS(3969), 1, anon_sym_RBRACE, STATE(1642), 1, aux_sym_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50083] = 3, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3971), 2, anon_sym_COMMA, anon_sym_GT, [50095] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3973), 1, anon_sym_SEMI, STATE(1174), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50109] = 4, ACTIONS(3975), 1, anon_sym_COMMA, ACTIONS(3978), 1, anon_sym_RBRACE, STATE(1608), 1, aux_sym_struct_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50123] = 4, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3980), 1, anon_sym_SEMI, ACTIONS(3982), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50137] = 4, ACTIONS(3227), 1, anon_sym_where, ACTIONS(3984), 1, anon_sym_SEMI, STATE(2048), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50151] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2700), 3, anon_sym_where, anon_sym_LBRACE, anon_sym_COLON, [50161] = 4, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3599), 1, anon_sym_COLON, STATE(1756), 1, sym_trait_bounds, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50175] = 4, ACTIONS(3986), 1, anon_sym_COMMA, ACTIONS(3989), 1, anon_sym_RPAREN, STATE(1613), 1, aux_sym_ordered_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50189] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(3991), 1, sym_identifier, STATE(643), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50203] = 4, ACTIONS(3311), 1, anon_sym_RBRACE, ACTIONS(3993), 1, anon_sym_COMMA, STATE(1717), 1, aux_sym_enum_variant_list_repeat2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50217] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2612), 3, anon_sym_where, anon_sym_LBRACE, anon_sym_COLON, [50227] = 4, ACTIONS(3309), 1, anon_sym_RBRACE, ACTIONS(3995), 1, anon_sym_COMMA, STATE(1717), 1, aux_sym_enum_variant_list_repeat2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50241] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2578), 2, anon_sym_COMMA, anon_sym_RPAREN, [50253] = 4, ACTIONS(773), 1, anon_sym_RPAREN, ACTIONS(3997), 1, anon_sym_COMMA, STATE(1754), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50267] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(3939), 1, sym_identifier, STATE(1130), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50281] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(3999), 1, anon_sym_SEMI, STATE(1109), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50295] = 3, ACTIONS(4003), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4001), 2, anon_sym_COMMA, anon_sym_RBRACE, [50307] = 4, ACTIONS(4005), 1, sym_identifier, ACTIONS(4008), 1, anon_sym_RBRACE, STATE(1623), 1, aux_sym_asm_content_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50321] = 4, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(4010), 1, anon_sym_SEMI, STATE(1113), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50335] = 3, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4012), 2, anon_sym_COMMA, anon_sym_PIPE, [50347] = 4, ACTIONS(1771), 1, anon_sym_RPAREN, ACTIONS(4014), 1, anon_sym_COMMA, STATE(1544), 1, aux_sym_tuple_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50361] = 4, ACTIONS(3313), 1, anon_sym_RBRACE, ACTIONS(4016), 1, anon_sym_COMMA, STATE(1589), 1, aux_sym_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50375] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4018), 1, sym_identifier, STATE(643), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50389] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4018), 1, sym_identifier, STATE(652), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50403] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(4020), 1, anon_sym_SEMI, STATE(1119), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50417] = 3, ACTIONS(4024), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4022), 2, anon_sym_COMMA, anon_sym_RBRACE, [50429] = 3, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4026), 2, anon_sym_COMMA, anon_sym_GT, [50441] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(4028), 1, anon_sym_SEMI, STATE(1128), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50455] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4030), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [50465] = 4, ACTIONS(769), 1, anon_sym_RPAREN, ACTIONS(3638), 1, anon_sym_COMMA, STATE(1769), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50479] = 4, ACTIONS(2598), 1, anon_sym_LBRACE, ACTIONS(4032), 1, sym_identifier, STATE(1580), 1, sym_use_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50493] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(4034), 1, anon_sym_SEMI, STATE(1132), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50507] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3862), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_LBRACE, [50517] = 4, ACTIONS(3963), 1, anon_sym_GT, ACTIONS(4036), 1, anon_sym_COMMA, STATE(1639), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50531] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4039), 1, sym_identifier, STATE(825), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50545] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(4041), 1, anon_sym_SEMI, STATE(1140), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50559] = 4, ACTIONS(3319), 1, anon_sym_RBRACE, ACTIONS(4043), 1, anon_sym_COMMA, STATE(1589), 1, aux_sym_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50573] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(4045), 1, anon_sym_SEMI, STATE(1143), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50587] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4039), 1, sym_identifier, STATE(834), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50601] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(4047), 1, anon_sym_SEMI, STATE(1148), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50615] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2684), 3, anon_sym_where, anon_sym_LBRACE, anon_sym_COLON, [50625] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(4049), 1, anon_sym_SEMI, STATE(1152), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50639] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(4051), 1, anon_sym_SEMI, STATE(1155), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50653] = 4, ACTIONS(3319), 1, anon_sym_RBRACE, ACTIONS(4043), 1, anon_sym_COMMA, STATE(1596), 1, aux_sym_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50667] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2690), 3, anon_sym_where, anon_sym_LBRACE, anon_sym_COLON, [50677] = 4, ACTIONS(3227), 1, anon_sym_where, ACTIONS(4053), 1, anon_sym_SEMI, STATE(2065), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50691] = 4, ACTIONS(4055), 1, anon_sym_COMMA, ACTIONS(4057), 1, anon_sym_RBRACE, STATE(1617), 1, aux_sym_enum_variant_list_repeat2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50705] = 4, ACTIONS(4059), 1, anon_sym_COMMA, ACTIONS(4062), 1, anon_sym_RBRACE, STATE(1653), 1, aux_sym_field_initializer_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50719] = 4, ACTIONS(3879), 1, anon_sym_COMMA, ACTIONS(4064), 1, anon_sym_RBRACK, STATE(1710), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50733] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4066), 1, anon_sym_SEMI, STATE(384), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50747] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4068), 1, sym_identifier, STATE(666), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50761] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4068), 1, sym_identifier, STATE(668), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50775] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4070), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [50785] = 4, ACTIONS(3879), 1, anon_sym_COMMA, ACTIONS(4072), 1, anon_sym_RBRACK, STATE(1665), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50799] = 3, ACTIONS(4076), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4074), 2, anon_sym_COMMA, anon_sym_RBRACE, [50811] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4078), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_LBRACE, [50821] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4080), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [50831] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4082), 1, sym_identifier, STATE(799), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50845] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4084), 1, sym_identifier, STATE(1130), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50859] = 4, ACTIONS(3879), 1, anon_sym_COMMA, ACTIONS(4086), 1, anon_sym_RBRACK, STATE(1569), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50873] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4084), 1, sym_identifier, STATE(1157), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50887] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4082), 1, sym_identifier, STATE(801), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50901] = 4, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4088), 1, anon_sym_SEMI, ACTIONS(4090), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50915] = 3, ACTIONS(4094), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4092), 2, anon_sym_COMMA, anon_sym_RBRACE, [50927] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4096), 1, sym_identifier, STATE(643), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50941] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(4096), 1, sym_identifier, STATE(652), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50955] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4098), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [50965] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4100), 2, anon_sym_COMMA, anon_sym_RBRACE, [50977] = 4, ACTIONS(3750), 1, anon_sym_COMMA, ACTIONS(3754), 1, anon_sym_GT, STATE(1789), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [50991] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4102), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [51001] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4104), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [51011] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4106), 1, sym_identifier, STATE(1130), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51025] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4106), 1, sym_identifier, STATE(1157), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51039] = 4, ACTIONS(3879), 1, anon_sym_COMMA, ACTIONS(4108), 1, anon_sym_RBRACK, STATE(1681), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51053] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4110), 1, anon_sym_SEMI, STATE(304), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51067] = 4, ACTIONS(3879), 1, anon_sym_COMMA, ACTIONS(4112), 1, anon_sym_RBRACK, STATE(1569), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51081] = 4, ACTIONS(4114), 1, anon_sym_COMMA, ACTIONS(4116), 1, anon_sym_RPAREN, STATE(1613), 1, aux_sym_ordered_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51095] = 4, ACTIONS(3309), 1, anon_sym_RBRACE, ACTIONS(3995), 1, anon_sym_COMMA, STATE(1721), 1, aux_sym_enum_variant_list_repeat2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51109] = 4, ACTIONS(2757), 1, anon_sym_RBRACE, ACTIONS(4118), 1, anon_sym_COMMA, STATE(1762), 1, aux_sym_use_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51123] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4120), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [51133] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4068), 1, sym_identifier, STATE(1130), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51147] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4068), 1, sym_identifier, STATE(1157), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51161] = 4, ACTIONS(3879), 1, anon_sym_COMMA, ACTIONS(4122), 1, anon_sym_RBRACK, STATE(1690), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51175] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4124), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [51185] = 4, ACTIONS(3879), 1, anon_sym_COMMA, ACTIONS(4126), 1, anon_sym_RBRACK, STATE(1569), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51199] = 4, ACTIONS(3227), 1, anon_sym_where, ACTIONS(4128), 1, anon_sym_SEMI, STATE(2053), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51213] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4130), 1, sym_identifier, STATE(1157), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51227] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4132), 1, sym_identifier, STATE(1130), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51241] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4132), 1, sym_identifier, STATE(1157), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51255] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4134), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [51265] = 4, ACTIONS(451), 1, anon_sym_RPAREN, ACTIONS(2586), 1, anon_sym_COMMA, STATE(1577), 1, aux_sym_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51279] = 4, ACTIONS(1982), 1, anon_sym_LT2, ACTIONS(3991), 1, sym_identifier, STATE(652), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51293] = 4, ACTIONS(651), 1, anon_sym_RBRACK, ACTIONS(2576), 1, anon_sym_COMMA, STATE(1736), 1, aux_sym_array_expression_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51307] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4136), 1, anon_sym_SEMI, STATE(326), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51321] = 3, ACTIONS(3489), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, [51333] = 4, ACTIONS(4138), 1, anon_sym_COMMA, ACTIONS(4140), 1, anon_sym_RBRACE, STATE(1726), 1, aux_sym_struct_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51347] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(3493), 1, sym_identifier, STATE(1130), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51361] = 4, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(4142), 1, anon_sym_COLON_COLON, STATE(729), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51375] = 4, ACTIONS(4144), 1, anon_sym_COMMA, ACTIONS(4146), 1, anon_sym_RPAREN, STATE(1732), 1, aux_sym_asm_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51389] = 4, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(4148), 1, anon_sym_SEMI, STATE(1012), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51403] = 4, ACTIONS(3326), 1, anon_sym_RBRACE, ACTIONS(4150), 1, anon_sym_COMMA, STATE(1608), 1, aux_sym_struct_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51417] = 3, ACTIONS(3549), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, [51429] = 4, ACTIONS(3814), 1, anon_sym_COMMA, ACTIONS(3816), 1, anon_sym_GT, STATE(1794), 1, aux_sym_type_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51443] = 4, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(4152), 1, anon_sym_SEMI, STATE(390), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51457] = 4, ACTIONS(3879), 1, anon_sym_COMMA, ACTIONS(4154), 1, anon_sym_RBRACK, STATE(1569), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51471] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(3493), 1, sym_identifier, STATE(1157), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51485] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4156), 1, anon_sym_SEMI, STATE(313), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51499] = 4, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(4158), 1, anon_sym_SEMI, STATE(345), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51513] = 4, ACTIONS(3227), 1, anon_sym_where, ACTIONS(4160), 1, anon_sym_SEMI, STATE(2104), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51527] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4162), 1, sym_identifier, STATE(1157), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51541] = 4, ACTIONS(3533), 1, anon_sym_COMMA, ACTIONS(3535), 1, anon_sym_GT, STATE(1571), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51555] = 4, ACTIONS(4164), 1, anon_sym_COMMA, ACTIONS(4167), 1, anon_sym_RBRACE, STATE(1717), 1, aux_sym_enum_variant_list_repeat2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51569] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4169), 1, anon_sym_SEMI, STATE(249), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51583] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(3219), 1, anon_sym_LBRACE, STATE(983), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51597] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4012), 2, anon_sym_COMMA, anon_sym_RPAREN, [51609] = 4, ACTIONS(3356), 1, anon_sym_RBRACE, ACTIONS(4171), 1, anon_sym_COMMA, STATE(1717), 1, aux_sym_enum_variant_list_repeat2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51623] = 4, ACTIONS(3879), 1, anon_sym_COMMA, ACTIONS(4173), 1, anon_sym_RBRACK, STATE(1564), 1, aux_sym_attribute_item_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51637] = 3, ACTIONS(4175), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3051), 2, anon_sym_COMMA, anon_sym_PIPE, [51649] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2664), 3, anon_sym_where, anon_sym_LBRACE, anon_sym_COLON, [51659] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2668), 3, anon_sym_where, anon_sym_LBRACE, anon_sym_COLON, [51669] = 4, ACTIONS(3348), 1, anon_sym_RBRACE, ACTIONS(4177), 1, anon_sym_COMMA, STATE(1608), 1, aux_sym_struct_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51683] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4179), 2, anon_sym_COMMA, anon_sym_RBRACE, [51695] = 4, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(4181), 1, anon_sym_SEMI, STATE(296), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51709] = 4, ACTIONS(1964), 1, anon_sym_RPAREN, ACTIONS(4183), 1, anon_sym_COMMA, STATE(1763), 1, aux_sym_tuple_type_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51723] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3776), 2, anon_sym_COMMA, anon_sym_RPAREN, [51735] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4185), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, [51745] = 4, ACTIONS(1753), 1, anon_sym_RPAREN, ACTIONS(4187), 1, anon_sym_COMMA, STATE(1772), 1, aux_sym_asm_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51759] = 4, ACTIONS(3227), 1, anon_sym_where, ACTIONS(4189), 1, anon_sym_SEMI, STATE(2075), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51773] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4191), 1, anon_sym_SEMI, STATE(273), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51787] = 4, ACTIONS(4193), 1, anon_sym_SEMI, ACTIONS(4195), 1, anon_sym_EQ, ACTIONS(4197), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51801] = 4, ACTIONS(2736), 1, anon_sym_RBRACK, ACTIONS(4199), 1, anon_sym_COMMA, STATE(1736), 1, aux_sym_array_expression_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51815] = 3, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4202), 2, anon_sym_COMMA, anon_sym_GT, [51827] = 4, ACTIONS(769), 1, anon_sym_RPAREN, ACTIONS(3638), 1, anon_sym_COMMA, STATE(1754), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51841] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4162), 1, sym_identifier, STATE(1130), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51855] = 4, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(4204), 1, anon_sym_as, ACTIONS(4206), 1, anon_sym_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51869] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4208), 1, anon_sym_SEMI, STATE(317), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51883] = 4, ACTIONS(4210), 1, anon_sym_LBRACE, ACTIONS(4212), 1, anon_sym_DOT, STATE(395), 1, sym_storage_content_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51897] = 4, ACTIONS(3305), 1, anon_sym_LBRACE, ACTIONS(4214), 1, anon_sym_SEMI, STATE(298), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51911] = 4, ACTIONS(3591), 1, sym_identifier, ACTIONS(4216), 1, anon_sym_RBRACE, STATE(1623), 1, aux_sym_asm_content_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51925] = 3, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4218), 2, anon_sym_COMMA, anon_sym_GT, [51937] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4220), 1, anon_sym_SEMI, STATE(334), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51951] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3860), 2, anon_sym_COMMA, anon_sym_RPAREN, [51963] = 4, ACTIONS(663), 1, anon_sym_RBRACK, ACTIONS(4222), 1, anon_sym_COMMA, STATE(1736), 1, aux_sym_array_expression_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [51977] = 3, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3869), 2, anon_sym_COMMA, anon_sym_PIPE, [51989] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4224), 2, anon_sym_COMMA, anon_sym_RBRACE, [52001] = 4, ACTIONS(4226), 1, anon_sym_SEMI, ACTIONS(4228), 1, anon_sym_EQ, ACTIONS(4230), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52015] = 4, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4232), 1, anon_sym_SEMI, ACTIONS(4234), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52029] = 4, ACTIONS(4236), 1, anon_sym_COMMA, ACTIONS(4238), 1, anon_sym_RBRACE, STATE(1574), 1, aux_sym_enum_variant_list_repeat2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52043] = 4, ACTIONS(3860), 1, anon_sym_RPAREN, ACTIONS(4240), 1, anon_sym_COMMA, STATE(1754), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52057] = 4, ACTIONS(4243), 1, anon_sym_COMMA, ACTIONS(4245), 1, anon_sym_RBRACE, STATE(1706), 1, aux_sym_struct_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52071] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4247), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_LBRACE, [52081] = 3, ACTIONS(3850), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4249), 2, anon_sym_COMMA, anon_sym_PIPE, [52093] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2763), 3, anon_sym_LBRACE, anon_sym_AMP_AMP, anon_sym_EQ_GT, [52103] = 4, ACTIONS(3848), 1, anon_sym_COMMA, ACTIONS(4251), 1, anon_sym_PIPE, STATE(1760), 1, aux_sym_closure_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52117] = 4, ACTIONS(4249), 1, anon_sym_PIPE, ACTIONS(4253), 1, anon_sym_COMMA, STATE(1760), 1, aux_sym_closure_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52131] = 4, ACTIONS(283), 1, anon_sym_LBRACE, ACTIONS(3406), 1, anon_sym_PLUS, STATE(678), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52145] = 4, ACTIONS(4256), 1, anon_sym_COMMA, ACTIONS(4259), 1, anon_sym_RBRACE, STATE(1762), 1, aux_sym_use_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52159] = 4, ACTIONS(3922), 1, anon_sym_RPAREN, ACTIONS(4261), 1, anon_sym_COMMA, STATE(1763), 1, aux_sym_tuple_type_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52173] = 4, ACTIONS(4264), 1, anon_sym_COMMA, ACTIONS(4266), 1, anon_sym_RBRACE, STATE(1778), 1, aux_sym_storage_content_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52187] = 4, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4268), 1, anon_sym_SEMI, ACTIONS(4270), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52201] = 4, ACTIONS(3680), 1, anon_sym_COMMA, ACTIONS(3682), 1, anon_sym_RPAREN, STATE(1578), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52215] = 4, ACTIONS(3285), 1, anon_sym_RBRACE, ACTIONS(4272), 1, anon_sym_COMMA, STATE(1653), 1, aux_sym_field_initializer_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52229] = 3, ACTIONS(4276), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4274), 2, anon_sym_COMMA, anon_sym_RBRACE, [52241] = 4, ACTIONS(779), 1, anon_sym_RPAREN, ACTIONS(4278), 1, anon_sym_COMMA, STATE(1754), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52255] = 4, ACTIONS(1765), 1, anon_sym_RBRACK, ACTIONS(4280), 1, anon_sym_COMMA, STATE(1544), 1, aux_sym_tuple_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52269] = 4, ACTIONS(1803), 1, anon_sym_LBRACE, ACTIONS(4282), 1, anon_sym_SEMI, STATE(1038), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52283] = 4, ACTIONS(4284), 1, anon_sym_COMMA, ACTIONS(4287), 1, anon_sym_RPAREN, STATE(1772), 1, aux_sym_asm_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52297] = 3, ACTIONS(3547), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, [52309] = 4, ACTIONS(3778), 1, anon_sym_COMMA, ACTIONS(3782), 1, anon_sym_GT, STATE(1587), 1, aux_sym_type_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52323] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(2980), 1, anon_sym_COLON_COLON, STATE(982), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52337] = 4, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4289), 1, anon_sym_SEMI, ACTIONS(4291), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52351] = 4, ACTIONS(4293), 1, anon_sym_SEMI, ACTIONS(4295), 1, anon_sym_EQ, ACTIONS(4297), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52365] = 4, ACTIONS(3279), 1, anon_sym_RBRACE, ACTIONS(4299), 1, anon_sym_COMMA, STATE(1791), 1, aux_sym_storage_content_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52379] = 4, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(4301), 1, anon_sym_EQ, STATE(2094), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52393] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4303), 2, anon_sym_COMMA, anon_sym_RPAREN, [52405] = 4, ACTIONS(2006), 1, anon_sym_LBRACE, ACTIONS(4305), 1, anon_sym_COLON_COLON, STATE(729), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52419] = 4, ACTIONS(1960), 1, anon_sym_RPAREN, ACTIONS(4307), 1, anon_sym_COMMA, STATE(1763), 1, aux_sym_tuple_type_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52433] = 3, ACTIONS(4311), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4309), 2, anon_sym_COMMA, anon_sym_RBRACE, [52445] = 4, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4313), 1, anon_sym_SEMI, ACTIONS(4315), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52459] = 4, ACTIONS(4317), 1, anon_sym_COMMA, ACTIONS(4319), 1, anon_sym_RPAREN, STATE(1613), 1, aux_sym_ordered_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52473] = 3, ACTIONS(3424), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(2958), 2, anon_sym_DOT_DOT_DOT, anon_sym_DOT_DOT_EQ, [52485] = 4, ACTIONS(3388), 1, anon_sym_GT, ACTIONS(4321), 1, anon_sym_COMMA, STATE(1639), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52499] = 4, ACTIONS(1769), 1, anon_sym_RPAREN, ACTIONS(4323), 1, anon_sym_COMMA, STATE(1544), 1, aux_sym_tuple_pattern_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52513] = 4, ACTIONS(3390), 1, anon_sym_GT, ACTIONS(4325), 1, anon_sym_COMMA, STATE(1639), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52527] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4327), 3, anon_sym_COMMA, anon_sym_EQ, anon_sym_GT, [52537] = 4, ACTIONS(4329), 1, anon_sym_COMMA, ACTIONS(4332), 1, anon_sym_RBRACE, STATE(1791), 1, aux_sym_storage_content_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52551] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4334), 2, anon_sym_COMMA, anon_sym_RPAREN, [52563] = 4, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(4336), 1, anon_sym_EQ, STATE(2182), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52577] = 4, ACTIONS(1823), 1, anon_sym_GT, ACTIONS(4338), 1, anon_sym_COMMA, STATE(1583), 1, aux_sym_type_arguments_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52591] = 4, ACTIONS(3295), 1, anon_sym_LBRACE, ACTIONS(4340), 1, anon_sym_SEMI, STATE(1042), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52605] = 4, ACTIONS(3374), 1, anon_sym_GT, ACTIONS(4342), 1, anon_sym_COMMA, STATE(1639), 1, aux_sym_type_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52619] = 4, ACTIONS(3233), 1, anon_sym_LT, ACTIONS(4344), 1, anon_sym_EQ, STATE(2185), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52633] = 4, ACTIONS(4346), 1, anon_sym_COMMA, ACTIONS(4348), 1, anon_sym_RBRACE, STATE(1767), 1, aux_sym_field_initializer_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52647] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4350), 1, anon_sym_SEMI, STATE(294), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52661] = 4, ACTIONS(3227), 1, anon_sym_where, ACTIONS(4352), 1, anon_sym_SEMI, STATE(2161), 1, sym_where_clause, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52675] = 4, ACTIONS(3414), 1, anon_sym_LBRACE, ACTIONS(4354), 1, anon_sym_SEMI, STATE(329), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52689] = 4, ACTIONS(3848), 1, anon_sym_COMMA, ACTIONS(4356), 1, anon_sym_PIPE, STATE(1759), 1, aux_sym_closure_parameters_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52703] = 4, ACTIONS(4358), 1, anon_sym_COMMA, ACTIONS(4360), 1, anon_sym_RBRACE, STATE(1599), 1, aux_sym_field_declaration_list_repeat1, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52717] = 4, ACTIONS(2044), 1, anon_sym_LT2, ACTIONS(4130), 1, sym_identifier, STATE(1130), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52731] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(4362), 1, anon_sym_in, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52742] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4062), 2, anon_sym_COMMA, anon_sym_RBRACE, [52751] = 3, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(308), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52762] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4364), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52773] = 3, ACTIONS(3017), 1, anon_sym_COLON_COLON, ACTIONS(4366), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52784] = 3, ACTIONS(3344), 1, anon_sym_COLON_COLON, ACTIONS(4368), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52795] = 3, ACTIONS(3346), 1, anon_sym_COLON_COLON, ACTIONS(4368), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52806] = 3, ACTIONS(3350), 1, anon_sym_COLON_COLON, ACTIONS(4368), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52817] = 3, ACTIONS(3017), 1, anon_sym_COLON_COLON, ACTIONS(4370), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52828] = 3, ACTIONS(3237), 1, anon_sym_LBRACE, STATE(1051), 1, sym_field_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52839] = 3, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1052), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52850] = 3, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1053), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52861] = 3, ACTIONS(3344), 1, anon_sym_COLON_COLON, ACTIONS(4372), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52872] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4374), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52883] = 3, ACTIONS(3346), 1, anon_sym_COLON_COLON, ACTIONS(4372), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52894] = 3, ACTIONS(3350), 1, anon_sym_COLON_COLON, ACTIONS(4372), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52905] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4376), 2, anon_sym_COMMA, anon_sym_RBRACE, [52914] = 3, ACTIONS(3447), 1, anon_sym_LBRACE, STATE(1059), 1, sym_enum_variant_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52925] = 3, ACTIONS(3509), 1, anon_sym_LBRACE, STATE(277), 1, sym_enum_variant_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52936] = 3, ACTIONS(3237), 1, anon_sym_LBRACE, STATE(1062), 1, sym_field_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52947] = 3, ACTIONS(3509), 1, anon_sym_LBRACE, STATE(376), 1, sym_enum_variant_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52958] = 3, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1065), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52969] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3776), 2, anon_sym_COMMA, anon_sym_RPAREN, [52978] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(683), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [52989] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4378), 2, anon_sym_SEMI, anon_sym_where, [52998] = 3, ACTIONS(2775), 1, anon_sym_LBRACE, ACTIONS(4380), 1, anon_sym_AMP_AMP, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53009] = 3, ACTIONS(4380), 1, anon_sym_AMP_AMP, ACTIONS(4382), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53020] = 3, ACTIONS(3229), 1, anon_sym_LBRACE, STATE(280), 1, sym_field_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53031] = 3, ACTIONS(69), 1, anon_sym_LBRACE, STATE(42), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53042] = 3, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(281), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53053] = 3, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(282), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53064] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4384), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53075] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1419), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53086] = 3, ACTIONS(4386), 1, sym_identifier, ACTIONS(4388), 1, sym_integer_literal, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53097] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(4390), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53108] = 3, ACTIONS(3229), 1, anon_sym_LBRACE, STATE(401), 1, sym_field_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53119] = 3, ACTIONS(4392), 1, anon_sym_LBRACK, ACTIONS(4394), 1, anon_sym_BANG, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53130] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4396), 2, anon_sym_COMMA, anon_sym_RPAREN, [53139] = 3, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(402), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53150] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1209), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53161] = 3, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(403), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53172] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4398), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53183] = 3, ACTIONS(4400), 1, anon_sym_for, ACTIONS(4402), 1, anon_sym_while, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53194] = 3, ACTIONS(1982), 1, anon_sym_LT2, STATE(697), 1, sym_type_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53205] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2121), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53216] = 3, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1086), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53227] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4404), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53238] = 3, ACTIONS(2124), 1, anon_sym_LPAREN, STATE(699), 1, sym_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53249] = 3, ACTIONS(2180), 1, anon_sym_COLON, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53260] = 3, ACTIONS(2184), 1, anon_sym_COLON, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53271] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4406), 2, sym_identifier, sym_metavariable, [53280] = 3, ACTIONS(4408), 1, anon_sym_LBRACE, STATE(71), 1, sym_asm_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53291] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4410), 2, anon_sym_COMMA, anon_sym_RBRACE, [53300] = 3, ACTIONS(3447), 1, anon_sym_LBRACE, STATE(1094), 1, sym_enum_variant_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53311] = 3, ACTIONS(3237), 1, anon_sym_LBRACE, STATE(1097), 1, sym_field_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53322] = 3, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1098), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53333] = 3, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1099), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53344] = 3, ACTIONS(3579), 1, anon_sym_COLON, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53355] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4412), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53366] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4414), 2, anon_sym_SEMI, anon_sym_where, [53375] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4416), 2, anon_sym_SEMI, anon_sym_where, [53384] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4418), 2, anon_sym_SEMI, anon_sym_where, [53393] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4420), 2, anon_sym_const, sym_mutable_specifier, [53402] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4167), 2, anon_sym_COMMA, anon_sym_RBRACE, [53411] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4422), 2, anon_sym_SEMI, anon_sym_where, [53420] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4424), 2, anon_sym_RBRACK, anon_sym_COMMA, [53429] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4426), 2, anon_sym_RBRACE, sym_identifier, [53438] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(4428), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53449] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4430), 2, anon_sym_RBRACK, anon_sym_COMMA, [53458] = 3, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1123), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53469] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4432), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53480] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3860), 2, anon_sym_COMMA, anon_sym_RPAREN, [53489] = 3, ACTIONS(2124), 1, anon_sym_LPAREN, STATE(691), 1, sym_arguments, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53500] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(675), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53511] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3963), 2, anon_sym_COMMA, anon_sym_GT, [53520] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4434), 2, sym_identifier, sym_metavariable, [53529] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1211), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53540] = 4, ACTIONS(3), 1, sym_block_comment, ACTIONS(1689), 1, sym_line_comment, ACTIONS(4436), 1, anon_sym_SEMI, ACTIONS(4438), 1, anon_sym_SPACE, [53553] = 3, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(240), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53564] = 3, ACTIONS(4440), 1, sym_identifier, ACTIONS(4442), 1, sym_mutable_specifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53575] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4444), 2, anon_sym_RBRACE, sym_identifier, [53584] = 3, ACTIONS(677), 1, anon_sym_LBRACE, STATE(221), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53595] = 3, ACTIONS(677), 1, anon_sym_LBRACE, STATE(209), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53606] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4446), 2, anon_sym_const, sym_mutable_specifier, [53615] = 3, ACTIONS(677), 1, anon_sym_LBRACE, STATE(219), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53626] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(1996), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53637] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3911), 2, anon_sym_COMMA, anon_sym_GT, [53646] = 3, ACTIONS(4448), 1, anon_sym_LBRACE, STATE(1159), 1, sym_asm_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53657] = 3, ACTIONS(3780), 1, anon_sym_PLUS, ACTIONS(4450), 1, anon_sym_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53668] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4249), 2, anon_sym_COMMA, anon_sym_PIPE, [53677] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4452), 2, anon_sym_SEMI, anon_sym_where, [53686] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4454), 2, anon_sym_SEMI, anon_sym_where, [53695] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4456), 2, anon_sym_SEMI, anon_sym_where, [53704] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3978), 2, anon_sym_COMMA, anon_sym_RBRACE, [53713] = 3, ACTIONS(677), 1, anon_sym_LBRACE, STATE(213), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53724] = 3, ACTIONS(4458), 1, anon_sym_LPAREN, STATE(1856), 1, sym_asm_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53735] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2183), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53746] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2105), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53757] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2061), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53768] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4460), 2, sym_float_literal, sym_integer_literal, [53777] = 3, ACTIONS(4462), 1, anon_sym_in, ACTIONS(4464), 1, sym_self, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53788] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1414), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53799] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4466), 2, anon_sym_SEMI, anon_sym_where, [53808] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4468), 2, sym_identifier, sym_metavariable, [53817] = 3, ACTIONS(83), 1, anon_sym_PIPE, STATE(99), 1, sym_closure_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53828] = 3, ACTIONS(3509), 1, anon_sym_LBRACE, STATE(231), 1, sym_enum_variant_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53839] = 3, ACTIONS(1803), 1, anon_sym_LBRACE, STATE(1226), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53850] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4470), 2, anon_sym_SEMI, anon_sym_where, [53859] = 3, ACTIONS(3509), 1, anon_sym_LBRACE, STATE(246), 1, sym_enum_variant_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53870] = 3, ACTIONS(2775), 1, anon_sym_EQ_GT, ACTIONS(4472), 1, anon_sym_AMP_AMP, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53881] = 3, ACTIONS(4474), 1, anon_sym_LBRACK, ACTIONS(4476), 1, anon_sym_BANG, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53892] = 3, ACTIONS(4458), 1, anon_sym_LPAREN, STATE(1934), 1, sym_asm_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53903] = 3, ACTIONS(4382), 1, anon_sym_EQ_GT, ACTIONS(4472), 1, anon_sym_AMP_AMP, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53914] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(657), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53925] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1848), 2, anon_sym_COMMA, anon_sym_GT, [53934] = 3, ACTIONS(1978), 1, anon_sym_LPAREN, STATE(658), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53945] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4478), 2, anon_sym_SEMI, anon_sym_where, [53954] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(1999), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53965] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4480), 2, anon_sym_const, sym_mutable_specifier, [53974] = 3, ACTIONS(3229), 1, anon_sym_LBRACE, STATE(349), 1, sym_field_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53985] = 3, ACTIONS(3229), 1, anon_sym_LBRACE, STATE(234), 1, sym_field_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [53996] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2036), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54007] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1340), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54018] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4482), 2, anon_sym_const, sym_mutable_specifier, [54027] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1431), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54038] = 3, ACTIONS(4484), 1, anon_sym_in, ACTIONS(4486), 1, sym_self, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54049] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(724), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54060] = 3, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(237), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54071] = 3, ACTIONS(3370), 1, anon_sym_COLON, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54082] = 3, ACTIONS(4488), 1, anon_sym_LBRACE, STATE(727), 1, sym_asm_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54093] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1392), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54104] = 3, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(352), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54115] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1348), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54126] = 3, ACTIONS(3305), 1, anon_sym_LBRACE, STATE(268), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54137] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2126), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54148] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3933), 2, anon_sym_COMMA, anon_sym_RBRACE, [54157] = 3, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(4490), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54168] = 3, ACTIONS(3447), 1, anon_sym_LBRACE, STATE(1004), 1, sym_enum_variant_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54179] = 3, ACTIONS(3233), 1, anon_sym_LT, STATE(575), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54190] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4259), 2, anon_sym_COMMA, anon_sym_RBRACE, [54199] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4492), 2, anon_sym_SEMI, anon_sym_where, [54208] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(4494), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54219] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4496), 2, anon_sym_SEMI, anon_sym_where, [54228] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2037), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54239] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1840), 2, anon_sym_RBRACK, anon_sym_COMMA, [54248] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(4498), 1, anon_sym_in, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54259] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1403), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54270] = 3, ACTIONS(69), 1, anon_sym_LBRACE, STATE(54), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54281] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4500), 2, anon_sym_SEMI, anon_sym_where, [54290] = 3, ACTIONS(1978), 1, anon_sym_LPAREN, STATE(649), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54301] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(3889), 2, anon_sym_RBRACK, anon_sym_COMMA, [54310] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2021), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54321] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2031), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54332] = 3, ACTIONS(3233), 1, anon_sym_LT, STATE(573), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54343] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(1844), 2, anon_sym_RBRACK, anon_sym_COMMA, [54352] = 3, ACTIONS(2057), 1, anon_sym_LPAREN, STATE(1409), 1, sym_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54363] = 3, ACTIONS(3237), 1, anon_sym_LBRACE, STATE(1016), 1, sym_field_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54374] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2070), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54385] = 3, ACTIONS(3295), 1, anon_sym_LBRACE, STATE(1019), 1, sym_declaration_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54396] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2073), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54407] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2089), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54418] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4287), 2, anon_sym_COMMA, anon_sym_RPAREN, [54427] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2096), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54438] = 3, ACTIONS(4458), 1, anon_sym_LPAREN, STATE(1892), 1, sym_asm_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54449] = 3, ACTIONS(3233), 1, anon_sym_LT, STATE(546), 1, sym_type_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54460] = 3, ACTIONS(2006), 1, anon_sym_LBRACE, STATE(729), 1, sym_field_initializer_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54471] = 3, ACTIONS(3447), 1, anon_sym_LBRACE, STATE(1033), 1, sym_enum_variant_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54482] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4502), 2, sym_identifier, sym_metavariable, [54491] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4332), 2, anon_sym_COMMA, anon_sym_RBRACE, [54500] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(4504), 1, anon_sym_in, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54511] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(4506), 1, anon_sym_in, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54522] = 3, ACTIONS(4210), 1, anon_sym_LBRACE, STATE(242), 1, sym_storage_content_list, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54533] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4508), 2, sym_identifier, sym_metavariable, [54542] = 3, ACTIONS(4510), 1, anon_sym_for, ACTIONS(4512), 1, anon_sym_while, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54553] = 3, ACTIONS(3297), 1, anon_sym_COLON, STATE(1756), 1, sym_trait_bounds, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54564] = 3, ACTIONS(83), 1, anon_sym_PIPE, STATE(102), 1, sym_closure_parameters, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54575] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4008), 2, anon_sym_RBRACE, sym_identifier, [54584] = 2, ACTIONS(3), 2, sym_block_comment, sym_line_comment, ACTIONS(4514), 2, sym_identifier, sym_metavariable, [54593] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(4516), 1, anon_sym_in, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54604] = 3, ACTIONS(2332), 1, anon_sym_COLON, ACTIONS(3406), 1, anon_sym_PLUS, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54615] = 3, ACTIONS(3583), 1, anon_sym_PIPE, ACTIONS(4518), 1, anon_sym_in, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54626] = 3, ACTIONS(4520), 1, anon_sym_for, ACTIONS(4522), 1, anon_sym_while, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54637] = 3, ACTIONS(69), 1, anon_sym_LBRACE, STATE(69), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54648] = 3, ACTIONS(283), 1, anon_sym_LBRACE, STATE(2058), 1, sym_block, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54659] = 2, ACTIONS(4524), 1, anon_sym_fn, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54667] = 2, ACTIONS(4206), 1, anon_sym_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54675] = 2, ACTIONS(4526), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54683] = 2, ACTIONS(4528), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54691] = 2, ACTIONS(4530), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54699] = 2, ACTIONS(4532), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54707] = 2, ACTIONS(4534), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54715] = 2, ACTIONS(4536), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54723] = 2, ACTIONS(4106), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54731] = 2, ACTIONS(4538), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54739] = 2, ACTIONS(4540), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54747] = 2, ACTIONS(3346), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54755] = 2, ACTIONS(4542), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54763] = 2, ACTIONS(4544), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54771] = 2, ACTIONS(4546), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54779] = 2, ACTIONS(4548), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54787] = 2, ACTIONS(4550), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54795] = 2, ACTIONS(3991), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54803] = 2, ACTIONS(4140), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54811] = 2, ACTIONS(4552), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54819] = 2, ACTIONS(651), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54827] = 2, ACTIONS(4130), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54835] = 2, ACTIONS(4554), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54843] = 2, ACTIONS(4556), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54851] = 2, ACTIONS(4558), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54859] = 2, ACTIONS(4560), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54867] = 2, ACTIONS(4562), 1, sym_integer_literal, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54875] = 2, ACTIONS(4564), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54883] = 2, ACTIONS(4566), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54891] = 2, ACTIONS(4568), 1, ts_builtin_sym_end, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54899] = 2, ACTIONS(4132), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54907] = 2, ACTIONS(4570), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54915] = 2, ACTIONS(4572), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54923] = 2, ACTIONS(4574), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54931] = 2, ACTIONS(4576), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54939] = 2, ACTIONS(3726), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54947] = 2, ACTIONS(4578), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54955] = 2, ACTIONS(4580), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54963] = 2, ACTIONS(4582), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54971] = 2, ACTIONS(4584), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54979] = 2, ACTIONS(4586), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54987] = 2, ACTIONS(4588), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [54995] = 2, ACTIONS(4590), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55003] = 2, ACTIONS(4592), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55011] = 2, ACTIONS(4594), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55019] = 2, ACTIONS(4596), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55027] = 2, ACTIONS(4598), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55035] = 2, ACTIONS(4600), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55043] = 2, ACTIONS(4602), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55051] = 2, ACTIONS(4604), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55059] = 2, ACTIONS(4606), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55067] = 2, ACTIONS(4018), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55075] = 2, ACTIONS(3021), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55083] = 2, ACTIONS(4608), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55091] = 2, ACTIONS(4610), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55099] = 2, ACTIONS(4612), 1, sym_integer_literal, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55107] = 2, ACTIONS(4360), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55115] = 2, ACTIONS(4474), 1, anon_sym_LBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55123] = 2, ACTIONS(2590), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55131] = 2, ACTIONS(4614), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55139] = 2, ACTIONS(2978), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55147] = 2, ACTIONS(2976), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55155] = 2, ACTIONS(4616), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55163] = 2, ACTIONS(3969), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55171] = 2, ACTIONS(4618), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55179] = 2, ACTIONS(4620), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55187] = 2, ACTIONS(4622), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55195] = 2, ACTIONS(3659), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55203] = 2, ACTIONS(4624), 1, anon_sym_fn, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55211] = 2, ACTIONS(4626), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55219] = 2, ACTIONS(4628), 1, anon_sym_fn, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55227] = 2, ACTIONS(4630), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55235] = 2, ACTIONS(4632), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55243] = 2, ACTIONS(4634), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55251] = 2, ACTIONS(4636), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55259] = 2, ACTIONS(4638), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55267] = 2, ACTIONS(4640), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55275] = 2, ACTIONS(4642), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55283] = 2, ACTIONS(4644), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55291] = 2, ACTIONS(4646), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55299] = 2, ACTIONS(4648), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55307] = 2, ACTIONS(4650), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55315] = 2, ACTIONS(4652), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55323] = 2, ACTIONS(4654), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55331] = 2, ACTIONS(4656), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55339] = 2, ACTIONS(4658), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55347] = 2, ACTIONS(4660), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55355] = 2, ACTIONS(4662), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55363] = 2, ACTIONS(4664), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55371] = 2, ACTIONS(2100), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55379] = 2, ACTIONS(4666), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55387] = 2, ACTIONS(4039), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55395] = 2, ACTIONS(4668), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55403] = 2, ACTIONS(3939), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55411] = 2, ACTIONS(4670), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55419] = 2, ACTIONS(2980), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55427] = 2, ACTIONS(4212), 1, anon_sym_DOT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55435] = 2, ACTIONS(4672), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55443] = 2, ACTIONS(4674), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55451] = 2, ACTIONS(4676), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55459] = 2, ACTIONS(4678), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55467] = 2, ACTIONS(4680), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55475] = 2, ACTIONS(4682), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55483] = 2, ACTIONS(3806), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55491] = 2, ACTIONS(4245), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55499] = 2, ACTIONS(4684), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55507] = 2, ACTIONS(4686), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55515] = 2, ACTIONS(4688), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55523] = 2, ACTIONS(4084), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55531] = 2, ACTIONS(4690), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55539] = 2, ACTIONS(4692), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55547] = 2, ACTIONS(4694), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55555] = 2, ACTIONS(4696), 1, anon_sym_LBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55563] = 2, ACTIONS(4698), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55571] = 2, ACTIONS(4700), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55579] = 2, ACTIONS(4702), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55587] = 2, ACTIONS(4704), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55595] = 2, ACTIONS(4706), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55603] = 2, ACTIONS(4708), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55611] = 2, ACTIONS(4710), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55619] = 2, ACTIONS(4712), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55627] = 2, ACTIONS(4714), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55635] = 2, ACTIONS(3900), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55643] = 2, ACTIONS(4716), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55651] = 2, ACTIONS(4266), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55659] = 2, ACTIONS(4718), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55667] = 2, ACTIONS(4720), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55675] = 2, ACTIONS(4722), 1, anon_sym_fn, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55683] = 2, ACTIONS(4348), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55691] = 2, ACTIONS(3493), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55699] = 2, ACTIONS(4146), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55707] = 2, ACTIONS(4724), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55715] = 2, ACTIONS(4726), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55723] = 2, ACTIONS(4728), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55731] = 2, ACTIONS(4730), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55739] = 2, ACTIONS(4732), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55747] = 2, ACTIONS(4734), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55755] = 2, ACTIONS(4736), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55763] = 2, ACTIONS(4068), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55771] = 2, ACTIONS(4738), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55779] = 2, ACTIONS(3736), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55787] = 2, ACTIONS(4740), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55795] = 2, ACTIONS(4742), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55803] = 2, ACTIONS(4744), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55811] = 2, ACTIONS(439), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55819] = 2, ACTIONS(3581), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55827] = 2, ACTIONS(4746), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55835] = 2, ACTIONS(4748), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55843] = 2, ACTIONS(4750), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55851] = 2, ACTIONS(4752), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55859] = 2, ACTIONS(4754), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55867] = 2, ACTIONS(4756), 1, sym_integer_literal, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55875] = 2, ACTIONS(4758), 1, anon_sym_LBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55883] = 2, ACTIONS(4760), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55891] = 2, ACTIONS(2098), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55899] = 2, ACTIONS(2102), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55907] = 2, ACTIONS(3489), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55915] = 2, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55923] = 2, ACTIONS(4762), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55931] = 2, ACTIONS(4764), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55939] = 2, ACTIONS(4766), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55947] = 2, ACTIONS(4082), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55955] = 2, ACTIONS(4768), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55963] = 2, ACTIONS(4770), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55971] = 2, ACTIONS(4772), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55979] = 2, ACTIONS(4774), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55987] = 2, ACTIONS(4776), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [55995] = 2, ACTIONS(4778), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56003] = 2, ACTIONS(4238), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56011] = 2, ACTIONS(4780), 1, anon_sym_LBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56019] = 2, ACTIONS(4032), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56027] = 2, ACTIONS(3424), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56035] = 2, ACTIONS(4782), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56043] = 2, ACTIONS(4784), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56051] = 2, ACTIONS(3549), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56059] = 2, ACTIONS(3547), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56067] = 2, ACTIONS(4786), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56075] = 2, ACTIONS(4788), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56083] = 2, ACTIONS(4790), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56091] = 2, ACTIONS(4792), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56099] = 2, ACTIONS(4794), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56107] = 2, ACTIONS(4796), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56115] = 2, ACTIONS(3682), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56123] = 2, ACTIONS(4798), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56131] = 2, ACTIONS(4800), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56139] = 2, ACTIONS(4802), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56147] = 2, ACTIONS(4804), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56155] = 2, ACTIONS(4806), 1, anon_sym_LBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56163] = 2, ACTIONS(4808), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56171] = 2, ACTIONS(4810), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56179] = 2, ACTIONS(4812), 1, anon_sym_COLON_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56187] = 2, ACTIONS(4162), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56195] = 2, ACTIONS(4814), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56203] = 2, ACTIONS(4816), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56211] = 2, ACTIONS(4818), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56219] = 2, ACTIONS(4820), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56227] = 2, ACTIONS(4822), 1, anon_sym_EQ, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56235] = 2, ACTIONS(4824), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56243] = 2, ACTIONS(3187), 1, anon_sym_fn, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56251] = 2, ACTIONS(4096), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56259] = 2, ACTIONS(4826), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56267] = 2, ACTIONS(4828), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56275] = 2, ACTIONS(4057), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56283] = 2, ACTIONS(4830), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56291] = 2, ACTIONS(3167), 1, anon_sym_fn, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56299] = 2, ACTIONS(4832), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56307] = 2, ACTIONS(4834), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56315] = 2, ACTIONS(4836), 1, anon_sym_fn, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56323] = 2, ACTIONS(4838), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56331] = 2, ACTIONS(4840), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56339] = 2, ACTIONS(4842), 1, anon_sym_COLON, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56347] = 2, ACTIONS(4844), 1, anon_sym_LBRACK, ACTIONS(3), 2, sym_block_comment, sym_line_comment, [56355] = 2, ACTIONS(4846), 1, sym_identifier, ACTIONS(3), 2, sym_block_comment, sym_line_comment, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(490)] = 0, [SMALL_STATE(491)] = 128, [SMALL_STATE(492)] = 253, [SMALL_STATE(493)] = 378, [SMALL_STATE(494)] = 503, [SMALL_STATE(495)] = 628, [SMALL_STATE(496)] = 753, [SMALL_STATE(497)] = 878, [SMALL_STATE(498)] = 1000, [SMALL_STATE(499)] = 1122, [SMALL_STATE(500)] = 1188, [SMALL_STATE(501)] = 1254, [SMALL_STATE(502)] = 1376, [SMALL_STATE(503)] = 1442, [SMALL_STATE(504)] = 1508, [SMALL_STATE(505)] = 1627, [SMALL_STATE(506)] = 1746, [SMALL_STATE(507)] = 1865, [SMALL_STATE(508)] = 1984, [SMALL_STATE(509)] = 2103, [SMALL_STATE(510)] = 2222, [SMALL_STATE(511)] = 2341, [SMALL_STATE(512)] = 2456, [SMALL_STATE(513)] = 2568, [SMALL_STATE(514)] = 2680, [SMALL_STATE(515)] = 2792, [SMALL_STATE(516)] = 2904, [SMALL_STATE(517)] = 3016, [SMALL_STATE(518)] = 3128, [SMALL_STATE(519)] = 3240, [SMALL_STATE(520)] = 3352, [SMALL_STATE(521)] = 3464, [SMALL_STATE(522)] = 3576, [SMALL_STATE(523)] = 3688, [SMALL_STATE(524)] = 3800, [SMALL_STATE(525)] = 3912, [SMALL_STATE(526)] = 4021, [SMALL_STATE(527)] = 4130, [SMALL_STATE(528)] = 4239, [SMALL_STATE(529)] = 4348, [SMALL_STATE(530)] = 4457, [SMALL_STATE(531)] = 4566, [SMALL_STATE(532)] = 4675, [SMALL_STATE(533)] = 4784, [SMALL_STATE(534)] = 4893, [SMALL_STATE(535)] = 5002, [SMALL_STATE(536)] = 5111, [SMALL_STATE(537)] = 5220, [SMALL_STATE(538)] = 5329, [SMALL_STATE(539)] = 5438, [SMALL_STATE(540)] = 5547, [SMALL_STATE(541)] = 5656, [SMALL_STATE(542)] = 5765, [SMALL_STATE(543)] = 5874, [SMALL_STATE(544)] = 5983, [SMALL_STATE(545)] = 6092, [SMALL_STATE(546)] = 6201, [SMALL_STATE(547)] = 6310, [SMALL_STATE(548)] = 6419, [SMALL_STATE(549)] = 6528, [SMALL_STATE(550)] = 6637, [SMALL_STATE(551)] = 6746, [SMALL_STATE(552)] = 6855, [SMALL_STATE(553)] = 6964, [SMALL_STATE(554)] = 7073, [SMALL_STATE(555)] = 7182, [SMALL_STATE(556)] = 7291, [SMALL_STATE(557)] = 7400, [SMALL_STATE(558)] = 7509, [SMALL_STATE(559)] = 7618, [SMALL_STATE(560)] = 7727, [SMALL_STATE(561)] = 7836, [SMALL_STATE(562)] = 7945, [SMALL_STATE(563)] = 8054, [SMALL_STATE(564)] = 8163, [SMALL_STATE(565)] = 8272, [SMALL_STATE(566)] = 8381, [SMALL_STATE(567)] = 8490, [SMALL_STATE(568)] = 8599, [SMALL_STATE(569)] = 8708, [SMALL_STATE(570)] = 8817, [SMALL_STATE(571)] = 8926, [SMALL_STATE(572)] = 9035, [SMALL_STATE(573)] = 9144, [SMALL_STATE(574)] = 9253, [SMALL_STATE(575)] = 9362, [SMALL_STATE(576)] = 9471, [SMALL_STATE(577)] = 9580, [SMALL_STATE(578)] = 9689, [SMALL_STATE(579)] = 9798, [SMALL_STATE(580)] = 9907, [SMALL_STATE(581)] = 10016, [SMALL_STATE(582)] = 10125, [SMALL_STATE(583)] = 10234, [SMALL_STATE(584)] = 10343, [SMALL_STATE(585)] = 10452, [SMALL_STATE(586)] = 10561, [SMALL_STATE(587)] = 10670, [SMALL_STATE(588)] = 10779, [SMALL_STATE(589)] = 10888, [SMALL_STATE(590)] = 10997, [SMALL_STATE(591)] = 11106, [SMALL_STATE(592)] = 11215, [SMALL_STATE(593)] = 11324, [SMALL_STATE(594)] = 11433, [SMALL_STATE(595)] = 11542, [SMALL_STATE(596)] = 11651, [SMALL_STATE(597)] = 11760, [SMALL_STATE(598)] = 11869, [SMALL_STATE(599)] = 11978, [SMALL_STATE(600)] = 12087, [SMALL_STATE(601)] = 12196, [SMALL_STATE(602)] = 12305, [SMALL_STATE(603)] = 12414, [SMALL_STATE(604)] = 12523, [SMALL_STATE(605)] = 12632, [SMALL_STATE(606)] = 12741, [SMALL_STATE(607)] = 12850, [SMALL_STATE(608)] = 12959, [SMALL_STATE(609)] = 13068, [SMALL_STATE(610)] = 13177, [SMALL_STATE(611)] = 13286, [SMALL_STATE(612)] = 13395, [SMALL_STATE(613)] = 13504, [SMALL_STATE(614)] = 13613, [SMALL_STATE(615)] = 13722, [SMALL_STATE(616)] = 13831, [SMALL_STATE(617)] = 13899, [SMALL_STATE(618)] = 13959, [SMALL_STATE(619)] = 14027, [SMALL_STATE(620)] = 14085, [SMALL_STATE(621)] = 14143, [SMALL_STATE(622)] = 14200, [SMALL_STATE(623)] = 14257, [SMALL_STATE(624)] = 14322, [SMALL_STATE(625)] = 14379, [SMALL_STATE(626)] = 14444, [SMALL_STATE(627)] = 14504, [SMALL_STATE(628)] = 14566, [SMALL_STATE(629)] = 14624, [SMALL_STATE(630)] = 14686, [SMALL_STATE(631)] = 14744, [SMALL_STATE(632)] = 14802, [SMALL_STATE(633)] = 14860, [SMALL_STATE(634)] = 14923, [SMALL_STATE(635)] = 14978, [SMALL_STATE(636)] = 15033, [SMALL_STATE(637)] = 15106, [SMALL_STATE(638)] = 15161, [SMALL_STATE(639)] = 15216, [SMALL_STATE(640)] = 15271, [SMALL_STATE(641)] = 15326, [SMALL_STATE(642)] = 15381, [SMALL_STATE(643)] = 15438, [SMALL_STATE(644)] = 15495, [SMALL_STATE(645)] = 15550, [SMALL_STATE(646)] = 15607, [SMALL_STATE(647)] = 15664, [SMALL_STATE(648)] = 15721, [SMALL_STATE(649)] = 15778, [SMALL_STATE(650)] = 15835, [SMALL_STATE(651)] = 15890, [SMALL_STATE(652)] = 15945, [SMALL_STATE(653)] = 16002, [SMALL_STATE(654)] = 16061, [SMALL_STATE(655)] = 16116, [SMALL_STATE(656)] = 16171, [SMALL_STATE(657)] = 16226, [SMALL_STATE(658)] = 16285, [SMALL_STATE(659)] = 16342, [SMALL_STATE(660)] = 16397, [SMALL_STATE(661)] = 16454, [SMALL_STATE(662)] = 16511, [SMALL_STATE(663)] = 16568, [SMALL_STATE(664)] = 16625, [SMALL_STATE(665)] = 16682, [SMALL_STATE(666)] = 16737, [SMALL_STATE(667)] = 16792, [SMALL_STATE(668)] = 16847, [SMALL_STATE(669)] = 16902, [SMALL_STATE(670)] = 16959, [SMALL_STATE(671)] = 17013, [SMALL_STATE(672)] = 17067, [SMALL_STATE(673)] = 17121, [SMALL_STATE(674)] = 17175, [SMALL_STATE(675)] = 17229, [SMALL_STATE(676)] = 17283, [SMALL_STATE(677)] = 17337, [SMALL_STATE(678)] = 17409, [SMALL_STATE(679)] = 17463, [SMALL_STATE(680)] = 17517, [SMALL_STATE(681)] = 17571, [SMALL_STATE(682)] = 17625, [SMALL_STATE(683)] = 17679, [SMALL_STATE(684)] = 17733, [SMALL_STATE(685)] = 17787, [SMALL_STATE(686)] = 17841, [SMALL_STATE(687)] = 17895, [SMALL_STATE(688)] = 17949, [SMALL_STATE(689)] = 18003, [SMALL_STATE(690)] = 18057, [SMALL_STATE(691)] = 18111, [SMALL_STATE(692)] = 18165, [SMALL_STATE(693)] = 18219, [SMALL_STATE(694)] = 18273, [SMALL_STATE(695)] = 18327, [SMALL_STATE(696)] = 18381, [SMALL_STATE(697)] = 18435, [SMALL_STATE(698)] = 18489, [SMALL_STATE(699)] = 18543, [SMALL_STATE(700)] = 18597, [SMALL_STATE(701)] = 18651, [SMALL_STATE(702)] = 18705, [SMALL_STATE(703)] = 18759, [SMALL_STATE(704)] = 18813, [SMALL_STATE(705)] = 18867, [SMALL_STATE(706)] = 18921, [SMALL_STATE(707)] = 18975, [SMALL_STATE(708)] = 19029, [SMALL_STATE(709)] = 19083, [SMALL_STATE(710)] = 19137, [SMALL_STATE(711)] = 19191, [SMALL_STATE(712)] = 19245, [SMALL_STATE(713)] = 19301, [SMALL_STATE(714)] = 19355, [SMALL_STATE(715)] = 19409, [SMALL_STATE(716)] = 19463, [SMALL_STATE(717)] = 19517, [SMALL_STATE(718)] = 19571, [SMALL_STATE(719)] = 19625, [SMALL_STATE(720)] = 19679, [SMALL_STATE(721)] = 19733, [SMALL_STATE(722)] = 19787, [SMALL_STATE(723)] = 19841, [SMALL_STATE(724)] = 19895, [SMALL_STATE(725)] = 19949, [SMALL_STATE(726)] = 20005, [SMALL_STATE(727)] = 20059, [SMALL_STATE(728)] = 20113, [SMALL_STATE(729)] = 20167, [SMALL_STATE(730)] = 20221, [SMALL_STATE(731)] = 20275, [SMALL_STATE(732)] = 20329, [SMALL_STATE(733)] = 20383, [SMALL_STATE(734)] = 20455, [SMALL_STATE(735)] = 20509, [SMALL_STATE(736)] = 20563, [SMALL_STATE(737)] = 20617, [SMALL_STATE(738)] = 20671, [SMALL_STATE(739)] = 20725, [SMALL_STATE(740)] = 20781, [SMALL_STATE(741)] = 20835, [SMALL_STATE(742)] = 20889, [SMALL_STATE(743)] = 20945, [SMALL_STATE(744)] = 20999, [SMALL_STATE(745)] = 21053, [SMALL_STATE(746)] = 21107, [SMALL_STATE(747)] = 21161, [SMALL_STATE(748)] = 21217, [SMALL_STATE(749)] = 21271, [SMALL_STATE(750)] = 21327, [SMALL_STATE(751)] = 21381, [SMALL_STATE(752)] = 21435, [SMALL_STATE(753)] = 21489, [SMALL_STATE(754)] = 21551, [SMALL_STATE(755)] = 21605, [SMALL_STATE(756)] = 21659, [SMALL_STATE(757)] = 21742, [SMALL_STATE(758)] = 21803, [SMALL_STATE(759)] = 21856, [SMALL_STATE(760)] = 21939, [SMALL_STATE(761)] = 22004, [SMALL_STATE(762)] = 22091, [SMALL_STATE(763)] = 22144, [SMALL_STATE(764)] = 22219, [SMALL_STATE(765)] = 22282, [SMALL_STATE(766)] = 22351, [SMALL_STATE(767)] = 22430, [SMALL_STATE(768)] = 22511, [SMALL_STATE(769)] = 22584, [SMALL_STATE(770)] = 22667, [SMALL_STATE(771)] = 22738, [SMALL_STATE(772)] = 22821, [SMALL_STATE(773)] = 22882, [SMALL_STATE(774)] = 22943, [SMALL_STATE(775)] = 23010, [SMALL_STATE(776)] = 23093, [SMALL_STATE(777)] = 23176, [SMALL_STATE(778)] = 23263, [SMALL_STATE(779)] = 23323, [SMALL_STATE(780)] = 23383, [SMALL_STATE(781)] = 23443, [SMALL_STATE(782)] = 23533, [SMALL_STATE(783)] = 23623, [SMALL_STATE(784)] = 23683, [SMALL_STATE(785)] = 23743, [SMALL_STATE(786)] = 23799, [SMALL_STATE(787)] = 23858, [SMALL_STATE(788)] = 23917, [SMALL_STATE(789)] = 23976, [SMALL_STATE(790)] = 24035, [SMALL_STATE(791)] = 24092, [SMALL_STATE(792)] = 24151, [SMALL_STATE(793)] = 24210, [SMALL_STATE(794)] = 24293, [SMALL_STATE(795)] = 24376, [SMALL_STATE(796)] = 24435, [SMALL_STATE(797)] = 24494, [SMALL_STATE(798)] = 24550, [SMALL_STATE(799)] = 24606, [SMALL_STATE(800)] = 24658, [SMALL_STATE(801)] = 24744, [SMALL_STATE(802)] = 24796, [SMALL_STATE(803)] = 24852, [SMALL_STATE(804)] = 24904, [SMALL_STATE(805)] = 24960, [SMALL_STATE(806)] = 25046, [SMALL_STATE(807)] = 25098, [SMALL_STATE(808)] = 25151, [SMALL_STATE(809)] = 25204, [SMALL_STATE(810)] = 25259, [SMALL_STATE(811)] = 25314, [SMALL_STATE(812)] = 25367, [SMALL_STATE(813)] = 25456, [SMALL_STATE(814)] = 25511, [SMALL_STATE(815)] = 25566, [SMALL_STATE(816)] = 25617, [SMALL_STATE(817)] = 25706, [SMALL_STATE(818)] = 25757, [SMALL_STATE(819)] = 25810, [SMALL_STATE(820)] = 25860, [SMALL_STATE(821)] = 25912, [SMALL_STATE(822)] = 25960, [SMALL_STATE(823)] = 26008, [SMALL_STATE(824)] = 26060, [SMALL_STATE(825)] = 26110, [SMALL_STATE(826)] = 26160, [SMALL_STATE(827)] = 26208, [SMALL_STATE(828)] = 26258, [SMALL_STATE(829)] = 26308, [SMALL_STATE(830)] = 26394, [SMALL_STATE(831)] = 26480, [SMALL_STATE(832)] = 26530, [SMALL_STATE(833)] = 26578, [SMALL_STATE(834)] = 26656, [SMALL_STATE(835)] = 26706, [SMALL_STATE(836)] = 26753, [SMALL_STATE(837)] = 26836, [SMALL_STATE(838)] = 26919, [SMALL_STATE(839)] = 27002, [SMALL_STATE(840)] = 27085, [SMALL_STATE(841)] = 27168, [SMALL_STATE(842)] = 27251, [SMALL_STATE(843)] = 27334, [SMALL_STATE(844)] = 27417, [SMALL_STATE(845)] = 27464, [SMALL_STATE(846)] = 27511, [SMALL_STATE(847)] = 27594, [SMALL_STATE(848)] = 27677, [SMALL_STATE(849)] = 27754, [SMALL_STATE(850)] = 27829, [SMALL_STATE(851)] = 27912, [SMALL_STATE(852)] = 27995, [SMALL_STATE(853)] = 28078, [SMALL_STATE(854)] = 28125, [SMALL_STATE(855)] = 28208, [SMALL_STATE(856)] = 28255, [SMALL_STATE(857)] = 28338, [SMALL_STATE(858)] = 28421, [SMALL_STATE(859)] = 28504, [SMALL_STATE(860)] = 28587, [SMALL_STATE(861)] = 28642, [SMALL_STATE(862)] = 28689, [SMALL_STATE(863)] = 28746, [SMALL_STATE(864)] = 28827, [SMALL_STATE(865)] = 28910, [SMALL_STATE(866)] = 28991, [SMALL_STATE(867)] = 29074, [SMALL_STATE(868)] = 29155, [SMALL_STATE(869)] = 29236, [SMALL_STATE(870)] = 29317, [SMALL_STATE(871)] = 29400, [SMALL_STATE(872)] = 29477, [SMALL_STATE(873)] = 29560, [SMALL_STATE(874)] = 29643, [SMALL_STATE(875)] = 29724, [SMALL_STATE(876)] = 29801, [SMALL_STATE(877)] = 29884, [SMALL_STATE(878)] = 29943, [SMALL_STATE(879)] = 30026, [SMALL_STATE(880)] = 30095, [SMALL_STATE(881)] = 30178, [SMALL_STATE(882)] = 30241, [SMALL_STATE(883)] = 30314, [SMALL_STATE(884)] = 30389, [SMALL_STATE(885)] = 30470, [SMALL_STATE(886)] = 30537, [SMALL_STATE(887)] = 30618, [SMALL_STATE(888)] = 30683, [SMALL_STATE(889)] = 30766, [SMALL_STATE(890)] = 30827, [SMALL_STATE(891)] = 30908, [SMALL_STATE(892)] = 30991, [SMALL_STATE(893)] = 31074, [SMALL_STATE(894)] = 31151, [SMALL_STATE(895)] = 31234, [SMALL_STATE(896)] = 31315, [SMALL_STATE(897)] = 31398, [SMALL_STATE(898)] = 31475, [SMALL_STATE(899)] = 31524, [SMALL_STATE(900)] = 31607, [SMALL_STATE(901)] = 31662, [SMALL_STATE(902)] = 31743, [SMALL_STATE(903)] = 31792, [SMALL_STATE(904)] = 31843, [SMALL_STATE(905)] = 31926, [SMALL_STATE(906)] = 32001, [SMALL_STATE(907)] = 32082, [SMALL_STATE(908)] = 32159, [SMALL_STATE(909)] = 32214, [SMALL_STATE(910)] = 32294, [SMALL_STATE(911)] = 32372, [SMALL_STATE(912)] = 32444, [SMALL_STATE(913)] = 32524, [SMALL_STATE(914)] = 32604, [SMALL_STATE(915)] = 32684, [SMALL_STATE(916)] = 32764, [SMALL_STATE(917)] = 32844, [SMALL_STATE(918)] = 32916, [SMALL_STATE(919)] = 32996, [SMALL_STATE(920)] = 33074, [SMALL_STATE(921)] = 33146, [SMALL_STATE(922)] = 33226, [SMALL_STATE(923)] = 33306, [SMALL_STATE(924)] = 33386, [SMALL_STATE(925)] = 33464, [SMALL_STATE(926)] = 33544, [SMALL_STATE(927)] = 33624, [SMALL_STATE(928)] = 33704, [SMALL_STATE(929)] = 33782, [SMALL_STATE(930)] = 33862, [SMALL_STATE(931)] = 33934, [SMALL_STATE(932)] = 34014, [SMALL_STATE(933)] = 34094, [SMALL_STATE(934)] = 34174, [SMALL_STATE(935)] = 34254, [SMALL_STATE(936)] = 34334, [SMALL_STATE(937)] = 34406, [SMALL_STATE(938)] = 34486, [SMALL_STATE(939)] = 34566, [SMALL_STATE(940)] = 34646, [SMALL_STATE(941)] = 34726, [SMALL_STATE(942)] = 34803, [SMALL_STATE(943)] = 34848, [SMALL_STATE(944)] = 34893, [SMALL_STATE(945)] = 34938, [SMALL_STATE(946)] = 35018, [SMALL_STATE(947)] = 35098, [SMALL_STATE(948)] = 35178, [SMALL_STATE(949)] = 35258, [SMALL_STATE(950)] = 35338, [SMALL_STATE(951)] = 35381, [SMALL_STATE(952)] = 35426, [SMALL_STATE(953)] = 35469, [SMALL_STATE(954)] = 35512, [SMALL_STATE(955)] = 35577, [SMALL_STATE(956)] = 35642, [SMALL_STATE(957)] = 35707, [SMALL_STATE(958)] = 35772, [SMALL_STATE(959)] = 35837, [SMALL_STATE(960)] = 35899, [SMALL_STATE(961)] = 35961, [SMALL_STATE(962)] = 36023, [SMALL_STATE(963)] = 36082, [SMALL_STATE(964)] = 36141, [SMALL_STATE(965)] = 36177, [SMALL_STATE(966)] = 36213, [SMALL_STATE(967)] = 36249, [SMALL_STATE(968)] = 36292, [SMALL_STATE(969)] = 36322, [SMALL_STATE(970)] = 36352, [SMALL_STATE(971)] = 36382, [SMALL_STATE(972)] = 36412, [SMALL_STATE(973)] = 36442, [SMALL_STATE(974)] = 36469, [SMALL_STATE(975)] = 36498, [SMALL_STATE(976)] = 36525, [SMALL_STATE(977)] = 36552, [SMALL_STATE(978)] = 36581, [SMALL_STATE(979)] = 36610, [SMALL_STATE(980)] = 36639, [SMALL_STATE(981)] = 36665, [SMALL_STATE(982)] = 36691, [SMALL_STATE(983)] = 36717, [SMALL_STATE(984)] = 36743, [SMALL_STATE(985)] = 36769, [SMALL_STATE(986)] = 36805, [SMALL_STATE(987)] = 36839, [SMALL_STATE(988)] = 36865, [SMALL_STATE(989)] = 36891, [SMALL_STATE(990)] = 36917, [SMALL_STATE(991)] = 36943, [SMALL_STATE(992)] = 36969, [SMALL_STATE(993)] = 36995, [SMALL_STATE(994)] = 37021, [SMALL_STATE(995)] = 37057, [SMALL_STATE(996)] = 37080, [SMALL_STATE(997)] = 37103, [SMALL_STATE(998)] = 37126, [SMALL_STATE(999)] = 37149, [SMALL_STATE(1000)] = 37172, [SMALL_STATE(1001)] = 37199, [SMALL_STATE(1002)] = 37232, [SMALL_STATE(1003)] = 37255, [SMALL_STATE(1004)] = 37278, [SMALL_STATE(1005)] = 37301, [SMALL_STATE(1006)] = 37324, [SMALL_STATE(1007)] = 37347, [SMALL_STATE(1008)] = 37370, [SMALL_STATE(1009)] = 37395, [SMALL_STATE(1010)] = 37418, [SMALL_STATE(1011)] = 37441, [SMALL_STATE(1012)] = 37464, [SMALL_STATE(1013)] = 37487, [SMALL_STATE(1014)] = 37510, [SMALL_STATE(1015)] = 37533, [SMALL_STATE(1016)] = 37556, [SMALL_STATE(1017)] = 37579, [SMALL_STATE(1018)] = 37602, [SMALL_STATE(1019)] = 37625, [SMALL_STATE(1020)] = 37648, [SMALL_STATE(1021)] = 37671, [SMALL_STATE(1022)] = 37694, [SMALL_STATE(1023)] = 37717, [SMALL_STATE(1024)] = 37740, [SMALL_STATE(1025)] = 37763, [SMALL_STATE(1026)] = 37786, [SMALL_STATE(1027)] = 37809, [SMALL_STATE(1028)] = 37832, [SMALL_STATE(1029)] = 37855, [SMALL_STATE(1030)] = 37878, [SMALL_STATE(1031)] = 37901, [SMALL_STATE(1032)] = 37924, [SMALL_STATE(1033)] = 37947, [SMALL_STATE(1034)] = 37970, [SMALL_STATE(1035)] = 37997, [SMALL_STATE(1036)] = 38020, [SMALL_STATE(1037)] = 38043, [SMALL_STATE(1038)] = 38066, [SMALL_STATE(1039)] = 38089, [SMALL_STATE(1040)] = 38112, [SMALL_STATE(1041)] = 38135, [SMALL_STATE(1042)] = 38158, [SMALL_STATE(1043)] = 38181, [SMALL_STATE(1044)] = 38204, [SMALL_STATE(1045)] = 38227, [SMALL_STATE(1046)] = 38250, [SMALL_STATE(1047)] = 38273, [SMALL_STATE(1048)] = 38296, [SMALL_STATE(1049)] = 38319, [SMALL_STATE(1050)] = 38342, [SMALL_STATE(1051)] = 38365, [SMALL_STATE(1052)] = 38388, [SMALL_STATE(1053)] = 38411, [SMALL_STATE(1054)] = 38434, [SMALL_STATE(1055)] = 38457, [SMALL_STATE(1056)] = 38480, [SMALL_STATE(1057)] = 38503, [SMALL_STATE(1058)] = 38526, [SMALL_STATE(1059)] = 38549, [SMALL_STATE(1060)] = 38572, [SMALL_STATE(1061)] = 38595, [SMALL_STATE(1062)] = 38618, [SMALL_STATE(1063)] = 38641, [SMALL_STATE(1064)] = 38664, [SMALL_STATE(1065)] = 38687, [SMALL_STATE(1066)] = 38710, [SMALL_STATE(1067)] = 38733, [SMALL_STATE(1068)] = 38756, [SMALL_STATE(1069)] = 38779, [SMALL_STATE(1070)] = 38802, [SMALL_STATE(1071)] = 38825, [SMALL_STATE(1072)] = 38848, [SMALL_STATE(1073)] = 38871, [SMALL_STATE(1074)] = 38894, [SMALL_STATE(1075)] = 38917, [SMALL_STATE(1076)] = 38940, [SMALL_STATE(1077)] = 38963, [SMALL_STATE(1078)] = 38986, [SMALL_STATE(1079)] = 39009, [SMALL_STATE(1080)] = 39032, [SMALL_STATE(1081)] = 39055, [SMALL_STATE(1082)] = 39078, [SMALL_STATE(1083)] = 39101, [SMALL_STATE(1084)] = 39124, [SMALL_STATE(1085)] = 39147, [SMALL_STATE(1086)] = 39170, [SMALL_STATE(1087)] = 39193, [SMALL_STATE(1088)] = 39216, [SMALL_STATE(1089)] = 39243, [SMALL_STATE(1090)] = 39266, [SMALL_STATE(1091)] = 39289, [SMALL_STATE(1092)] = 39314, [SMALL_STATE(1093)] = 39337, [SMALL_STATE(1094)] = 39360, [SMALL_STATE(1095)] = 39383, [SMALL_STATE(1096)] = 39406, [SMALL_STATE(1097)] = 39429, [SMALL_STATE(1098)] = 39452, [SMALL_STATE(1099)] = 39475, [SMALL_STATE(1100)] = 39498, [SMALL_STATE(1101)] = 39521, [SMALL_STATE(1102)] = 39544, [SMALL_STATE(1103)] = 39567, [SMALL_STATE(1104)] = 39590, [SMALL_STATE(1105)] = 39613, [SMALL_STATE(1106)] = 39636, [SMALL_STATE(1107)] = 39659, [SMALL_STATE(1108)] = 39682, [SMALL_STATE(1109)] = 39705, [SMALL_STATE(1110)] = 39728, [SMALL_STATE(1111)] = 39751, [SMALL_STATE(1112)] = 39774, [SMALL_STATE(1113)] = 39797, [SMALL_STATE(1114)] = 39820, [SMALL_STATE(1115)] = 39843, [SMALL_STATE(1116)] = 39866, [SMALL_STATE(1117)] = 39889, [SMALL_STATE(1118)] = 39912, [SMALL_STATE(1119)] = 39935, [SMALL_STATE(1120)] = 39958, [SMALL_STATE(1121)] = 39981, [SMALL_STATE(1122)] = 40004, [SMALL_STATE(1123)] = 40027, [SMALL_STATE(1124)] = 40050, [SMALL_STATE(1125)] = 40073, [SMALL_STATE(1126)] = 40096, [SMALL_STATE(1127)] = 40119, [SMALL_STATE(1128)] = 40142, [SMALL_STATE(1129)] = 40165, [SMALL_STATE(1130)] = 40188, [SMALL_STATE(1131)] = 40213, [SMALL_STATE(1132)] = 40236, [SMALL_STATE(1133)] = 40259, [SMALL_STATE(1134)] = 40282, [SMALL_STATE(1135)] = 40305, [SMALL_STATE(1136)] = 40328, [SMALL_STATE(1137)] = 40351, [SMALL_STATE(1138)] = 40374, [SMALL_STATE(1139)] = 40397, [SMALL_STATE(1140)] = 40420, [SMALL_STATE(1141)] = 40443, [SMALL_STATE(1142)] = 40466, [SMALL_STATE(1143)] = 40489, [SMALL_STATE(1144)] = 40512, [SMALL_STATE(1145)] = 40535, [SMALL_STATE(1146)] = 40558, [SMALL_STATE(1147)] = 40581, [SMALL_STATE(1148)] = 40604, [SMALL_STATE(1149)] = 40627, [SMALL_STATE(1150)] = 40650, [SMALL_STATE(1151)] = 40673, [SMALL_STATE(1152)] = 40696, [SMALL_STATE(1153)] = 40719, [SMALL_STATE(1154)] = 40742, [SMALL_STATE(1155)] = 40765, [SMALL_STATE(1156)] = 40788, [SMALL_STATE(1157)] = 40815, [SMALL_STATE(1158)] = 40840, [SMALL_STATE(1159)] = 40865, [SMALL_STATE(1160)] = 40888, [SMALL_STATE(1161)] = 40915, [SMALL_STATE(1162)] = 40938, [SMALL_STATE(1163)] = 40961, [SMALL_STATE(1164)] = 40984, [SMALL_STATE(1165)] = 41009, [SMALL_STATE(1166)] = 41032, [SMALL_STATE(1167)] = 41055, [SMALL_STATE(1168)] = 41078, [SMALL_STATE(1169)] = 41101, [SMALL_STATE(1170)] = 41124, [SMALL_STATE(1171)] = 41157, [SMALL_STATE(1172)] = 41188, [SMALL_STATE(1173)] = 41213, [SMALL_STATE(1174)] = 41236, [SMALL_STATE(1175)] = 41259, [SMALL_STATE(1176)] = 41283, [SMALL_STATE(1177)] = 41311, [SMALL_STATE(1178)] = 41335, [SMALL_STATE(1179)] = 41359, [SMALL_STATE(1180)] = 41383, [SMALL_STATE(1181)] = 41407, [SMALL_STATE(1182)] = 41431, [SMALL_STATE(1183)] = 41455, [SMALL_STATE(1184)] = 41479, [SMALL_STATE(1185)] = 41503, [SMALL_STATE(1186)] = 41527, [SMALL_STATE(1187)] = 41551, [SMALL_STATE(1188)] = 41575, [SMALL_STATE(1189)] = 41599, [SMALL_STATE(1190)] = 41623, [SMALL_STATE(1191)] = 41647, [SMALL_STATE(1192)] = 41671, [SMALL_STATE(1193)] = 41695, [SMALL_STATE(1194)] = 41719, [SMALL_STATE(1195)] = 41743, [SMALL_STATE(1196)] = 41767, [SMALL_STATE(1197)] = 41810, [SMALL_STATE(1198)] = 41833, [SMALL_STATE(1199)] = 41874, [SMALL_STATE(1200)] = 41897, [SMALL_STATE(1201)] = 41922, [SMALL_STATE(1202)] = 41963, [SMALL_STATE(1203)] = 41987, [SMALL_STATE(1204)] = 42011, [SMALL_STATE(1205)] = 42035, [SMALL_STATE(1206)] = 42059, [SMALL_STATE(1207)] = 42083, [SMALL_STATE(1208)] = 42107, [SMALL_STATE(1209)] = 42131, [SMALL_STATE(1210)] = 42155, [SMALL_STATE(1211)] = 42179, [SMALL_STATE(1212)] = 42203, [SMALL_STATE(1213)] = 42227, [SMALL_STATE(1214)] = 42251, [SMALL_STATE(1215)] = 42273, [SMALL_STATE(1216)] = 42315, [SMALL_STATE(1217)] = 42336, [SMALL_STATE(1218)] = 42357, [SMALL_STATE(1219)] = 42378, [SMALL_STATE(1220)] = 42399, [SMALL_STATE(1221)] = 42420, [SMALL_STATE(1222)] = 42441, [SMALL_STATE(1223)] = 42462, [SMALL_STATE(1224)] = 42483, [SMALL_STATE(1225)] = 42504, [SMALL_STATE(1226)] = 42525, [SMALL_STATE(1227)] = 42546, [SMALL_STATE(1228)] = 42567, [SMALL_STATE(1229)] = 42588, [SMALL_STATE(1230)] = 42609, [SMALL_STATE(1231)] = 42630, [SMALL_STATE(1232)] = 42651, [SMALL_STATE(1233)] = 42672, [SMALL_STATE(1234)] = 42693, [SMALL_STATE(1235)] = 42714, [SMALL_STATE(1236)] = 42735, [SMALL_STATE(1237)] = 42756, [SMALL_STATE(1238)] = 42777, [SMALL_STATE(1239)] = 42798, [SMALL_STATE(1240)] = 42819, [SMALL_STATE(1241)] = 42840, [SMALL_STATE(1242)] = 42861, [SMALL_STATE(1243)] = 42882, [SMALL_STATE(1244)] = 42903, [SMALL_STATE(1245)] = 42924, [SMALL_STATE(1246)] = 42945, [SMALL_STATE(1247)] = 42966, [SMALL_STATE(1248)] = 42987, [SMALL_STATE(1249)] = 43018, [SMALL_STATE(1250)] = 43046, [SMALL_STATE(1251)] = 43070, [SMALL_STATE(1252)] = 43092, [SMALL_STATE(1253)] = 43114, [SMALL_STATE(1254)] = 43136, [SMALL_STATE(1255)] = 43158, [SMALL_STATE(1256)] = 43182, [SMALL_STATE(1257)] = 43210, [SMALL_STATE(1258)] = 43248, [SMALL_STATE(1259)] = 43276, [SMALL_STATE(1260)] = 43300, [SMALL_STATE(1261)] = 43324, [SMALL_STATE(1262)] = 43348, [SMALL_STATE(1263)] = 43372, [SMALL_STATE(1264)] = 43392, [SMALL_STATE(1265)] = 43416, [SMALL_STATE(1266)] = 43454, [SMALL_STATE(1267)] = 43478, [SMALL_STATE(1268)] = 43511, [SMALL_STATE(1269)] = 43540, [SMALL_STATE(1270)] = 43569, [SMALL_STATE(1271)] = 43586, [SMALL_STATE(1272)] = 43603, [SMALL_STATE(1273)] = 43620, [SMALL_STATE(1274)] = 43649, [SMALL_STATE(1275)] = 43678, [SMALL_STATE(1276)] = 43703, [SMALL_STATE(1277)] = 43730, [SMALL_STATE(1278)] = 43759, [SMALL_STATE(1279)] = 43784, [SMALL_STATE(1280)] = 43813, [SMALL_STATE(1281)] = 43845, [SMALL_STATE(1282)] = 43877, [SMALL_STATE(1283)] = 43905, [SMALL_STATE(1284)] = 43937, [SMALL_STATE(1285)] = 43969, [SMALL_STATE(1286)] = 43999, [SMALL_STATE(1287)] = 44025, [SMALL_STATE(1288)] = 44053, [SMALL_STATE(1289)] = 44079, [SMALL_STATE(1290)] = 44105, [SMALL_STATE(1291)] = 44131, [SMALL_STATE(1292)] = 44159, [SMALL_STATE(1293)] = 44189, [SMALL_STATE(1294)] = 44219, [SMALL_STATE(1295)] = 44249, [SMALL_STATE(1296)] = 44279, [SMALL_STATE(1297)] = 44305, [SMALL_STATE(1298)] = 44335, [SMALL_STATE(1299)] = 44361, [SMALL_STATE(1300)] = 44386, [SMALL_STATE(1301)] = 44415, [SMALL_STATE(1302)] = 44442, [SMALL_STATE(1303)] = 44469, [SMALL_STATE(1304)] = 44496, [SMALL_STATE(1305)] = 44525, [SMALL_STATE(1306)] = 44552, [SMALL_STATE(1307)] = 44579, [SMALL_STATE(1308)] = 44606, [SMALL_STATE(1309)] = 44633, [SMALL_STATE(1310)] = 44660, [SMALL_STATE(1311)] = 44687, [SMALL_STATE(1312)] = 44714, [SMALL_STATE(1313)] = 44741, [SMALL_STATE(1314)] = 44764, [SMALL_STATE(1315)] = 44789, [SMALL_STATE(1316)] = 44814, [SMALL_STATE(1317)] = 44841, [SMALL_STATE(1318)] = 44868, [SMALL_STATE(1319)] = 44895, [SMALL_STATE(1320)] = 44920, [SMALL_STATE(1321)] = 44947, [SMALL_STATE(1322)] = 44972, [SMALL_STATE(1323)] = 44999, [SMALL_STATE(1324)] = 45028, [SMALL_STATE(1325)] = 45051, [SMALL_STATE(1326)] = 45074, [SMALL_STATE(1327)] = 45097, [SMALL_STATE(1328)] = 45126, [SMALL_STATE(1329)] = 45153, [SMALL_STATE(1330)] = 45175, [SMALL_STATE(1331)] = 45201, [SMALL_STATE(1332)] = 45225, [SMALL_STATE(1333)] = 45249, [SMALL_STATE(1334)] = 45263, [SMALL_STATE(1335)] = 45277, [SMALL_STATE(1336)] = 45291, [SMALL_STATE(1337)] = 45305, [SMALL_STATE(1338)] = 45329, [SMALL_STATE(1339)] = 45353, [SMALL_STATE(1340)] = 45377, [SMALL_STATE(1341)] = 45393, [SMALL_STATE(1342)] = 45417, [SMALL_STATE(1343)] = 45433, [SMALL_STATE(1344)] = 45449, [SMALL_STATE(1345)] = 45475, [SMALL_STATE(1346)] = 45501, [SMALL_STATE(1347)] = 45525, [SMALL_STATE(1348)] = 45549, [SMALL_STATE(1349)] = 45565, [SMALL_STATE(1350)] = 45591, [SMALL_STATE(1351)] = 45615, [SMALL_STATE(1352)] = 45639, [SMALL_STATE(1353)] = 45663, [SMALL_STATE(1354)] = 45687, [SMALL_STATE(1355)] = 45711, [SMALL_STATE(1356)] = 45735, [SMALL_STATE(1357)] = 45759, [SMALL_STATE(1358)] = 45783, [SMALL_STATE(1359)] = 45807, [SMALL_STATE(1360)] = 45827, [SMALL_STATE(1361)] = 45841, [SMALL_STATE(1362)] = 45864, [SMALL_STATE(1363)] = 45887, [SMALL_STATE(1364)] = 45904, [SMALL_STATE(1365)] = 45921, [SMALL_STATE(1366)] = 45944, [SMALL_STATE(1367)] = 45967, [SMALL_STATE(1368)] = 45986, [SMALL_STATE(1369)] = 46003, [SMALL_STATE(1370)] = 46020, [SMALL_STATE(1371)] = 46041, [SMALL_STATE(1372)] = 46060, [SMALL_STATE(1373)] = 46077, [SMALL_STATE(1374)] = 46094, [SMALL_STATE(1375)] = 46117, [SMALL_STATE(1376)] = 46132, [SMALL_STATE(1377)] = 46155, [SMALL_STATE(1378)] = 46178, [SMALL_STATE(1379)] = 46201, [SMALL_STATE(1380)] = 46220, [SMALL_STATE(1381)] = 46237, [SMALL_STATE(1382)] = 46260, [SMALL_STATE(1383)] = 46283, [SMALL_STATE(1384)] = 46304, [SMALL_STATE(1385)] = 46327, [SMALL_STATE(1386)] = 46350, [SMALL_STATE(1387)] = 46369, [SMALL_STATE(1388)] = 46392, [SMALL_STATE(1389)] = 46415, [SMALL_STATE(1390)] = 46438, [SMALL_STATE(1391)] = 46461, [SMALL_STATE(1392)] = 46484, [SMALL_STATE(1393)] = 46507, [SMALL_STATE(1394)] = 46530, [SMALL_STATE(1395)] = 46553, [SMALL_STATE(1396)] = 46576, [SMALL_STATE(1397)] = 46599, [SMALL_STATE(1398)] = 46622, [SMALL_STATE(1399)] = 46645, [SMALL_STATE(1400)] = 46664, [SMALL_STATE(1401)] = 46687, [SMALL_STATE(1402)] = 46706, [SMALL_STATE(1403)] = 46729, [SMALL_STATE(1404)] = 46752, [SMALL_STATE(1405)] = 46775, [SMALL_STATE(1406)] = 46798, [SMALL_STATE(1407)] = 46821, [SMALL_STATE(1408)] = 46844, [SMALL_STATE(1409)] = 46867, [SMALL_STATE(1410)] = 46890, [SMALL_STATE(1411)] = 46913, [SMALL_STATE(1412)] = 46936, [SMALL_STATE(1413)] = 46959, [SMALL_STATE(1414)] = 46982, [SMALL_STATE(1415)] = 47005, [SMALL_STATE(1416)] = 47028, [SMALL_STATE(1417)] = 47051, [SMALL_STATE(1418)] = 47072, [SMALL_STATE(1419)] = 47093, [SMALL_STATE(1420)] = 47116, [SMALL_STATE(1421)] = 47137, [SMALL_STATE(1422)] = 47152, [SMALL_STATE(1423)] = 47171, [SMALL_STATE(1424)] = 47188, [SMALL_STATE(1425)] = 47211, [SMALL_STATE(1426)] = 47234, [SMALL_STATE(1427)] = 47251, [SMALL_STATE(1428)] = 47270, [SMALL_STATE(1429)] = 47293, [SMALL_STATE(1430)] = 47316, [SMALL_STATE(1431)] = 47333, [SMALL_STATE(1432)] = 47356, [SMALL_STATE(1433)] = 47373, [SMALL_STATE(1434)] = 47392, [SMALL_STATE(1435)] = 47409, [SMALL_STATE(1436)] = 47426, [SMALL_STATE(1437)] = 47443, [SMALL_STATE(1438)] = 47460, [SMALL_STATE(1439)] = 47483, [SMALL_STATE(1440)] = 47506, [SMALL_STATE(1441)] = 47520, [SMALL_STATE(1442)] = 47540, [SMALL_STATE(1443)] = 47556, [SMALL_STATE(1444)] = 47576, [SMALL_STATE(1445)] = 47594, [SMALL_STATE(1446)] = 47610, [SMALL_STATE(1447)] = 47626, [SMALL_STATE(1448)] = 47644, [SMALL_STATE(1449)] = 47658, [SMALL_STATE(1450)] = 47678, [SMALL_STATE(1451)] = 47694, [SMALL_STATE(1452)] = 47710, [SMALL_STATE(1453)] = 47728, [SMALL_STATE(1454)] = 47744, [SMALL_STATE(1455)] = 47764, [SMALL_STATE(1456)] = 47780, [SMALL_STATE(1457)] = 47796, [SMALL_STATE(1458)] = 47816, [SMALL_STATE(1459)] = 47832, [SMALL_STATE(1460)] = 47850, [SMALL_STATE(1461)] = 47870, [SMALL_STATE(1462)] = 47890, [SMALL_STATE(1463)] = 47910, [SMALL_STATE(1464)] = 47926, [SMALL_STATE(1465)] = 47942, [SMALL_STATE(1466)] = 47962, [SMALL_STATE(1467)] = 47980, [SMALL_STATE(1468)] = 48000, [SMALL_STATE(1469)] = 48020, [SMALL_STATE(1470)] = 48036, [SMALL_STATE(1471)] = 48052, [SMALL_STATE(1472)] = 48072, [SMALL_STATE(1473)] = 48088, [SMALL_STATE(1474)] = 48104, [SMALL_STATE(1475)] = 48120, [SMALL_STATE(1476)] = 48136, [SMALL_STATE(1477)] = 48152, [SMALL_STATE(1478)] = 48168, [SMALL_STATE(1479)] = 48186, [SMALL_STATE(1480)] = 48206, [SMALL_STATE(1481)] = 48223, [SMALL_STATE(1482)] = 48240, [SMALL_STATE(1483)] = 48257, [SMALL_STATE(1484)] = 48274, [SMALL_STATE(1485)] = 48287, [SMALL_STATE(1486)] = 48304, [SMALL_STATE(1487)] = 48319, [SMALL_STATE(1488)] = 48336, [SMALL_STATE(1489)] = 48353, [SMALL_STATE(1490)] = 48370, [SMALL_STATE(1491)] = 48385, [SMALL_STATE(1492)] = 48400, [SMALL_STATE(1493)] = 48417, [SMALL_STATE(1494)] = 48432, [SMALL_STATE(1495)] = 48449, [SMALL_STATE(1496)] = 48466, [SMALL_STATE(1497)] = 48481, [SMALL_STATE(1498)] = 48498, [SMALL_STATE(1499)] = 48513, [SMALL_STATE(1500)] = 48528, [SMALL_STATE(1501)] = 48545, [SMALL_STATE(1502)] = 48558, [SMALL_STATE(1503)] = 48573, [SMALL_STATE(1504)] = 48590, [SMALL_STATE(1505)] = 48605, [SMALL_STATE(1506)] = 48622, [SMALL_STATE(1507)] = 48639, [SMALL_STATE(1508)] = 48654, [SMALL_STATE(1509)] = 48671, [SMALL_STATE(1510)] = 48688, [SMALL_STATE(1511)] = 48705, [SMALL_STATE(1512)] = 48718, [SMALL_STATE(1513)] = 48735, [SMALL_STATE(1514)] = 48748, [SMALL_STATE(1515)] = 48765, [SMALL_STATE(1516)] = 48778, [SMALL_STATE(1517)] = 48793, [SMALL_STATE(1518)] = 48810, [SMALL_STATE(1519)] = 48823, [SMALL_STATE(1520)] = 48840, [SMALL_STATE(1521)] = 48857, [SMALL_STATE(1522)] = 48872, [SMALL_STATE(1523)] = 48889, [SMALL_STATE(1524)] = 48904, [SMALL_STATE(1525)] = 48921, [SMALL_STATE(1526)] = 48936, [SMALL_STATE(1527)] = 48951, [SMALL_STATE(1528)] = 48968, [SMALL_STATE(1529)] = 48983, [SMALL_STATE(1530)] = 49000, [SMALL_STATE(1531)] = 49017, [SMALL_STATE(1532)] = 49034, [SMALL_STATE(1533)] = 49049, [SMALL_STATE(1534)] = 49066, [SMALL_STATE(1535)] = 49081, [SMALL_STATE(1536)] = 49098, [SMALL_STATE(1537)] = 49111, [SMALL_STATE(1538)] = 49124, [SMALL_STATE(1539)] = 49141, [SMALL_STATE(1540)] = 49156, [SMALL_STATE(1541)] = 49171, [SMALL_STATE(1542)] = 49188, [SMALL_STATE(1543)] = 49205, [SMALL_STATE(1544)] = 49218, [SMALL_STATE(1545)] = 49233, [SMALL_STATE(1546)] = 49250, [SMALL_STATE(1547)] = 49263, [SMALL_STATE(1548)] = 49280, [SMALL_STATE(1549)] = 49293, [SMALL_STATE(1550)] = 49306, [SMALL_STATE(1551)] = 49323, [SMALL_STATE(1552)] = 49340, [SMALL_STATE(1553)] = 49357, [SMALL_STATE(1554)] = 49374, [SMALL_STATE(1555)] = 49391, [SMALL_STATE(1556)] = 49406, [SMALL_STATE(1557)] = 49419, [SMALL_STATE(1558)] = 49436, [SMALL_STATE(1559)] = 49451, [SMALL_STATE(1560)] = 49465, [SMALL_STATE(1561)] = 49477, [SMALL_STATE(1562)] = 49491, [SMALL_STATE(1563)] = 49501, [SMALL_STATE(1564)] = 49513, [SMALL_STATE(1565)] = 49527, [SMALL_STATE(1566)] = 49541, [SMALL_STATE(1567)] = 49555, [SMALL_STATE(1568)] = 49569, [SMALL_STATE(1569)] = 49583, [SMALL_STATE(1570)] = 49597, [SMALL_STATE(1571)] = 49609, [SMALL_STATE(1572)] = 49623, [SMALL_STATE(1573)] = 49637, [SMALL_STATE(1574)] = 49651, [SMALL_STATE(1575)] = 49665, [SMALL_STATE(1576)] = 49679, [SMALL_STATE(1577)] = 49693, [SMALL_STATE(1578)] = 49707, [SMALL_STATE(1579)] = 49721, [SMALL_STATE(1580)] = 49733, [SMALL_STATE(1581)] = 49743, [SMALL_STATE(1582)] = 49757, [SMALL_STATE(1583)] = 49771, [SMALL_STATE(1584)] = 49785, [SMALL_STATE(1585)] = 49799, [SMALL_STATE(1586)] = 49811, [SMALL_STATE(1587)] = 49825, [SMALL_STATE(1588)] = 49839, [SMALL_STATE(1589)] = 49851, [SMALL_STATE(1590)] = 49865, [SMALL_STATE(1591)] = 49879, [SMALL_STATE(1592)] = 49891, [SMALL_STATE(1593)] = 49905, [SMALL_STATE(1594)] = 49919, [SMALL_STATE(1595)] = 49933, [SMALL_STATE(1596)] = 49947, [SMALL_STATE(1597)] = 49961, [SMALL_STATE(1598)] = 49975, [SMALL_STATE(1599)] = 49989, [SMALL_STATE(1600)] = 50003, [SMALL_STATE(1601)] = 50017, [SMALL_STATE(1602)] = 50031, [SMALL_STATE(1603)] = 50045, [SMALL_STATE(1604)] = 50057, [SMALL_STATE(1605)] = 50069, [SMALL_STATE(1606)] = 50083, [SMALL_STATE(1607)] = 50095, [SMALL_STATE(1608)] = 50109, [SMALL_STATE(1609)] = 50123, [SMALL_STATE(1610)] = 50137, [SMALL_STATE(1611)] = 50151, [SMALL_STATE(1612)] = 50161, [SMALL_STATE(1613)] = 50175, [SMALL_STATE(1614)] = 50189, [SMALL_STATE(1615)] = 50203, [SMALL_STATE(1616)] = 50217, [SMALL_STATE(1617)] = 50227, [SMALL_STATE(1618)] = 50241, [SMALL_STATE(1619)] = 50253, [SMALL_STATE(1620)] = 50267, [SMALL_STATE(1621)] = 50281, [SMALL_STATE(1622)] = 50295, [SMALL_STATE(1623)] = 50307, [SMALL_STATE(1624)] = 50321, [SMALL_STATE(1625)] = 50335, [SMALL_STATE(1626)] = 50347, [SMALL_STATE(1627)] = 50361, [SMALL_STATE(1628)] = 50375, [SMALL_STATE(1629)] = 50389, [SMALL_STATE(1630)] = 50403, [SMALL_STATE(1631)] = 50417, [SMALL_STATE(1632)] = 50429, [SMALL_STATE(1633)] = 50441, [SMALL_STATE(1634)] = 50455, [SMALL_STATE(1635)] = 50465, [SMALL_STATE(1636)] = 50479, [SMALL_STATE(1637)] = 50493, [SMALL_STATE(1638)] = 50507, [SMALL_STATE(1639)] = 50517, [SMALL_STATE(1640)] = 50531, [SMALL_STATE(1641)] = 50545, [SMALL_STATE(1642)] = 50559, [SMALL_STATE(1643)] = 50573, [SMALL_STATE(1644)] = 50587, [SMALL_STATE(1645)] = 50601, [SMALL_STATE(1646)] = 50615, [SMALL_STATE(1647)] = 50625, [SMALL_STATE(1648)] = 50639, [SMALL_STATE(1649)] = 50653, [SMALL_STATE(1650)] = 50667, [SMALL_STATE(1651)] = 50677, [SMALL_STATE(1652)] = 50691, [SMALL_STATE(1653)] = 50705, [SMALL_STATE(1654)] = 50719, [SMALL_STATE(1655)] = 50733, [SMALL_STATE(1656)] = 50747, [SMALL_STATE(1657)] = 50761, [SMALL_STATE(1658)] = 50775, [SMALL_STATE(1659)] = 50785, [SMALL_STATE(1660)] = 50799, [SMALL_STATE(1661)] = 50811, [SMALL_STATE(1662)] = 50821, [SMALL_STATE(1663)] = 50831, [SMALL_STATE(1664)] = 50845, [SMALL_STATE(1665)] = 50859, [SMALL_STATE(1666)] = 50873, [SMALL_STATE(1667)] = 50887, [SMALL_STATE(1668)] = 50901, [SMALL_STATE(1669)] = 50915, [SMALL_STATE(1670)] = 50927, [SMALL_STATE(1671)] = 50941, [SMALL_STATE(1672)] = 50955, [SMALL_STATE(1673)] = 50965, [SMALL_STATE(1674)] = 50977, [SMALL_STATE(1675)] = 50991, [SMALL_STATE(1676)] = 51001, [SMALL_STATE(1677)] = 51011, [SMALL_STATE(1678)] = 51025, [SMALL_STATE(1679)] = 51039, [SMALL_STATE(1680)] = 51053, [SMALL_STATE(1681)] = 51067, [SMALL_STATE(1682)] = 51081, [SMALL_STATE(1683)] = 51095, [SMALL_STATE(1684)] = 51109, [SMALL_STATE(1685)] = 51123, [SMALL_STATE(1686)] = 51133, [SMALL_STATE(1687)] = 51147, [SMALL_STATE(1688)] = 51161, [SMALL_STATE(1689)] = 51175, [SMALL_STATE(1690)] = 51185, [SMALL_STATE(1691)] = 51199, [SMALL_STATE(1692)] = 51213, [SMALL_STATE(1693)] = 51227, [SMALL_STATE(1694)] = 51241, [SMALL_STATE(1695)] = 51255, [SMALL_STATE(1696)] = 51265, [SMALL_STATE(1697)] = 51279, [SMALL_STATE(1698)] = 51293, [SMALL_STATE(1699)] = 51307, [SMALL_STATE(1700)] = 51321, [SMALL_STATE(1701)] = 51333, [SMALL_STATE(1702)] = 51347, [SMALL_STATE(1703)] = 51361, [SMALL_STATE(1704)] = 51375, [SMALL_STATE(1705)] = 51389, [SMALL_STATE(1706)] = 51403, [SMALL_STATE(1707)] = 51417, [SMALL_STATE(1708)] = 51429, [SMALL_STATE(1709)] = 51443, [SMALL_STATE(1710)] = 51457, [SMALL_STATE(1711)] = 51471, [SMALL_STATE(1712)] = 51485, [SMALL_STATE(1713)] = 51499, [SMALL_STATE(1714)] = 51513, [SMALL_STATE(1715)] = 51527, [SMALL_STATE(1716)] = 51541, [SMALL_STATE(1717)] = 51555, [SMALL_STATE(1718)] = 51569, [SMALL_STATE(1719)] = 51583, [SMALL_STATE(1720)] = 51597, [SMALL_STATE(1721)] = 51609, [SMALL_STATE(1722)] = 51623, [SMALL_STATE(1723)] = 51637, [SMALL_STATE(1724)] = 51649, [SMALL_STATE(1725)] = 51659, [SMALL_STATE(1726)] = 51669, [SMALL_STATE(1727)] = 51683, [SMALL_STATE(1728)] = 51695, [SMALL_STATE(1729)] = 51709, [SMALL_STATE(1730)] = 51723, [SMALL_STATE(1731)] = 51735, [SMALL_STATE(1732)] = 51745, [SMALL_STATE(1733)] = 51759, [SMALL_STATE(1734)] = 51773, [SMALL_STATE(1735)] = 51787, [SMALL_STATE(1736)] = 51801, [SMALL_STATE(1737)] = 51815, [SMALL_STATE(1738)] = 51827, [SMALL_STATE(1739)] = 51841, [SMALL_STATE(1740)] = 51855, [SMALL_STATE(1741)] = 51869, [SMALL_STATE(1742)] = 51883, [SMALL_STATE(1743)] = 51897, [SMALL_STATE(1744)] = 51911, [SMALL_STATE(1745)] = 51925, [SMALL_STATE(1746)] = 51937, [SMALL_STATE(1747)] = 51951, [SMALL_STATE(1748)] = 51963, [SMALL_STATE(1749)] = 51977, [SMALL_STATE(1750)] = 51989, [SMALL_STATE(1751)] = 52001, [SMALL_STATE(1752)] = 52015, [SMALL_STATE(1753)] = 52029, [SMALL_STATE(1754)] = 52043, [SMALL_STATE(1755)] = 52057, [SMALL_STATE(1756)] = 52071, [SMALL_STATE(1757)] = 52081, [SMALL_STATE(1758)] = 52093, [SMALL_STATE(1759)] = 52103, [SMALL_STATE(1760)] = 52117, [SMALL_STATE(1761)] = 52131, [SMALL_STATE(1762)] = 52145, [SMALL_STATE(1763)] = 52159, [SMALL_STATE(1764)] = 52173, [SMALL_STATE(1765)] = 52187, [SMALL_STATE(1766)] = 52201, [SMALL_STATE(1767)] = 52215, [SMALL_STATE(1768)] = 52229, [SMALL_STATE(1769)] = 52241, [SMALL_STATE(1770)] = 52255, [SMALL_STATE(1771)] = 52269, [SMALL_STATE(1772)] = 52283, [SMALL_STATE(1773)] = 52297, [SMALL_STATE(1774)] = 52309, [SMALL_STATE(1775)] = 52323, [SMALL_STATE(1776)] = 52337, [SMALL_STATE(1777)] = 52351, [SMALL_STATE(1778)] = 52365, [SMALL_STATE(1779)] = 52379, [SMALL_STATE(1780)] = 52393, [SMALL_STATE(1781)] = 52405, [SMALL_STATE(1782)] = 52419, [SMALL_STATE(1783)] = 52433, [SMALL_STATE(1784)] = 52445, [SMALL_STATE(1785)] = 52459, [SMALL_STATE(1786)] = 52473, [SMALL_STATE(1787)] = 52485, [SMALL_STATE(1788)] = 52499, [SMALL_STATE(1789)] = 52513, [SMALL_STATE(1790)] = 52527, [SMALL_STATE(1791)] = 52537, [SMALL_STATE(1792)] = 52551, [SMALL_STATE(1793)] = 52563, [SMALL_STATE(1794)] = 52577, [SMALL_STATE(1795)] = 52591, [SMALL_STATE(1796)] = 52605, [SMALL_STATE(1797)] = 52619, [SMALL_STATE(1798)] = 52633, [SMALL_STATE(1799)] = 52647, [SMALL_STATE(1800)] = 52661, [SMALL_STATE(1801)] = 52675, [SMALL_STATE(1802)] = 52689, [SMALL_STATE(1803)] = 52703, [SMALL_STATE(1804)] = 52717, [SMALL_STATE(1805)] = 52731, [SMALL_STATE(1806)] = 52742, [SMALL_STATE(1807)] = 52751, [SMALL_STATE(1808)] = 52762, [SMALL_STATE(1809)] = 52773, [SMALL_STATE(1810)] = 52784, [SMALL_STATE(1811)] = 52795, [SMALL_STATE(1812)] = 52806, [SMALL_STATE(1813)] = 52817, [SMALL_STATE(1814)] = 52828, [SMALL_STATE(1815)] = 52839, [SMALL_STATE(1816)] = 52850, [SMALL_STATE(1817)] = 52861, [SMALL_STATE(1818)] = 52872, [SMALL_STATE(1819)] = 52883, [SMALL_STATE(1820)] = 52894, [SMALL_STATE(1821)] = 52905, [SMALL_STATE(1822)] = 52914, [SMALL_STATE(1823)] = 52925, [SMALL_STATE(1824)] = 52936, [SMALL_STATE(1825)] = 52947, [SMALL_STATE(1826)] = 52958, [SMALL_STATE(1827)] = 52969, [SMALL_STATE(1828)] = 52978, [SMALL_STATE(1829)] = 52989, [SMALL_STATE(1830)] = 52998, [SMALL_STATE(1831)] = 53009, [SMALL_STATE(1832)] = 53020, [SMALL_STATE(1833)] = 53031, [SMALL_STATE(1834)] = 53042, [SMALL_STATE(1835)] = 53053, [SMALL_STATE(1836)] = 53064, [SMALL_STATE(1837)] = 53075, [SMALL_STATE(1838)] = 53086, [SMALL_STATE(1839)] = 53097, [SMALL_STATE(1840)] = 53108, [SMALL_STATE(1841)] = 53119, [SMALL_STATE(1842)] = 53130, [SMALL_STATE(1843)] = 53139, [SMALL_STATE(1844)] = 53150, [SMALL_STATE(1845)] = 53161, [SMALL_STATE(1846)] = 53172, [SMALL_STATE(1847)] = 53183, [SMALL_STATE(1848)] = 53194, [SMALL_STATE(1849)] = 53205, [SMALL_STATE(1850)] = 53216, [SMALL_STATE(1851)] = 53227, [SMALL_STATE(1852)] = 53238, [SMALL_STATE(1853)] = 53249, [SMALL_STATE(1854)] = 53260, [SMALL_STATE(1855)] = 53271, [SMALL_STATE(1856)] = 53280, [SMALL_STATE(1857)] = 53291, [SMALL_STATE(1858)] = 53300, [SMALL_STATE(1859)] = 53311, [SMALL_STATE(1860)] = 53322, [SMALL_STATE(1861)] = 53333, [SMALL_STATE(1862)] = 53344, [SMALL_STATE(1863)] = 53355, [SMALL_STATE(1864)] = 53366, [SMALL_STATE(1865)] = 53375, [SMALL_STATE(1866)] = 53384, [SMALL_STATE(1867)] = 53393, [SMALL_STATE(1868)] = 53402, [SMALL_STATE(1869)] = 53411, [SMALL_STATE(1870)] = 53420, [SMALL_STATE(1871)] = 53429, [SMALL_STATE(1872)] = 53438, [SMALL_STATE(1873)] = 53449, [SMALL_STATE(1874)] = 53458, [SMALL_STATE(1875)] = 53469, [SMALL_STATE(1876)] = 53480, [SMALL_STATE(1877)] = 53489, [SMALL_STATE(1878)] = 53500, [SMALL_STATE(1879)] = 53511, [SMALL_STATE(1880)] = 53520, [SMALL_STATE(1881)] = 53529, [SMALL_STATE(1882)] = 53540, [SMALL_STATE(1883)] = 53553, [SMALL_STATE(1884)] = 53564, [SMALL_STATE(1885)] = 53575, [SMALL_STATE(1886)] = 53584, [SMALL_STATE(1887)] = 53595, [SMALL_STATE(1888)] = 53606, [SMALL_STATE(1889)] = 53615, [SMALL_STATE(1890)] = 53626, [SMALL_STATE(1891)] = 53637, [SMALL_STATE(1892)] = 53646, [SMALL_STATE(1893)] = 53657, [SMALL_STATE(1894)] = 53668, [SMALL_STATE(1895)] = 53677, [SMALL_STATE(1896)] = 53686, [SMALL_STATE(1897)] = 53695, [SMALL_STATE(1898)] = 53704, [SMALL_STATE(1899)] = 53713, [SMALL_STATE(1900)] = 53724, [SMALL_STATE(1901)] = 53735, [SMALL_STATE(1902)] = 53746, [SMALL_STATE(1903)] = 53757, [SMALL_STATE(1904)] = 53768, [SMALL_STATE(1905)] = 53777, [SMALL_STATE(1906)] = 53788, [SMALL_STATE(1907)] = 53799, [SMALL_STATE(1908)] = 53808, [SMALL_STATE(1909)] = 53817, [SMALL_STATE(1910)] = 53828, [SMALL_STATE(1911)] = 53839, [SMALL_STATE(1912)] = 53850, [SMALL_STATE(1913)] = 53859, [SMALL_STATE(1914)] = 53870, [SMALL_STATE(1915)] = 53881, [SMALL_STATE(1916)] = 53892, [SMALL_STATE(1917)] = 53903, [SMALL_STATE(1918)] = 53914, [SMALL_STATE(1919)] = 53925, [SMALL_STATE(1920)] = 53934, [SMALL_STATE(1921)] = 53945, [SMALL_STATE(1922)] = 53954, [SMALL_STATE(1923)] = 53965, [SMALL_STATE(1924)] = 53974, [SMALL_STATE(1925)] = 53985, [SMALL_STATE(1926)] = 53996, [SMALL_STATE(1927)] = 54007, [SMALL_STATE(1928)] = 54018, [SMALL_STATE(1929)] = 54027, [SMALL_STATE(1930)] = 54038, [SMALL_STATE(1931)] = 54049, [SMALL_STATE(1932)] = 54060, [SMALL_STATE(1933)] = 54071, [SMALL_STATE(1934)] = 54082, [SMALL_STATE(1935)] = 54093, [SMALL_STATE(1936)] = 54104, [SMALL_STATE(1937)] = 54115, [SMALL_STATE(1938)] = 54126, [SMALL_STATE(1939)] = 54137, [SMALL_STATE(1940)] = 54148, [SMALL_STATE(1941)] = 54157, [SMALL_STATE(1942)] = 54168, [SMALL_STATE(1943)] = 54179, [SMALL_STATE(1944)] = 54190, [SMALL_STATE(1945)] = 54199, [SMALL_STATE(1946)] = 54208, [SMALL_STATE(1947)] = 54219, [SMALL_STATE(1948)] = 54228, [SMALL_STATE(1949)] = 54239, [SMALL_STATE(1950)] = 54248, [SMALL_STATE(1951)] = 54259, [SMALL_STATE(1952)] = 54270, [SMALL_STATE(1953)] = 54281, [SMALL_STATE(1954)] = 54290, [SMALL_STATE(1955)] = 54301, [SMALL_STATE(1956)] = 54310, [SMALL_STATE(1957)] = 54321, [SMALL_STATE(1958)] = 54332, [SMALL_STATE(1959)] = 54343, [SMALL_STATE(1960)] = 54352, [SMALL_STATE(1961)] = 54363, [SMALL_STATE(1962)] = 54374, [SMALL_STATE(1963)] = 54385, [SMALL_STATE(1964)] = 54396, [SMALL_STATE(1965)] = 54407, [SMALL_STATE(1966)] = 54418, [SMALL_STATE(1967)] = 54427, [SMALL_STATE(1968)] = 54438, [SMALL_STATE(1969)] = 54449, [SMALL_STATE(1970)] = 54460, [SMALL_STATE(1971)] = 54471, [SMALL_STATE(1972)] = 54482, [SMALL_STATE(1973)] = 54491, [SMALL_STATE(1974)] = 54500, [SMALL_STATE(1975)] = 54511, [SMALL_STATE(1976)] = 54522, [SMALL_STATE(1977)] = 54533, [SMALL_STATE(1978)] = 54542, [SMALL_STATE(1979)] = 54553, [SMALL_STATE(1980)] = 54564, [SMALL_STATE(1981)] = 54575, [SMALL_STATE(1982)] = 54584, [SMALL_STATE(1983)] = 54593, [SMALL_STATE(1984)] = 54604, [SMALL_STATE(1985)] = 54615, [SMALL_STATE(1986)] = 54626, [SMALL_STATE(1987)] = 54637, [SMALL_STATE(1988)] = 54648, [SMALL_STATE(1989)] = 54659, [SMALL_STATE(1990)] = 54667, [SMALL_STATE(1991)] = 54675, [SMALL_STATE(1992)] = 54683, [SMALL_STATE(1993)] = 54691, [SMALL_STATE(1994)] = 54699, [SMALL_STATE(1995)] = 54707, [SMALL_STATE(1996)] = 54715, [SMALL_STATE(1997)] = 54723, [SMALL_STATE(1998)] = 54731, [SMALL_STATE(1999)] = 54739, [SMALL_STATE(2000)] = 54747, [SMALL_STATE(2001)] = 54755, [SMALL_STATE(2002)] = 54763, [SMALL_STATE(2003)] = 54771, [SMALL_STATE(2004)] = 54779, [SMALL_STATE(2005)] = 54787, [SMALL_STATE(2006)] = 54795, [SMALL_STATE(2007)] = 54803, [SMALL_STATE(2008)] = 54811, [SMALL_STATE(2009)] = 54819, [SMALL_STATE(2010)] = 54827, [SMALL_STATE(2011)] = 54835, [SMALL_STATE(2012)] = 54843, [SMALL_STATE(2013)] = 54851, [SMALL_STATE(2014)] = 54859, [SMALL_STATE(2015)] = 54867, [SMALL_STATE(2016)] = 54875, [SMALL_STATE(2017)] = 54883, [SMALL_STATE(2018)] = 54891, [SMALL_STATE(2019)] = 54899, [SMALL_STATE(2020)] = 54907, [SMALL_STATE(2021)] = 54915, [SMALL_STATE(2022)] = 54923, [SMALL_STATE(2023)] = 54931, [SMALL_STATE(2024)] = 54939, [SMALL_STATE(2025)] = 54947, [SMALL_STATE(2026)] = 54955, [SMALL_STATE(2027)] = 54963, [SMALL_STATE(2028)] = 54971, [SMALL_STATE(2029)] = 54979, [SMALL_STATE(2030)] = 54987, [SMALL_STATE(2031)] = 54995, [SMALL_STATE(2032)] = 55003, [SMALL_STATE(2033)] = 55011, [SMALL_STATE(2034)] = 55019, [SMALL_STATE(2035)] = 55027, [SMALL_STATE(2036)] = 55035, [SMALL_STATE(2037)] = 55043, [SMALL_STATE(2038)] = 55051, [SMALL_STATE(2039)] = 55059, [SMALL_STATE(2040)] = 55067, [SMALL_STATE(2041)] = 55075, [SMALL_STATE(2042)] = 55083, [SMALL_STATE(2043)] = 55091, [SMALL_STATE(2044)] = 55099, [SMALL_STATE(2045)] = 55107, [SMALL_STATE(2046)] = 55115, [SMALL_STATE(2047)] = 55123, [SMALL_STATE(2048)] = 55131, [SMALL_STATE(2049)] = 55139, [SMALL_STATE(2050)] = 55147, [SMALL_STATE(2051)] = 55155, [SMALL_STATE(2052)] = 55163, [SMALL_STATE(2053)] = 55171, [SMALL_STATE(2054)] = 55179, [SMALL_STATE(2055)] = 55187, [SMALL_STATE(2056)] = 55195, [SMALL_STATE(2057)] = 55203, [SMALL_STATE(2058)] = 55211, [SMALL_STATE(2059)] = 55219, [SMALL_STATE(2060)] = 55227, [SMALL_STATE(2061)] = 55235, [SMALL_STATE(2062)] = 55243, [SMALL_STATE(2063)] = 55251, [SMALL_STATE(2064)] = 55259, [SMALL_STATE(2065)] = 55267, [SMALL_STATE(2066)] = 55275, [SMALL_STATE(2067)] = 55283, [SMALL_STATE(2068)] = 55291, [SMALL_STATE(2069)] = 55299, [SMALL_STATE(2070)] = 55307, [SMALL_STATE(2071)] = 55315, [SMALL_STATE(2072)] = 55323, [SMALL_STATE(2073)] = 55331, [SMALL_STATE(2074)] = 55339, [SMALL_STATE(2075)] = 55347, [SMALL_STATE(2076)] = 55355, [SMALL_STATE(2077)] = 55363, [SMALL_STATE(2078)] = 55371, [SMALL_STATE(2079)] = 55379, [SMALL_STATE(2080)] = 55387, [SMALL_STATE(2081)] = 55395, [SMALL_STATE(2082)] = 55403, [SMALL_STATE(2083)] = 55411, [SMALL_STATE(2084)] = 55419, [SMALL_STATE(2085)] = 55427, [SMALL_STATE(2086)] = 55435, [SMALL_STATE(2087)] = 55443, [SMALL_STATE(2088)] = 55451, [SMALL_STATE(2089)] = 55459, [SMALL_STATE(2090)] = 55467, [SMALL_STATE(2091)] = 55475, [SMALL_STATE(2092)] = 55483, [SMALL_STATE(2093)] = 55491, [SMALL_STATE(2094)] = 55499, [SMALL_STATE(2095)] = 55507, [SMALL_STATE(2096)] = 55515, [SMALL_STATE(2097)] = 55523, [SMALL_STATE(2098)] = 55531, [SMALL_STATE(2099)] = 55539, [SMALL_STATE(2100)] = 55547, [SMALL_STATE(2101)] = 55555, [SMALL_STATE(2102)] = 55563, [SMALL_STATE(2103)] = 55571, [SMALL_STATE(2104)] = 55579, [SMALL_STATE(2105)] = 55587, [SMALL_STATE(2106)] = 55595, [SMALL_STATE(2107)] = 55603, [SMALL_STATE(2108)] = 55611, [SMALL_STATE(2109)] = 55619, [SMALL_STATE(2110)] = 55627, [SMALL_STATE(2111)] = 55635, [SMALL_STATE(2112)] = 55643, [SMALL_STATE(2113)] = 55651, [SMALL_STATE(2114)] = 55659, [SMALL_STATE(2115)] = 55667, [SMALL_STATE(2116)] = 55675, [SMALL_STATE(2117)] = 55683, [SMALL_STATE(2118)] = 55691, [SMALL_STATE(2119)] = 55699, [SMALL_STATE(2120)] = 55707, [SMALL_STATE(2121)] = 55715, [SMALL_STATE(2122)] = 55723, [SMALL_STATE(2123)] = 55731, [SMALL_STATE(2124)] = 55739, [SMALL_STATE(2125)] = 55747, [SMALL_STATE(2126)] = 55755, [SMALL_STATE(2127)] = 55763, [SMALL_STATE(2128)] = 55771, [SMALL_STATE(2129)] = 55779, [SMALL_STATE(2130)] = 55787, [SMALL_STATE(2131)] = 55795, [SMALL_STATE(2132)] = 55803, [SMALL_STATE(2133)] = 55811, [SMALL_STATE(2134)] = 55819, [SMALL_STATE(2135)] = 55827, [SMALL_STATE(2136)] = 55835, [SMALL_STATE(2137)] = 55843, [SMALL_STATE(2138)] = 55851, [SMALL_STATE(2139)] = 55859, [SMALL_STATE(2140)] = 55867, [SMALL_STATE(2141)] = 55875, [SMALL_STATE(2142)] = 55883, [SMALL_STATE(2143)] = 55891, [SMALL_STATE(2144)] = 55899, [SMALL_STATE(2145)] = 55907, [SMALL_STATE(2146)] = 55915, [SMALL_STATE(2147)] = 55923, [SMALL_STATE(2148)] = 55931, [SMALL_STATE(2149)] = 55939, [SMALL_STATE(2150)] = 55947, [SMALL_STATE(2151)] = 55955, [SMALL_STATE(2152)] = 55963, [SMALL_STATE(2153)] = 55971, [SMALL_STATE(2154)] = 55979, [SMALL_STATE(2155)] = 55987, [SMALL_STATE(2156)] = 55995, [SMALL_STATE(2157)] = 56003, [SMALL_STATE(2158)] = 56011, [SMALL_STATE(2159)] = 56019, [SMALL_STATE(2160)] = 56027, [SMALL_STATE(2161)] = 56035, [SMALL_STATE(2162)] = 56043, [SMALL_STATE(2163)] = 56051, [SMALL_STATE(2164)] = 56059, [SMALL_STATE(2165)] = 56067, [SMALL_STATE(2166)] = 56075, [SMALL_STATE(2167)] = 56083, [SMALL_STATE(2168)] = 56091, [SMALL_STATE(2169)] = 56099, [SMALL_STATE(2170)] = 56107, [SMALL_STATE(2171)] = 56115, [SMALL_STATE(2172)] = 56123, [SMALL_STATE(2173)] = 56131, [SMALL_STATE(2174)] = 56139, [SMALL_STATE(2175)] = 56147, [SMALL_STATE(2176)] = 56155, [SMALL_STATE(2177)] = 56163, [SMALL_STATE(2178)] = 56171, [SMALL_STATE(2179)] = 56179, [SMALL_STATE(2180)] = 56187, [SMALL_STATE(2181)] = 56195, [SMALL_STATE(2182)] = 56203, [SMALL_STATE(2183)] = 56211, [SMALL_STATE(2184)] = 56219, [SMALL_STATE(2185)] = 56227, [SMALL_STATE(2186)] = 56235, [SMALL_STATE(2187)] = 56243, [SMALL_STATE(2188)] = 56251, [SMALL_STATE(2189)] = 56259, [SMALL_STATE(2190)] = 56267, [SMALL_STATE(2191)] = 56275, [SMALL_STATE(2192)] = 56283, [SMALL_STATE(2193)] = 56291, [SMALL_STATE(2194)] = 56299, [SMALL_STATE(2195)] = 56307, [SMALL_STATE(2196)] = 56315, [SMALL_STATE(2197)] = 56323, [SMALL_STATE(2198)] = 56331, [SMALL_STATE(2199)] = 56339, [SMALL_STATE(2200)] = 56347, [SMALL_STATE(2201)] = 56355, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0, 0, 0), [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(627), [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(620), [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(617), [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1882), [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2197), [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1581), [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21), [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1976), [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1386), [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(626), [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(785), [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2198), [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1994), [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1855), [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(464), [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60), [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(513), [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(453), [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(130), [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1263), [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(18), [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1742), [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2130), [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2137), [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2156), [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(930), [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(59), [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1841), [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1900), [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515), [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2201), [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(17), [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1980), [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688), [91] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1504), [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(673), [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(747), [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(747), [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), [105] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(627), [108] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(283), [111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(620), [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(617), [117] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(48), [120] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1882), [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2197), [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1581), [129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(21), [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1976), [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1386), [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(626), [141] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(785), [144] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2198), [147] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1994), [150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1855), [153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(464), [156] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(60), [159] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(513), [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(453), [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(130), [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1263), [171] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(18), [174] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1742), [177] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2130), [180] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2137), [183] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2156), [186] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(930), [189] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(59), [192] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1841), [195] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(158), [198] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6), [201] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(61), [204] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1900), [207] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(515), [210] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2201), [213] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(100), [216] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(22), [219] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(433), [222] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(17), [225] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1980), [228] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(688), [231] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1504), [234] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(673), [237] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(747), [240] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(747), [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687), [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), [261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_expression, 2, 0, 0), [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1877), [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_break_expression, 2, 0, 0), [267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1878), [269] = {.entry = {.count = 1, .reusable = false}}, SHIFT(749), [271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(465), [273] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), [275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(157), [277] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2085), [279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74), [281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), [285] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1978), [287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1916), [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_range_expression, 2, 0, 0), [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_range_expression, 2, 0, 0), [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield_expression, 1, 0, 0), [295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield_expression, 1, 0, 0), [297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(515), [299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(100), [301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19), [303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(433), [305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression, 1, 0, 0), [307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_expression, 1, 0, 0), [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_range_expression, 1, 0, 0), [311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_range_expression, 1, 0, 0), [313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_expression, 1, 0, 0), [315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2012), [317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_break_expression, 1, 0, 0), [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(811), [321] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), [323] = {.entry = {.count = 1, .reusable = false}}, SHIFT(831), [325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(24), [327] = {.entry = {.count = 1, .reusable = false}}, SHIFT(115), [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2014), [331] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), [333] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1909), [335] = {.entry = {.count = 1, .reusable = false}}, SHIFT(824), [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(824), [339] = {.entry = {.count = 1, .reusable = false}}, SHIFT(96), [341] = {.entry = {.count = 1, .reusable = false}}, SHIFT(30), [343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(636), [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(741), [349] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1476), [351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(633), [353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1844), [355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(915), [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2101), [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2133), [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2091), [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), [371] = {.entry = {.count = 1, .reusable = false}}, SHIFT(806), [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(804), [375] = {.entry = {.count = 1, .reusable = false}}, SHIFT(677), [377] = {.entry = {.count = 1, .reusable = false}}, SHIFT(753), [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(820), [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2181), [385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), [387] = {.entry = {.count = 1, .reusable = false}}, SHIFT(817), [389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(813), [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), [393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(823), [395] = {.entry = {.count = 1, .reusable = false}}, SHIFT(38), [397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), [399] = {.entry = {.count = 1, .reusable = false}}, SHIFT(40), [401] = {.entry = {.count = 1, .reusable = false}}, SHIFT(733), [403] = {.entry = {.count = 1, .reusable = false}}, SHIFT(780), [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2154), [409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), [411] = {.entry = {.count = 1, .reusable = false}}, SHIFT(39), [413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(902), [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(810), [417] = {.entry = {.count = 1, .reusable = false}}, SHIFT(818), [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 3, 0, 20), [421] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 3, 0, 20), [423] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1539), [425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_empty_type, 1, 0, 0), [427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), [429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2047), [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686), [435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 4, 0, 0), [437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 4, 0, 0), [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680), [441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2009), [443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3, 0, 0), [445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3, 0, 0), [447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_block, 2, 0, 4), [449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_block, 2, 0, 4), [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681), [453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_block, 2, 0, 0), [455] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_block, 2, 0, 0), [457] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_block, 3, 0, 113), [459] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asm_block, 3, 0, 113), [461] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_expression, 5, 0, 123), [463] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_expression, 5, 0, 123), [465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698), [467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_block, 4, 0, 0), [469] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_block, 4, 0, 0), [471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_block, 2, 0, 0), [473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asm_block, 2, 0, 0), [475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_expression, 7, 0, 184), [477] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_expression, 7, 0, 184), [479] = {.entry = {.count = 1, .reusable = false}}, SHIFT(446), [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(750), [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704), [491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__statement, 1, 0, 0), [493] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__statement, 1, 0, 0), [495] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__statement, 1, 0, 0), REDUCE(sym__expression_except_range, 1, 0, 2), [498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_except_range, 1, 0, 2), [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_except_range, 1, 0, 2), [502] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__statement, 1, 0, 0), REDUCE(sym__expression_except_range, 1, 0, 2), [505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_expression, 5, 0, 94), [507] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_expression, 5, 0, 94), [509] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1, 0, 0), [511] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 1, 0, 0), [513] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_except_range, 1, 0, 0), [515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_except_range, 1, 0, 0), [517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 2, 0, 0), [519] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 2, 0, 0), [521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_block, 3, 0, 0), [523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_block, 3, 0, 0), [525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_expression, 3, 0, 29), [527] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_expression, 3, 0, 29), [529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_expression, 3, 0, 32), [531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_expression, 3, 0, 32), [533] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458), [535] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_item, 3, 0, 34), [537] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asm_item, 3, 0, 34), [539] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 4, 0, 61), [541] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_expression, 4, 0, 61), [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), [545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(754), [547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720), [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707), [551] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(627), [554] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(620), [557] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(617), [560] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(48), [563] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(2197), [566] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(1877), [569] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(21), [572] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(1878), [575] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(626), [578] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(749), [581] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(465), [584] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(73), [587] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(157), [590] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(18), [593] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(2085), [596] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(74), [599] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(158), [602] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(10), [605] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(61), [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), [610] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(1916), [613] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(515), [616] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(2201), [619] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(100), [622] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(22), [625] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(433), [628] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(17), [631] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(1980), [634] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(688), [637] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(1504), [640] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(673), [643] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(747), [646] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(747), [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554), [651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702), [653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(122), [655] = {.entry = {.count = 1, .reusable = false}}, SHIFT(511), [657] = {.entry = {.count = 1, .reusable = false}}, SHIFT(551), [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529), [661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(119), [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), [667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1886), [669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(467), [671] = {.entry = {.count = 1, .reusable = false}}, SHIFT(76), [673] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171), [675] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77), [677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), [679] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_label, 2, 0, 0), [681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_label, 2, 0, 0), [683] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1198), [685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(975), [687] = {.entry = {.count = 1, .reusable = false}}, SHIFT(971), [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), [691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1464), [693] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1277), [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2141), [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2056), [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1178), [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1008), [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1991), [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1867), [709] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1466), [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), [713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(450), [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1842), [717] = {.entry = {.count = 1, .reusable = false}}, SHIFT(443), [719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1234), [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1904), [723] = {.entry = {.count = 1, .reusable = false}}, SHIFT(444), [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1197), [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1532), [729] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1181), [731] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1367), [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1369), [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2171), [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), [739] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1478), [741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1196), [743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1248), [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2184), [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1372), [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2016), [753] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1452), [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), [757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1422), [759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1432), [761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1993), [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1380), [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2064), [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1375), [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1164), [771] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1556), [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1172), [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1091), [783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1518), [785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1447), [787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1459), [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2129), [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1463), [793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1236), [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), [797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(461), [799] = {.entry = {.count = 1, .reusable = false}}, SHIFT(463), [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1234), [803] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1773), [805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1201), [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1242), [809] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1258), [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2092), [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2004), [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), [819] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1707), [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1423), [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1448), [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1474), [827] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_closure_parameters, 3, 0, 0), [829] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_closure_parameters, 3, 0, 0), [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), [833] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1456), [835] = {.entry = {.count = 1, .reusable = false}}, SHIFT(208), [837] = {.entry = {.count = 1, .reusable = false}}, SHIFT(205), [839] = {.entry = {.count = 1, .reusable = false}}, SHIFT(204), [841] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1786), [843] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1472), [845] = {.entry = {.count = 1, .reusable = false}}, SHIFT(199), [847] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1445), [849] = {.entry = {.count = 1, .reusable = false}}, SHIFT(203), [851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1470), [853] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1496), [855] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 3, 0, 145), [857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 3, 0, 145), [859] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 4, 0, 95), [861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 4, 0, 95), [863] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 6, 0, 159), [865] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 6, 0, 159), [867] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inner_attribute_item, 5, 0, 0), [869] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inner_attribute_item, 5, 0, 0), [871] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program_type, 4, 0, 49), [873] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_program_type, 4, 0, 49), [875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 5, 0, 117), [877] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 5, 0, 117), [879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 5, 0, 118), [881] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 5, 0, 118), [883] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 5, 0, 119), [885] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 5, 0, 119), [887] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 5, 0, 120), [889] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 5, 0, 120), [891] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 5, 0, 80), [893] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 5, 0, 80), [895] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 5, 0, 119), [897] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 5, 0, 119), [899] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 5, 0, 121), [901] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 5, 0, 121), [903] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 5, 0, 120), [905] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 5, 0, 120), [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 5, 0, 119), [909] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 5, 0, 119), [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 5, 0, 120), [913] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 5, 0, 120), [915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration_list, 2, 0, 0), [917] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration_list, 2, 0, 0), [919] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abi_item, 4, 0, 50), [921] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abi_item, 4, 0, 50), [923] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_content_list, 3, 0, 0), [925] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_storage_content_list, 3, 0, 0), [927] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_configurable_item, 2, 0, 4), [929] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_configurable_item, 2, 0, 4), [931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_content_list, 5, 0, 0), [933] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_storage_content_list, 5, 0, 0), [935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 4, 0, 0), [937] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 4, 0, 0), [939] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 2, 0, 0), [941] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 2, 0, 0), [943] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 4, 0, 52), [945] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 4, 0, 52), [947] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 4, 0, 53), [949] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 4, 0, 53), [951] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 6, 0, 90), [953] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 6, 0, 90), [955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 6, 0, 128), [957] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 6, 0, 128), [959] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 6, 0, 129), [961] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 6, 0, 129), [963] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 6, 0, 130), [965] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 6, 0, 130), [967] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 6, 0, 99), [969] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 6, 0, 99), [971] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 6, 0, 135), [973] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 6, 0, 135), [975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 6, 0, 137), [977] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 6, 0, 137), [979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 6, 0, 138), [981] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 6, 0, 138), [983] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 6, 0, 139), [985] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 6, 0, 139), [987] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 6, 0, 140), [989] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 6, 0, 140), [991] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 6, 0, 103), [993] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 6, 0, 103), [995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 6, 0, 141), [997] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 6, 0, 141), [999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 6, 0, 142), [1001] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 6, 0, 142), [1003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 6, 0, 143), [1005] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 6, 0, 143), [1007] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abi_item, 3, 0, 14), [1009] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abi_item, 3, 0, 14), [1011] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 6, 0, 144), [1013] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 6, 0, 144), [1015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_content_list, 2, 0, 0), [1017] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_storage_content_list, 2, 0, 0), [1019] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 3, 0, 7), [1021] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 3, 0, 7), [1023] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 4, 0, 0), [1025] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 4, 0, 0), [1027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 6, 0, 53), [1029] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 6, 0, 53), [1031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 6, 0, 149), [1033] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 6, 0, 149), [1035] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 6, 0, 150), [1037] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 6, 0, 150), [1039] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 6, 0, 152), [1041] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 6, 0, 152), [1043] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 6, 0, 153), [1045] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 6, 0, 153), [1047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 6, 0, 117), [1049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 6, 0, 117), [1051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 6, 0, 154), [1053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 6, 0, 154), [1055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 6, 0, 155), [1057] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 6, 0, 155), [1059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 6, 0, 156), [1061] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 6, 0, 156), [1063] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2, 0, 0), [1065] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 2, 0, 0), [1067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 6, 0, 157), [1069] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 6, 0, 157), [1071] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 6, 0, 80), [1073] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 6, 0, 80), [1075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 6, 0, 120), [1077] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 6, 0, 120), [1079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 6, 0, 157), [1081] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 6, 0, 157), [1083] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 6, 0, 158), [1085] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 6, 0, 158), [1087] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 6, 0, 157), [1089] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 6, 0, 157), [1091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_empty_statement, 1, 0, 0), [1093] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_empty_statement, 1, 0, 0), [1095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 6, 0, 160), [1097] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 6, 0, 160), [1099] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 6, 0, 161), [1101] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 6, 0, 161), [1103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 6, 0, 162), [1105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 6, 0, 162), [1107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 7, 0, 163), [1109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 7, 0, 163), [1111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 5, 0, 0), [1113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 5, 0, 0), [1115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 4, 0, 54), [1117] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 4, 0, 54), [1119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 4, 0, 55), [1121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 4, 0, 55), [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 7, 0, 164), [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 7, 0, 164), [1127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 7, 0, 165), [1129] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 7, 0, 165), [1131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 7, 0, 129), [1133] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 7, 0, 129), [1135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 7, 0, 166), [1137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 7, 0, 166), [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 7, 0, 137), [1141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 7, 0, 137), [1143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 7, 0, 169), [1145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 7, 0, 169), [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 7, 0, 139), [1149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 7, 0, 139), [1151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 7, 0, 170), [1153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 7, 0, 170), [1155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 7, 0, 171), [1157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 7, 0, 171), [1159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 7, 0, 172), [1161] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 7, 0, 172), [1163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 7, 0, 173), [1165] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 7, 0, 173), [1167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 5, 0, 0), [1169] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 5, 0, 0), [1171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 7, 0, 152), [1173] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 7, 0, 152), [1175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 7, 0, 176), [1177] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 7, 0, 176), [1179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 7, 0, 177), [1181] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 7, 0, 177), [1183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 7, 0, 178), [1185] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 7, 0, 178), [1187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 7, 0, 120), [1189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 7, 0, 120), [1191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 7, 0, 179), [1193] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 7, 0, 179), [1195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 7, 0, 180), [1197] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 7, 0, 180), [1199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 7, 0, 181), [1201] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 7, 0, 181), [1203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 7, 0, 182), [1205] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 7, 0, 182), [1207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 7, 0, 161), [1209] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 7, 0, 161), [1211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 7, 0, 183), [1213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 7, 0, 183), [1215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mod_item, 3, 0, 7), [1217] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mod_item, 3, 0, 7), [1219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 6, 0, 0), [1221] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 6, 0, 0), [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 8, 0, 164), [1225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 8, 0, 164), [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 8, 0, 185), [1229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 8, 0, 185), [1231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 8, 0, 187), [1233] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 8, 0, 187), [1235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 8, 0, 188), [1237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 8, 0, 188), [1239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 8, 0, 189), [1241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 8, 0, 189), [1243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 3, 0, 14), [1245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 3, 0, 14), [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 6, 0, 0), [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 6, 0, 0), [1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 8, 0, 191), [1253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 8, 0, 191), [1255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 8, 0, 192), [1257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 8, 0, 192), [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 8, 0, 177), [1261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 8, 0, 177), [1263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 8, 0, 193), [1265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 8, 0, 193), [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 8, 0, 194), [1269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 8, 0, 194), [1271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 8, 0, 181), [1273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 8, 0, 181), [1275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 8, 0, 195), [1277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 8, 0, 195), [1279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 8, 0, 196), [1281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 8, 0, 196), [1283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 8, 0, 197), [1285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 8, 0, 197), [1287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 9, 0, 198), [1289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 9, 0, 198), [1291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 9, 0, 191), [1293] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 9, 0, 191), [1295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 9, 0, 199), [1297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 9, 0, 199), [1299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 9, 0, 200), [1301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 9, 0, 200), [1303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 9, 0, 201), [1305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 9, 0, 201), [1307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 9, 0, 196), [1309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 9, 0, 196), [1311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 9, 0, 202), [1313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 9, 0, 202), [1315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 10, 0, 203), [1317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 10, 0, 203), [1319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 10, 0, 200), [1321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 10, 0, 200), [1323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 10, 0, 204), [1325] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 10, 0, 204), [1327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 4, 0, 67), [1329] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 4, 0, 67), [1331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 4, 0, 68), [1333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 4, 0, 68), [1335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 4, 0, 24), [1337] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 4, 0, 24), [1339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 4, 0, 69), [1341] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 4, 0, 69), [1343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 4, 0, 70), [1345] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 4, 0, 70), [1347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 2, 0, 0), [1349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 2, 0, 0), [1351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 4, 0, 14), [1353] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 4, 0, 14), [1355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 4, 0, 52), [1357] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 4, 0, 52), [1359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 4, 0, 71), [1361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 4, 0, 71), [1363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 4, 0, 53), [1365] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 4, 0, 53), [1367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 4, 0, 52), [1369] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 4, 0, 52), [1371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 4, 0, 50), [1373] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 4, 0, 50), [1375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 4, 0, 53), [1377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 4, 0, 53), [1379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_item, 4, 0, 0), [1381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_item, 4, 0, 0), [1383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 4, 0, 49), [1385] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 4, 0, 49), [1387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 3, 0, 24), [1389] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 3, 0, 24), [1391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mod_item, 4, 0, 49), [1393] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mod_item, 4, 0, 49), [1395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 4, 0, 80), [1397] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 4, 0, 80), [1399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 4, 0, 81), [1401] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 4, 0, 81), [1403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 4, 0, 80), [1405] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 4, 0, 80), [1407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 4, 0, 80), [1409] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 4, 0, 80), [1411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 4, 0, 82), [1413] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_use_declaration, 4, 0, 82), [1415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 3, 0, 26), [1417] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 3, 0, 26), [1419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 3, 0, 28), [1421] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 3, 0, 28), [1423] = {.entry = {.count = 1, .reusable = false}}, SHIFT(967), [1425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), [1427] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1911), [1429] = {.entry = {.count = 1, .reusable = false}}, SHIFT(986), [1431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), [1433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), [1435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2090), [1437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), [1439] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1700), [1441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1700), [1443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration_list, 3, 0, 0), [1445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration_list, 3, 0, 0), [1447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_content_list, 4, 0, 0), [1449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_storage_content_list, 4, 0, 0), [1451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 5, 0, 86), [1453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 5, 0, 86), [1455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 5, 0, 87), [1457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 5, 0, 87), [1459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 3, 0, 8), [1461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 3, 0, 8), [1463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 3, 0, 0), [1465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 3, 0, 0), [1467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 5, 0, 89), [1469] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 5, 0, 89), [1471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 3, 0, 14), [1473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 3, 0, 14), [1475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 3, 0, 14), [1477] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 3, 0, 14), [1479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 3, 0, 31), [1481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_use_declaration, 3, 0, 31), [1483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(743), [1485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 5, 0, 90), [1487] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 5, 0, 90), [1489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 5, 0, 91), [1491] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 5, 0, 91), [1493] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature_item, 5, 0, 54), [1495] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature_item, 5, 0, 54), [1497] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 5, 0, 92), [1499] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_item, 5, 0, 92), [1501] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_item, 3, 0, 0), [1503] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_item, 3, 0, 0), [1505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 5, 0, 99), [1507] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 5, 0, 99), [1509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), [1511] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 5, 0, 100), [1513] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 5, 0, 100), [1515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 5, 0, 67), [1517] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 5, 0, 67), [1519] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 5, 0, 102), [1521] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 5, 0, 102), [1523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 5, 0, 103), [1525] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 5, 0, 103), [1527] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 5, 0, 104), [1529] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 5, 0, 104), [1531] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 5, 0, 95), [1533] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 5, 0, 95), [1535] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 5, 0, 106), [1537] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 5, 0, 106), [1539] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_item, 2, 0, 4), [1541] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_storage_item, 2, 0, 4), [1543] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 5, 0, 107), [1545] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 5, 0, 107), [1547] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program_type, 2, 0, 0), [1549] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_program_type, 2, 0, 0), [1551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 3, 0, 0), [1553] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 3, 0, 0), [1555] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 5, 0, 14), [1557] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 5, 0, 14), [1559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 5, 0, 53), [1561] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 5, 0, 53), [1563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 5, 0, 89), [1565] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 5, 0, 89), [1567] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 5, 0, 109), [1569] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 5, 0, 109), [1571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 5, 0, 89), [1573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 5, 0, 89), [1575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 5, 0, 110), [1577] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 5, 0, 110), [1579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 5, 0, 111), [1581] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 5, 0, 111), [1583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_item, 5, 0, 0), [1585] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_item, 5, 0, 0), [1587] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 5, 0, 122), [1589] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 5, 0, 122), [1591] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(967), [1594] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(975), [1597] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(971), [1600] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(427), [1603] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(1911), [1606] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(986), [1609] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(2101), [1612] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(428), [1615] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(515), [1618] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(2090), [1621] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(1236), [1624] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(460), [1627] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(461), [1630] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(463), [1633] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(1234), [1636] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(1904), [1639] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(444), [1642] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(1197), [1645] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(1532), [1648] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(1181), [1651] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(1700), [1654] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2, 0, 0), SHIFT_REPEAT(1700), [1657] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(413), [1660] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(484), [1663] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(488), [1666] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(418), [1669] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), [1671] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(419), [1674] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(417), [1677] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(413), [1680] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(483), [1683] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(1491), [1686] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_delim_token_tree_repeat1, 2, 0, 0), SHIFT_REPEAT(478), [1689] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), [1691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2119), [1693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2051), [1695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(413), [1697] = {.entry = {.count = 1, .reusable = false}}, SHIFT(484), [1699] = {.entry = {.count = 1, .reusable = false}}, SHIFT(488), [1701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), [1703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), [1705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), [1707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), [1709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), [1711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), [1713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1491), [1715] = {.entry = {.count = 1, .reusable = false}}, SHIFT(478), [1717] = {.entry = {.count = 1, .reusable = false}}, SHIFT(421), [1719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(479), [1721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), [1723] = {.entry = {.count = 1, .reusable = false}}, SHIFT(420), [1725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), [1727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), [1729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), [1731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2131), [1733] = {.entry = {.count = 1, .reusable = false}}, SHIFT(431), [1735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1949), [1737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), [1739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2134), [1741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1228), [1743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(432), [1745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), [1747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(430), [1749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), [1751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1221), [1753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2132), [1755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1959), [1757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(448), [1759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), [1761] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1490), [1763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1216), [1765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1223), [1767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1222), [1769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1225), [1771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1231), [1773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1246), [1775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1399), [1777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1516), [1779] = {.entry = {.count = 1, .reusable = false}}, SHIFT(462), [1781] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1446), [1783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(449), [1785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(459), [1787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(454), [1789] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1455), [1791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1287), [1793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), [1795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1521), [1797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1401), [1799] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1927), [1801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(914), [1803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), [1805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), [1807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), [1809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2032), [1811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1923), [1813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512), [1815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1919), [1817] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2049), [1819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1156), [1821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), [1823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(990), [1825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(981), [1827] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_enum_variant_list_repeat1, 2, 0, 0), [1829] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat1, 2, 0, 0), [1831] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat1, 2, 0, 0), SHIFT_REPEAT(2101), [1834] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_literal, 1, 0, 0), [1836] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1, 0, 0), [1838] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delim_token_tree, 2, 0, 0), [1840] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delim_token_tree, 2, 0, 0), [1842] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delim_token_tree, 3, 0, 0), [1844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delim_token_tree, 3, 0, 0), [1846] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__literal, 1, 0, 0), [1848] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__literal, 1, 0, 0), [1850] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primitive_type, 1, 0, 0), [1852] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 1, 0, 0), [1854] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3, 0, 0), [1856] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3, 0, 0), [1858] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 2, 0, 0), [1860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2, 0, 0), [1862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2140), [1864] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primitive_type, 4, 0, 0), [1866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 4, 0, 0), [1868] = {.entry = {.count = 1, .reusable = false}}, SHIFT(994), [1870] = {.entry = {.count = 1, .reusable = false}}, SHIFT(951), [1872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2158), [1874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1992), [1876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1829), [1878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), [1880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1947), [1882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1907), [1884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1896), [1886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1864), [1888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1866), [1890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1895), [1892] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_closure_parameters, 4, 0, 0), [1894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_closure_parameters, 4, 0, 0), [1896] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_closure_parameters, 2, 0, 0), [1898] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_closure_parameters, 2, 0, 0), [1900] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), [1902] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1215), [1904] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1501), [1906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1417), [1908] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1958), [1910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), [1912] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1249), [1914] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1969), [1916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(541), [1918] = {.entry = {.count = 1, .reusable = false}}, SHIFT(538), [1920] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1274), [1922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), [1924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1175), [1926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1193), [1928] = {.entry = {.count = 1, .reusable = false}}, SHIFT(618), [1930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(591), [1932] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1379), [1934] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1920), [1936] = {.entry = {.count = 1, .reusable = false}}, SHIFT(922), [1938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), [1940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519), [1942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2106), [1944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1888), [1946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), [1948] = {.entry = {.count = 1, .reusable = false}}, SHIFT(557), [1950] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2143), [1952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), [1954] = {.entry = {.count = 1, .reusable = false}}, SHIFT(572), [1956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), [1958] = {.entry = {.count = 1, .reusable = false}}, SHIFT(574), [1960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), [1962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(693), [1964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1195), [1966] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1279), [1968] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1498), [1970] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1269), [1972] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1268), [1974] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_type, 2, 0, 22), [1976] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_type, 2, 0, 22), [1978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), [1980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1686), [1982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(477), [1984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2015), [1986] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 1, 0, 6), [1988] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type, 1, 0, 6), [1990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1656), [1992] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 1, 0, 0), [1994] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type, 1, 0, 0), [1996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_type, 2, 0, 23), [1998] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_type, 2, 0, 23), [2000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_expression, 1, 0, 0), [2002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2197), [2004] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continue_expression, 1, 0, 0), [2006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1273), [2008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1614), [2010] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier, 2, 0, 8), [2012] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_type_identifier, 2, 0, 8), [2014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_identifier, 2, 0, 7), [2016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1848), [2018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier, 3, 0, 16), [2020] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_type_identifier, 3, 0, 16), [2022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_identifier, 3, 0, 15), [2024] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier, 3, 0, 41), [2026] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_type_identifier, 3, 0, 41), [2028] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_identifier, 3, 0, 40), [2030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier, 3, 0, 37), [2032] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_type_identifier, 3, 0, 37), [2034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_identifier, 3, 0, 36), [2036] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_except_range, 1, 0, 1), [2038] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_modifiers_repeat1, 1, 0, 0), [2040] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_except_range, 1, 0, 1), [2042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2038), [2044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), [2046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0), [2048] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 3, 0, 0), [2050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 3, 0, 0), [2052] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 3, 0, 0), [2054] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__type, 1, 0, 6), REDUCE(sym__expression_except_range, 1, 0, 0), [2057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), [2059] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__type, 1, 0, 6), REDUCE(sym__expression_except_range, 1, 0, 0), [2062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1628), [2064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 4, 0, 0), [2066] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 4, 0, 0), [2068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 4, 0, 0), [2070] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 4, 0, 0), [2072] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 5, 0, 0), [2074] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 5, 0, 0), [2076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_arguments, 5, 0, 0), [2078] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_arguments, 5, 0, 0), [2080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 6, 0, 0), [2082] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 6, 0, 0), [2084] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_identifier, 3, 0, 36), [2086] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier_in_expression_position, 3, 0, 37), [2088] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_function, 3, 0, 38), [2090] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_function, 3, 0, 38), [2092] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type_with_turbofish, 3, 0, 39), [2094] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_identifier, 3, 0, 40), [2096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier_in_expression_position, 3, 0, 41), [2098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2127), [2100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2124), [2102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2128), [2104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 3, 0, 66), [2106] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 3, 0, 66), [2108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562), [2110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_expression, 3, 0, 45), [2112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_expression, 3, 0, 45), [2114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_expression, 3, 0, 46), [2116] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_expression, 3, 0, 46), [2118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type_with_turbofish, 3, 0, 47), [2120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1, 0, 0), [2122] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1, 0, 0), [2124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), [2126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 2, 0, 17), [2128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_type, 2, 0, 17), [2130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 2, 0, 18), [2132] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_type, 2, 0, 18), [2134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 2, 0, 19), [2136] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_type, 2, 0, 19), [2138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1526), [2140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 2, 0, 21), [2142] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 2, 0, 21), [2144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), [2146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2098), [2148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 2, 0, 25), [2150] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 2, 0, 25), [2152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), [2154] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_identifier, 3, 0, 15), [2156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier_in_expression_position, 3, 0, 16), [2158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 2, 0, 27), [2160] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 2, 0, 27), [2162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), [2164] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_identifier, 2, 0, 7), [2166] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier_in_expression_position, 2, 0, 8), [2168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0), [2170] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 2, 0, 0), [2172] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_type_with_turbofish, 3, 0, 39), [2174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_type_with_turbofish, 3, 0, 47), [2176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage, 3, 0, 0), [2178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_storage, 3, 0, 0), [2180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_type, 3, 0, 65), [2182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pointer_type, 3, 0, 65), [2184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_type, 3, 0, 65), [2186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reference_type, 3, 0, 65), [2188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_range_expression, 3, 0, 0), [2190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_range_expression, 3, 0, 0), [2192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_empty_type, 1, 0, 0), [2194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1670), [2196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_closure_expression, 5, 0, 115), [2198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_closure_expression, 5, 0, 115), [2200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 4, 0, 0), [2202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_initializer_list, 4, 0, 0), [2204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 3, 0, 0), [2206] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_expression, 3, 0, 0), [2208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 4, 0, 0), [2210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 4, 0, 0), [2212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 2, 0, 0), [2214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 2, 0, 0), [2216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 3, 0, 0), [2218] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_initializer_list, 3, 0, 0), [2220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abi_instance_expression, 2, 0, 3), [2222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abi_instance_expression, 2, 0, 3), [2224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 5, 0, 134), [2226] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_type, 5, 0, 134), [2228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 5, 0, 0), [2230] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 5, 0, 0), [2232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 5, 0, 136), [2234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 5, 0, 136), [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_expression, 2, 0, 0), [2238] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continue_expression, 2, 0, 0), [2240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 7, 0, 0), [2242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 7, 0, 0), [2244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 6, 0, 0), [2246] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 6, 0, 0), [2248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abi_call_expression, 3, 0, 48), [2250] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abi_call_expression, 3, 0, 48), [2252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 5, 0, 0), [2254] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_initializer_list, 5, 0, 0), [2256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 6, 0, 124), [2258] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_expression, 6, 0, 124), [2260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 4, 0, 0), [2262] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_expression, 4, 0, 0), [2264] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 6, 0, 0), [2266] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_expression, 6, 0, 0), [2268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 5, 0, 0), [2270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 5, 0, 0), [2272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 5, 0, 0), [2274] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 5, 0, 0), [2276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 4, 0, 96), [2278] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 4, 0, 96), [2280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 4, 0, 0), [2282] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 4, 0, 0), [2284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 4, 0, 101), [2286] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 4, 0, 101), [2288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2174), [2290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 5, 0, 84), [2292] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_expression, 5, 0, 84), [2294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unit_type, 2, 0, 0), [2296] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unit_type, 2, 0, 0), [2298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 2, 0, 10), [2300] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 2, 0, 10), [2302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 0), [2304] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 0), [2306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 4, 0, 105), [2308] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 4, 0, 105), [2310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 4, 0, 0), [2312] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 4, 0, 0), [2314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 5, 0, 0), [2316] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_expression, 5, 0, 0), [2318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1697), [2320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 2, 0, 11), [2322] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 2, 0, 11), [2324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_cast_expression, 3, 0, 42), [2326] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_cast_expression, 3, 0, 42), [2328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 2, 0, 12), [2330] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 2, 0, 12), [2332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_type, 2, 0, 24), [2334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reference_type, 2, 0, 24), [2336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1663), [2338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 3, 0, 62), [2340] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_type, 3, 0, 62), [2342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 4, 0, 0), [2344] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 4, 0, 0), [2346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_type, 3, 0, 0), [2348] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_type, 3, 0, 0), [2350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_expression, 2, 0, 0), [2352] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_expression, 2, 0, 0), [2354] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 4, 0, 145), [2356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 4, 0, 145), [2358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_last_match_arm, 4, 0, 145), [2360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bounded_type, 3, 0, 0), [2362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bounded_type, 3, 0, 0), [2364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 2, 0, 0), [2366] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_expression, 2, 0, 0), [2368] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 5, 0, 95), [2370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 5, 0, 95), [2372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_last_match_arm, 5, 0, 95), [2374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 3, 0, 0), [2376] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 3, 0, 0), [2378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2006), [2380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_closure_expression, 4, 0, 83), [2382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_closure_expression, 4, 0, 83), [2384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unit_expression, 2, 0, 0), [2386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unit_expression, 2, 0, 0), [2388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2186), [2390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 6, 0, 0), [2392] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 6, 0, 0), [2394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 2, 0, 0), [2396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_initializer_list, 2, 0, 0), [2398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield_expression, 2, 0, 0), [2400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), [2402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(580), [2404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield_expression, 2, 0, 0), [2406] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), [2408] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), [2410] = {.entry = {.count = 1, .reusable = false}}, SHIFT(151), [2412] = {.entry = {.count = 1, .reusable = false}}, SHIFT(155), [2414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), [2416] = {.entry = {.count = 1, .reusable = false}}, SHIFT(20), [2418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), [2420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), [2422] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), [2424] = {.entry = {.count = 1, .reusable = false}}, SHIFT(176), [2426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), [2428] = {.entry = {.count = 1, .reusable = false}}, SHIFT(107), [2430] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1838), [2432] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 0), [2434] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 0), [2436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, 0, 43), [2438] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, 0, 43), [2440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, 0, 44), [2442] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, 0, 44), [2444] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_closure_expression, 2, 0, 13), [2446] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), [2448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(738), [2450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), [2452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_expression, 3, 0, 0), [2454] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_break_expression, 3, 0, 0), [2456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_expression, 2, 0, 9), [2458] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reference_expression, 2, 0, 9), [2460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_expression, 3, 0, 35), [2462] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reference_expression, 3, 0, 35), [2464] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression, 2, 0, 0), [2466] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_expression, 2, 0, 0), [2468] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_assignment_expr, 3, 0, 44), [2470] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_assignment_expr, 3, 0, 44), [2472] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_closure_expression, 3, 0, 34), [2474] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_scoped_identifier, 3, 0, 36), REDUCE(sym_scoped_type_identifier, 3, 0, 37), [2477] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_scoped_identifier, 3, 0, 36), REDUCE(sym_scoped_type_identifier, 3, 0, 37), [2480] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_scoped_identifier, 3, 0, 40), REDUCE(sym_scoped_type_identifier, 3, 0, 41), [2483] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_scoped_identifier, 3, 0, 40), REDUCE(sym_scoped_type_identifier, 3, 0, 41), [2486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2136), [2488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1449), [2490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_where_clause, 4, 0, 0), [2492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1775), [2494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1943), [2496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(555), [2498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1928), [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), [2502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2049), [2504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_where_clause, 3, 0, 0), [2506] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_scoped_identifier, 2, 0, 7), REDUCE(sym_scoped_type_identifier, 2, 0, 8), [2509] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_scoped_identifier, 2, 0, 7), REDUCE(sym_scoped_type_identifier, 2, 0, 8), [2512] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_scoped_identifier, 3, 0, 15), REDUCE(sym_scoped_type_identifier, 3, 0, 16), [2515] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_scoped_identifier, 3, 0, 15), REDUCE(sym_scoped_type_identifier, 3, 0, 16), [2518] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1206), [2520] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1213), [2522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2159), [2524] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1207), [2526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1207), [2528] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1202), [2530] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1203), [2532] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1205), [2534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1205), [2536] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__type, 1, 0, 0), REDUCE(sym__expression_except_range, 1, 0, 1), [2539] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__type, 1, 0, 0), REDUCE(sym__expression_except_range, 1, 0, 1), [2542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1629), [2544] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__type, 1, 0, 0), REDUCE(sym__expression_except_range, 1, 0, 0), [2547] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__type, 1, 0, 0), REDUCE(sym__expression_except_range, 1, 0, 0), [2550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2040), [2552] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_unit_type, 2, 0, 0), REDUCE(sym_unit_expression, 2, 0, 0), [2555] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_unit_type, 2, 0, 0), REDUCE(sym_unit_expression, 2, 0, 0), [2558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2150), [2560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1640), [2562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), [2564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), [2566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), [2568] = {.entry = {.count = 1, .reusable = false}}, SHIFT(16), [2570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2188), [2572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1671), [2574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), [2576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), [2578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_parameter, 3, 0, 79), [2580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2080), [2582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2029), [2584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1644), [2586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), [2588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), [2590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(744), [2592] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1477), [2594] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1451), [2596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2111), [2598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(833), [2600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1562), [2602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1636), [2604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1658), [2606] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1442), [2608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1442), [2610] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_parameters, 4, 0, 0), [2612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, 0, 0), [2614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), [2616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1115), [2618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1965), [2620] = {.entry = {.count = 1, .reusable = false}}, SHIFT(124), [2622] = {.entry = {.count = 1, .reusable = false}}, SHIFT(125), [2624] = {.entry = {.count = 1, .reusable = false}}, SHIFT(126), [2626] = {.entry = {.count = 1, .reusable = false}}, SHIFT(127), [2628] = {.entry = {.count = 1, .reusable = false}}, SHIFT(128), [2630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), [2632] = {.entry = {.count = 1, .reusable = false}}, SHIFT(27), [2634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), [2636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), [2638] = {.entry = {.count = 1, .reusable = false}}, SHIFT(133), [2640] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134), [2642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), [2644] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), [2646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), [2648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), [2650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1134), [2652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1967), [2654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), [2656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1890), [2658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), [2660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), [2662] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_parameters, 3, 0, 63), [2664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, 0, 63), [2666] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_parameters, 3, 0, 0), [2668] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, 0, 0), [2670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), [2672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), [2674] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28), [2676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1634), [2678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(742), [2680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_last_match_arm, 4, 0, 95), [2682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_parameters, 5, 0, 63), [2684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 5, 0, 63), [2686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), [2688] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_parameters, 5, 0, 0), [2690] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 5, 0, 0), [2692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), [2694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), [2696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(745), [2698] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_parameters, 4, 0, 63), [2700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, 0, 63), [2702] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_content, 3, 0, 35), [2704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 112), [2706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1045), [2708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1956), [2710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 35), [2712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2, 0, 0), [2714] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 3, 0, 0), [2716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), [2718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1988), [2720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), [2722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1922), [2724] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer, 4, 0, 151), [2726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), [2728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1849), [2730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(739), [2732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_last_match_arm, 3, 0, 145), [2734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_content, 4, 0, 126), [2736] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_expression_repeat1, 2, 0, 0), [2738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), [2740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1081), [2742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1962), [2744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_base_field_initializer, 2, 0, 0), [2746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), [2748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), [2750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1667), [2752] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat1, 2, 0, 0), SHIFT_REPEAT(2158), [2755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(696), [2757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1731), [2759] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer, 3, 0, 116), [2761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1092), [2763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__let_chain, 3, 0, 0), [2765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), [2767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(692), [2769] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1256), [2771] = {.entry = {.count = 1, .reusable = false}}, SHIFT(985), [2773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), [2775] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__condition, 1, 0, 0), [2777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(758), [2779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_condition, 4, 0, 95), [2781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), [2783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(616), [2785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2143), [2787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), [2789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(736), [2791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1104), [2793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), [2795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), [2797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), [2799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(714), [2801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1190), [2803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1141), [2805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), [2807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1030), [2809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(762), [2811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1167), [2813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1546), [2815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1521), [2817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2027), [2819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2028), [2821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1972), [2823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(524), [2825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), [2827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1263), [2829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2033), [2831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2034), [2833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2192), [2835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(911), [2837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1915), [2839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), [2841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1968), [2843] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1167), [2846] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1546), [2849] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1521), [2852] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(2027), [2855] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(2028), [2858] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1972), [2861] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(524), [2864] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(456), [2867] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1263), [2870] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(2033), [2873] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(2034), [2876] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(2192), [2879] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(911), [2882] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1915), [2885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), [2887] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1968), [2890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), [2892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1029), [2894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1002), [2896] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_visibility_modifier, 5, 0, 108), [2898] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility_modifier, 5, 0, 108), [2900] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_visibility_modifier, 1, 0, 0), [2902] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility_modifier, 1, 0, 0), [2904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1930), [2906] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_visibility_modifier, 4, 0, 0), [2908] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility_modifier, 4, 0, 0), [2910] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_visibility_modifier, 5, 0, 0), [2912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility_modifier, 5, 0, 0), [2914] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1317), [2916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), [2918] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1316), [2920] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1318), [2922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1318), [2924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), [2926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480), [2928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(621), [2930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), [2932] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1817), [2934] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1813), [2936] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1819), [2938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1819), [2940] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1810), [2942] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1809), [2944] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1811), [2946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1811), [2948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__pattern, 1, 0, 0), [2950] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__pattern, 1, 0, 0), [2952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1282), [2954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), [2956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1739), [2958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(794), [2960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), [2962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2044), [2964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1664), [2966] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__pattern, 1, 0, 1), [2968] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__pattern, 1, 0, 1), [2970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2114), [2972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(793), [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2081), [2976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2099), [2978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2097), [2980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2095), [2982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1715), [2984] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__type, 1, 0, 6), REDUCE(sym__pattern, 1, 0, 0), [2987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), [2989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1693), [2991] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__literal_pattern, 1, 0, 0), [2993] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__literal_pattern, 1, 0, 0), [2995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), [2997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1677), [2999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_negative_literal, 2, 0, 0), [3001] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_negative_literal, 2, 0, 0), [3003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), [3005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1804), [3007] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_range_pattern, 3, 0, 0), [3009] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_range_pattern, 3, 0, 0), [3011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1620), [3013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_range_pattern, 3, 0, 60), [3015] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_range_pattern, 3, 0, 60), [3017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2024), [3019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1593), [3021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2082), [3023] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_range_pattern, 3, 0, 1), [3025] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_range_pattern, 3, 0, 1), [3027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590), [3029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(579), [3031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534), [3033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), [3035] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_range_pattern, 3, 0, 56), [3037] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_range_pattern, 3, 0, 56), [3039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1338), [3041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), [3043] = {.entry = {.count = 1, .reusable = false}}, SHIFT(508), [3045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(844), [3047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_pattern, 5, 0, 0), [3049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_pattern, 5, 0, 0), [3051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mut_pattern, 2, 0, 0), [3053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mut_pattern, 2, 0, 0), [3055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_or_pattern, 3, 0, 0), [3057] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_or_pattern, 3, 0, 0), [3059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_pattern, 3, 0, 0), [3061] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_pattern, 3, 0, 0), [3063] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ref_pattern, 2, 0, 0), [3065] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ref_pattern, 2, 0, 0), [3067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), [3069] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2, 0, 0), [3071] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 5, 0, 0), [3073] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 5, 0, 0), [3075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_pattern, 4, 0, 0), [3077] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_pattern, 4, 0, 0), [3079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 5, 0, 57), [3081] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 5, 0, 57), [3083] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_struct_pattern, 5, 0, 59), [3085] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_struct_pattern, 5, 0, 59), [3087] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 5, 0, 59), [3089] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 5, 0, 59), [3091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_struct_pattern, 3, 0, 59), [3093] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_struct_pattern, 3, 0, 59), [3095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_captured_pattern, 3, 0, 0), [3097] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_captured_pattern, 3, 0, 0), [3099] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 4, 0, 0), [3101] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 4, 0, 0), [3103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_pattern, 3, 0, 0), [3105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reference_pattern, 3, 0, 0), [3107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 3, 0, 59), [3109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 3, 0, 59), [3111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_remaining_field_pattern, 1, 0, 0), [3113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_remaining_field_pattern, 1, 0, 0), [3115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_pattern, 2, 0, 0), [3117] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reference_pattern, 2, 0, 0), [3119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_struct_pattern, 4, 0, 59), [3121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_struct_pattern, 4, 0, 59), [3123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 4, 0, 59), [3125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 4, 0, 59), [3127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 4, 0, 57), [3129] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 4, 0, 57), [3131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, 0, 0), [3133] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 3, 0, 0), [3135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_pattern, 2, 0, 0), [3137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_pattern, 2, 0, 0), [3139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deref_pattern, 2, 0, 0), [3141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_deref_pattern, 2, 0, 0), [3143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 3, 0, 57), [3145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 3, 0, 57), [3147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 6, 0, 57), [3149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 6, 0, 57), [3151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_struct_pattern, 6, 0, 59), [3153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_struct_pattern, 6, 0, 59), [3155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 6, 0, 59), [3157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 6, 0, 59), [3159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2017), [3161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1513), [3163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2066), [3165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2067), [3167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1977), [3169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2068), [3171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2069), [3173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2195), [3175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), [3177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2008), [3179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1905), [3181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1548), [3183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2022), [3185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2035), [3187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1908), [3189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2055), [3191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2076), [3193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2079), [3195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920), [3197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2152), [3199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2046), [3201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2113), [3203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), [3205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(600), [3207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(585), [3209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1783), [3211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2117), [3213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(755), [3215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), [3217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), [3219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1291), [3221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1995), [3223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595), [3225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), [3227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(800), [3229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1292), [3231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), [3233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1370), [3235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1025), [3237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1297), [3239] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1660), [3241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2093), [3243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1244), [3245] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1884), [3247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2109), [3249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(996), [3251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), [3253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), [3255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(601), [3257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), [3259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), [3261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(535), [3263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), [3265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2007), [3267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1233), [3269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2052), [3271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), [3273] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1622), [3275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2191), [3277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), [3279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), [3281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2157), [3283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1003), [3285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), [3287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2045), [3289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1014), [3291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(596), [3293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1245), [3295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949), [3297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), [3299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1420), [3301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), [3303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1084), [3305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(945), [3307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1068), [3309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), [3311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1105), [3313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1117), [3315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1129), [3317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), [3319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), [3321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1136), [3323] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__type, 1, 0, 0), REDUCE(sym__pattern, 1, 0, 1), [3326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1224), [3328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1247), [3330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423), [3332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1, 0, 1), [3334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), [3336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), [3338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), [3340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1, 0, 0), [3342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), [3344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1702), [3346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2118), [3348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1227), [3350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1711), [3352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), [3354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1694), [3356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), [3358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), [3360] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1444), [3362] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2074), [3364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(853), [3366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1879), [3368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(855), [3370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_higher_ranked_trait_bound, 3, 0, 67), [3372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_trait_bounds_repeat1, 2, 0, 0), [3374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861), [3376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(835), [3378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(542), [3380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543), [3382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(544), [3384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1017), [3386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), [3388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1611), [3390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1616), [3392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), [3394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1063), [3396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1646), [3398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1650), [3400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1692), [3402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_removed_trait_bound, 2, 0, 0), [3404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), [3406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), [3408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_bounds, 2, 0, 0), [3410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505), [3412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), [3414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), [3416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), [3418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), [3420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_self_parameter, 1, 0, 0), [3422] = {.entry = {.count = 1, .reusable = false}}, SHIFT(540), [3424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1997), [3426] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_trait_bounds_repeat1, 2, 0, 0), SHIFT_REPEAT(507), [3429] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1389), [3431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1716), [3433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2151), [3435] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0), REDUCE(sym_tuple_struct_pattern, 3, 0, 59), [3438] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0), REDUCE(sym_tuple_struct_pattern, 4, 0, 59), [3441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), [3443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), [3445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), [3447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1295), [3449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1168), [3451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), [3453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1006), [3455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599), [3457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1009), [3459] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1777), [3461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_function_modifiers_repeat1, 1, 0, 0), [3463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), [3465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1346), [3467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1724), [3469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), [3471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035), [3473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(607), [3475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1039), [3477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1043), [3479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1057), [3481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(609), [3483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1071), [3485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_self_parameter, 2, 0, 0), [3487] = {.entry = {.count = 1, .reusable = false}}, SHIFT(545), [3489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2180), [3491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1075), [3493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), [3495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1689), [3497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(995), [3499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(612), [3501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), [3503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1102), [3505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), [3507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1106), [3509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1293), [3511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1120), [3513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1125), [3515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(614), [3517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1137), [3519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1144), [3521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), [3523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), [3525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(566), [3527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), [3529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), [3531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(615), [3533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1339), [3535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(845), [3537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1678), [3539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), [3541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), [3543] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1390), [3545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1674), [3547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2019), [3549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2010), [3551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), [3553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2042), [3555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), [3557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), [3559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), [3561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), [3563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530), [3565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2189), [3567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), [3569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_bounds, 3, 0, 0), [3571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), [3573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1077), [3575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(582), [3577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), [3579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(540), [3581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1237), [3583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455), [3585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__use_clause, 1, 0, 0), [3587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2125), [3589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1545), [3591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1525), [3593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682), [3595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 63), [3597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), [3599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(510), [3601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), [3603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__use_clause, 1, 0, 1), [3605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2100), [3607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1500), [3609] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__pattern, 1, 0, 0), SHIFT(184), [3612] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__pattern, 1, 0, 0), SHIFT(1158), [3615] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_trait_bounds_repeat1, 2, 0, 0), SHIFT_REPEAT(506), [3618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), [3620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), [3622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), [3624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1902), [3626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_self_parameter, 3, 0, 0), [3628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), [3630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), [3632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594), [3634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1901), [3636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1410), [3638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), [3640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1173), [3642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), [3644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(597), [3646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1939), [3648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1161), [3650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1163), [3652] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_unit_type, 2, 0, 0), REDUCE(sym_tuple_pattern, 2, 0, 0), [3655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), [3657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), [3659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1158), [3661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1013), [3663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), [3665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), [3667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1948), [3669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), [3671] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat1, 2, 0, 0), SHIFT_REPEAT(2046), [3674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(746), [3676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), [3678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1402), [3680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), [3682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), [3684] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_block_repeat1, 2, 0, 114), SHIFT_REPEAT(1525), [3687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_asm_block_repeat1, 2, 0, 114), [3689] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 4, 0, 125), [3691] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_modifiers_repeat1, 2, 0, 0), SHIFT_REPEAT(1486), [3694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_modifiers_repeat1, 2, 0, 0), [3696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), [3698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1185), [3700] = {.entry = {.count = 1, .reusable = false}}, SHIFT(528), [3702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487), [3704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1493), [3706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), [3708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1945), [3710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), [3712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1540), [3714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1046), [3716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), [3718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1957), [3720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), [3722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_asm_content_repeat1, 3, 0, 0), [3724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1871), [3726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(992), [3728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1672), [3730] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2110), [3732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1187), [3734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), [3736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1241), [3738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), [3740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1523), [3742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_parameter, 1, 0, 33), [3744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), [3746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(521), [3748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(737), [3750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1347), [3752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(583), [3754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1725), [3756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1998), [3758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), [3760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), [3762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1903), [3764] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1735), [3766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), [3768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), [3770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1926), [3772] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 3, 0, 85), [3774] = {.entry = {.count = 1, .reusable = false}}, SHIFT(548), [3776] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 3, 0, 0), [3778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(470), [3780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), [3782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635), [3784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1486), [3786] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_modifiers, 1, 0, 0), [3788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1082), [3790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), [3792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1964), [3794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(752), [3796] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_asm_content_repeat1, 1, 0, 0), [3798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1981), [3800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561), [3802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), [3804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(781), [3806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1219), [3808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), [3810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1183), [3812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1502), [3814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), [3816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(984), [3818] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_where_clause, 2, 0, 0), [3820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(782), [3822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545), [3824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2, 0, 0), [3826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), [3828] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2, 0, 0), [3830] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2, 0, 0), SHIFT_REPEAT(1540), [3833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493), [3835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1869), [3837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2011), [3839] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(451), [3842] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1597), [3844] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1751), [3846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2020), [3848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), [3850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(528), [3852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), [3854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), [3856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1921), [3858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1768), [3860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2, 0, 0), [3862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_where_clause_repeat1, 2, 0, 0), [3864] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_where_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(805), [3867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1110), [3869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3, 0, 79), [3871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), [3873] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_list, 2, 0, 0), [3875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 5, 0, 186), [3877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(481), [3879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960), [3881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568), [3883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), [3885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), [3887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1061), [3889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_item_repeat1, 2, 0, 0), [3891] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attribute_item_repeat1, 2, 0, 0), SHIFT_REPEAT(960), [3894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_binding, 3, 0, 131), [3896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1332), [3898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), [3900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1676), [3902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1307), [3904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), [3906] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_pattern, 1, 0, 0), [3908] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2, 0, 0), SHIFT_REPEAT(81), [3911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_arguments_repeat1, 2, 0, 0), [3913] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_use_list, 2, 0, 30), [3915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1505), [3917] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_arguments_repeat1, 2, 0, 0), SHIFT_REPEAT(475), [3920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1069), [3922] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2, 0, 0), [3924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), [3926] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 3, 0, 132), [3928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469), [3930] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_field_declaration_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1358), [3933] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_declaration_list_repeat1, 2, 0, 0), [3935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 3, 0, 133), [3937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1073), [3939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1214), [3941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), [3943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1079), [3945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1322), [3947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1162), [3949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), [3951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593), [3953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), [3955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1308), [3957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), [3959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), [3961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1865), [3963] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 0), [3965] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_ordered_field_declaration_list_repeat1, 2, 0, 24), [3967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1311), [3969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), [3971] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_type_parameter, 3, 0, 97), [3973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1090), [3975] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1329), [3978] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_pattern_repeat1, 2, 0, 0), [3980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1093), [3982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), [3984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1096), [3986] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_ordered_field_declaration_list_repeat1, 2, 0, 148), SHIFT_REPEAT(501), [3989] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_ordered_field_declaration_list_repeat1, 2, 0, 148), [3991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), [3993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1309), [3995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1328), [3997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), [3999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1108), [4001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant, 1, 0, 51), [4003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), [4005] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1525), [4008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_asm_content_repeat1, 2, 0, 0), [4010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1112), [4012] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 4, 0, 106), [4014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), [4016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1312), [4018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(778), [4020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1118), [4022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant, 2, 0, 7), [4024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), [4026] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_parameter, 4, 0, 87), [4028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1127), [4030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_list, 5, 0, 0), [4032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(991), [4034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1131), [4036] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1383), [4039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(821), [4041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1139), [4043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1301), [4045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1142), [4047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1147), [4049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1151), [4051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1154), [4053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), [4055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1306), [4057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), [4059] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_field_initializer_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1326), [4062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_initializer_list_repeat1, 2, 0, 0), [4064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), [4066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), [4068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632), [4070] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_wildcard, 1, 0, 0), [4072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(988), [4074] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 1, 0, 58), [4076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), [4078] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_where_predicate, 2, 0, 64), [4080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_as_clause, 3, 0, 72), [4082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(791), [4084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), [4086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(989), [4088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), [4090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(735), [4092] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 2, 0, 93), [4094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), [4096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(787), [4098] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_wildcard, 3, 0, 1), [4100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant, 3, 0, 127), [4102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_use_list, 3, 0, 73), [4104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_list, 3, 0, 0), [4106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1266), [4108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(624), [4110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), [4112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), [4114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), [4116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1953), [4118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(849), [4120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_as_clause, 3, 0, 74), [4122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943), [4124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_wildcard, 3, 0, 0), [4126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), [4128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1050), [4130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1253), [4132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1261), [4134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_use_list, 3, 0, 75), [4136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), [4138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1319), [4140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1239), [4142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2083), [4144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), [4146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2086), [4148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1011), [4150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1299), [4152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), [4154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), [4156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), [4158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), [4160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1015), [4162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(978), [4164] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat2, 2, 0, 0), SHIFT_REPEAT(1354), [4167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat2, 2, 0, 0), [4169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), [4171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1310), [4173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), [4175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(548), [4177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1315), [4179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant, 4, 0, 86), [4181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), [4183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), [4185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_list, 4, 0, 0), [4187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), [4189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), [4191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), [4193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), [4195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), [4197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(605), [4199] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(143), [4202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_type_parameter, 3, 0, 98), [4204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), [4206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2102), [4208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), [4210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1267), [4212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2013), [4214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), [4216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_content, 1, 0, 0), [4218] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_binding, 4, 0, 167), [4220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), [4222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), [4224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 4, 0, 168), [4226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), [4228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), [4230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(565), [4232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1031), [4234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), [4236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1305), [4238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1032), [4240] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(190), [4243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1314), [4245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1240), [4247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_where_predicate, 2, 0, 88), [4249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_closure_parameters_repeat1, 2, 0, 0), [4251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(499), [4253] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_closure_parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(440), [4256] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_list_repeat1, 2, 0, 0), SHIFT_REPEAT(936), [4259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_list_repeat1, 2, 0, 0), [4261] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_type_repeat1, 2, 0, 0), SHIFT_REPEAT(586), [4264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1294), [4266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), [4268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), [4270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), [4272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1290), [4274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shorthand_field_initializer, 2, 0, 0), [4276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), [4278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), [4280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435), [4282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), [4284] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(434), [4287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_asm_parameters_repeat1, 2, 0, 0), [4289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), [4291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1184), [4293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), [4295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), [4297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(587), [4299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1285), [4301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), [4303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_ordered_field_declaration_list_repeat1, 3, 0, 65), [4305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2122), [4307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522), [4309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shorthand_field_initializer, 1, 0, 0), [4311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), [4313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), [4315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), [4317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492), [4319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1897), [4321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1351), [4323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), [4325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1352), [4327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constrained_type_parameter, 2, 0, 64), [4329] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_storage_content_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1303), [4332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_storage_content_list_repeat1, 2, 0, 0), [4334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_ordered_field_declaration_list_repeat1, 4, 0, 175), [4336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598), [4338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473), [4340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1041), [4342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1331), [4344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(606), [4346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1296), [4348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), [4350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), [4352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), [4354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), [4356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), [4358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1302), [4360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), [4362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), [4364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), [4366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), [4368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(953), [4370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1270), [4372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1272), [4374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1055), [4376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat2, 3, 0, 0), [4378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 2, 0, 0), [4380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), [4382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__condition, 1, 0, 5), [4384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), [4386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), [4388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), [4390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), [4392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(955), [4394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2200), [4396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_parameter, 1, 0, 0), [4398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), [4400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), [4402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), [4404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1087), [4406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1524), [4408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1465), [4410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_declaration_list_repeat1, 3, 0, 0), [4412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1101), [4414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 5, 0, 65), [4416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 5, 0, 174), [4418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 5, 0, 147), [4420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), [4422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 5, 0, 175), [4424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2, 0, 76), [4426] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_asm_content_repeat1, 4, 0, 0), [4428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), [4430] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2, 0, 3), [4432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1124), [4434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1538), [4436] = {.entry = {.count = 1, .reusable = false}}, SHIFT(397), [4438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), [4440] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1669), [4442] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2103), [4444] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_asm_block_repeat1, 1, 0, 77), [4446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(556), [4448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1461), [4450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualified_type, 3, 0, 78), [4452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 6, 0, 174), [4454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 6, 0, 175), [4456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 6, 0, 190), [4458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), [4460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1199), [4462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), [4464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2005), [4466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 7, 0, 190), [4468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1481), [4470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 3, 0, 0), [4472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), [4474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954), [4476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2176), [4478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 3, 0, 24), [4480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), [4482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), [4484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(963), [4486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2120), [4488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1471), [4490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), [4492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 4, 0, 65), [4494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), [4496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 4, 0, 24), [4498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), [4500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ordered_field_declaration_list, 4, 0, 147), [4502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1508), [4504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), [4506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), [4508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1519), [4510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466), [4512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), [4514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1530), [4516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), [4518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), [4520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), [4522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), [4524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1937), [4526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1259), [4528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1912), [4530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1426), [4532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1407), [4534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1264), [4536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), [4538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1250), [4540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), [4542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), [4544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1631), [4546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), [4548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1251), [4550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), [4552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1252), [4554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1254), [4556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), [4558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), [4560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(822), [4562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2168), [4564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1255), [4566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1260), [4568] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), [4570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1262), [4572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), [4574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2043), [4576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(797), [4578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(790), [4580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(798), [4582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2030), [4584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1378), [4586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(832), [4588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1165), [4590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1116), [4592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(972), [4594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1283), [4596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1327), [4598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1425), [4600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), [4602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1083), [4604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(784), [4606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705), [4608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(779), [4610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), [4612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2087), [4614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1122), [4616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_parameters, 2, 0, 0), [4618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1085), [4620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), [4622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1280), [4624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1954), [4626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), [4628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1881), [4630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1657), [4632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), [4634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), [4636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(999), [4638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1421), [4640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), [4642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2142), [4644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1388), [4646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1281), [4648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1300), [4650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), [4652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), [4654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_pattern, 3, 0, 146), [4656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1135), [4658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2110), [4660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), [4662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1323), [4664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), [4666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1565), [4668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), [4670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(826), [4672] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_parameters, 3, 0, 0), [4674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(973), [4676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), [4678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1146), [4680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(977), [4682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(783), [4684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560), [4686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), [4688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1153), [4690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), [4692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), [4694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1662), [4696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), [4698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bracketed_type, 3, 0, 0), [4700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1588), [4702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1049), [4704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), [4706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), [4708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), [4710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1847), [4712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1669), [4714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533), [4716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(979), [4718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), [4720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1095), [4722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1880), [4724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), [4726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), [4728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(645), [4730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), [4732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), [4734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), [4736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1047), [4738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), [4740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1284), [4742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_parameters, 5, 0, 0), [4744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_parameters, 4, 0, 0), [4746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), [4748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796), [4750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1304), [4752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(993), [4754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), [4756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2123), [4758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), [4760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1023), [4762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1687), [4764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2112), [4766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), [4768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795), [4770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(552), [4772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588), [4774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(792), [4776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), [4778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1779), [4780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), [4782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), [4784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1666), [4786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2023), [4788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2025), [4790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2026), [4792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), [4794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), [4796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), [4798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), [4800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), [4802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662), [4804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), [4806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), [4808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2153), [4810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), [4812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2138), [4814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(789), [4816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603), [4818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), [4820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1373), [4822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610), [4824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(786), [4826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(788), [4828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), [4830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1793), [4832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1978), [4834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1797), [4836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1982), [4838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659), [4840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2190), [4842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1986), [4844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), [4846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), }; enum ts_external_scanner_symbol_identifiers { ts_external_token__string_content = 0, ts_external_token_raw_string_literal = 1, ts_external_token_float_literal = 2, ts_external_token_block_comment = 3, }; static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { [ts_external_token__string_content] = sym__string_content, [ts_external_token_raw_string_literal] = sym_raw_string_literal, [ts_external_token_float_literal] = sym_float_literal, [ts_external_token_block_comment] = sym_block_comment, }; static const bool ts_external_scanner_states[6][EXTERNAL_TOKEN_COUNT] = { [1] = { [ts_external_token__string_content] = true, [ts_external_token_raw_string_literal] = true, [ts_external_token_float_literal] = true, [ts_external_token_block_comment] = true, }, [2] = { [ts_external_token_raw_string_literal] = true, [ts_external_token_float_literal] = true, [ts_external_token_block_comment] = true, }, [3] = { [ts_external_token_block_comment] = true, }, [4] = { [ts_external_token__string_content] = true, [ts_external_token_block_comment] = true, }, [5] = { [ts_external_token_float_literal] = true, [ts_external_token_block_comment] = true, }, }; #ifdef __cplusplus extern "C" { #endif void *tree_sitter_sway_external_scanner_create(void); void tree_sitter_sway_external_scanner_destroy(void *); bool tree_sitter_sway_external_scanner_scan(void *, TSLexer *, const bool *); unsigned tree_sitter_sway_external_scanner_serialize(void *, char *); void tree_sitter_sway_external_scanner_deserialize(void *, const char *, unsigned); #ifdef TREE_SITTER_HIDE_SYMBOLS #define TS_PUBLIC #elif defined(_WIN32) #define TS_PUBLIC __declspec(dllexport) #else #define TS_PUBLIC __attribute__((visibility("default"))) #endif TS_PUBLIC const TSLanguage *tree_sitter_sway(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, .external_scanner = { &ts_external_scanner_states[0][0], ts_external_scanner_symbol_map, tree_sitter_sway_external_scanner_create, tree_sitter_sway_external_scanner_destroy, tree_sitter_sway_external_scanner_scan, tree_sitter_sway_external_scanner_serialize, tree_sitter_sway_external_scanner_deserialize, }, .primary_state_ids = ts_primary_state_ids, }; return &language; } #ifdef __cplusplus } #endif